From 42b0f85a5f438772a094c83ed1c1a1b86693bcbc Mon Sep 17 00:00:00 2001 From: meehl Date: Wed, 28 Jan 2026 14:19:11 +0000 Subject: [PATCH 1/2] Apply changes from https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/9373 --- src/Export/Launch.lua | 4 ++-- src/Export/Main.lua | 2 +- src/Launch.lua | 4 ++-- src/Modules/Common.lua.rej | 16 ++++++++++++++++ src/Modules/Main.lua | 7 +------ 5 files changed, 22 insertions(+), 11 deletions(-) create mode 100644 src/Modules/Common.lua.rej diff --git a/src/Export/Launch.lua b/src/Export/Launch.lua index 7a3496e08f..47878cc401 100644 --- a/src/Export/Launch.lua +++ b/src/Export/Launch.lua @@ -67,7 +67,7 @@ function launch:OnFrame() self:DrawPopup(r, g, b, "^0%s", self.promptMsg) end if self.doRestart then - local screenW, screenH = GetScreenSize() + local screenW, screenH = GetVirtualScreenSize() SetDrawColor(0, 0, 0, 0.75) DrawImage(nil, 0, 0, screenW, screenH) SetDrawColor(1, 1, 1) @@ -180,7 +180,7 @@ function launch:RunPromptFunc(key) end function launch:DrawPopup(r, g, b, fmt, ...) - local screenW, screenH = GetScreenSize() + local screenW, screenH = GetVirtualScreenSize() SetDrawColor(0, 0, 0, 0.5) DrawImage(nil, 0, 0, screenW, screenH) local txt = string.format(fmt, ...) diff --git a/src/Export/Main.lua b/src/Export/Main.lua index ceebf77035..f3cf115b29 100644 --- a/src/Export/Main.lua +++ b/src/Export/Main.lua @@ -416,7 +416,7 @@ function main:Shutdown() end function main:OnFrame() - self.screenW, self.screenH = GetScreenSize() + self.screenW, self.screenH = GetVirtualScreenSize() self.viewPort = { x = 0, y = 0, width = self.screenW, height = self.screenH } diff --git a/src/Launch.lua b/src/Launch.lua index dffeb83077..2d5305cd5c 100644 --- a/src/Launch.lua +++ b/src/Launch.lua @@ -122,7 +122,7 @@ function launch:OnFrame() self:DrawPopup(r, g, b, "^0%s", self.promptMsg) end if self.doRestart then - local screenW, screenH = GetScreenSize() + local screenW, screenH = GetVirtualScreenSize() SetDrawColor(0, 0, 0, 0.75) DrawImage(nil, 0, 0, screenW, screenH) SetDrawColor(1, 1, 1) @@ -387,7 +387,7 @@ function launch:RunPromptFunc(key) end function launch:DrawPopup(r, g, b, fmt, ...) - local screenW, screenH = GetScreenSize() + local screenW, screenH = GetVirtualScreenSize() SetDrawColor(0, 0, 0, 0.5) DrawImage(nil, 0, 0, screenW, screenH) local txt = string.format(fmt, ...) diff --git a/src/Modules/Common.lua.rej b/src/Modules/Common.lua.rej new file mode 100644 index 0000000000..5cea2c1ef9 --- /dev/null +++ b/src/Modules/Common.lua.rej @@ -0,0 +1,16 @@ +diff a/src/Modules/Common.lua b/src/Modules/Common.lua (rejected hunks) +@@ -963,3 +963,14 @@ function ImportBuild(importLink, callback) + callback(Inflate(common.base64.decode(importLink:gsub("-", "+"):gsub("_", "/"))), nil) + end + end ++ ++-- Returns virtual screen size ++function GetVirtualScreenSize() ++ local width, height = GetScreenSize() ++ local scale = GetScreenScale and GetScreenScale() or 1.0 ++ if scale ~= 1.0 then ++ width = math.floor(width / scale) ++ height = math.floor(height / scale) ++ end ++ return width, height ++end diff --git a/src/Modules/Main.lua b/src/Modules/Main.lua index 4ff060d7cd..9905923bb7 100644 --- a/src/Modules/Main.lua +++ b/src/Modules/Main.lua @@ -339,12 +339,7 @@ function main:Shutdown() end function main:OnFrame() - self.screenW, self.screenH = GetScreenSize() - self.screenScale = GetScreenScale and GetScreenScale() or 1 - if self.screenScale ~= 1.0 then - self.screenW = math.floor(self.screenW / self.screenScale) - self.screenH = math.floor(self.screenH / self.screenScale) - end + self.screenW, self.screenH = GetVirtualScreenSize() if self.screenH > self.screenW then self.portraitMode = true From ac8a823c283c1f462b9c576ed2863118dfdb4fde Mon Sep 17 00:00:00 2001 From: LocalIdentity Date: Tue, 17 Feb 2026 17:18:36 +1100 Subject: [PATCH 2/2] Fix merge conflict --- src/Modules/Common.lua | 11 +++++++++++ src/Modules/Common.lua.rej | 16 ---------------- 2 files changed, 11 insertions(+), 16 deletions(-) delete mode 100644 src/Modules/Common.lua.rej diff --git a/src/Modules/Common.lua b/src/Modules/Common.lua index 9dfc78ca1b..6e532828ad 100644 --- a/src/Modules/Common.lua +++ b/src/Modules/Common.lua @@ -1038,4 +1038,15 @@ end function getHashFromString(string) return common.sha1(string) +end + +-- Returns virtual screen size +function GetVirtualScreenSize() + local width, height = GetScreenSize() + local scale = GetScreenScale and GetScreenScale() or 1.0 + if scale ~= 1.0 then + width = math.floor(width / scale) + height = math.floor(height / scale) + end + return width, height end \ No newline at end of file diff --git a/src/Modules/Common.lua.rej b/src/Modules/Common.lua.rej deleted file mode 100644 index 5cea2c1ef9..0000000000 --- a/src/Modules/Common.lua.rej +++ /dev/null @@ -1,16 +0,0 @@ -diff a/src/Modules/Common.lua b/src/Modules/Common.lua (rejected hunks) -@@ -963,3 +963,14 @@ function ImportBuild(importLink, callback) - callback(Inflate(common.base64.decode(importLink:gsub("-", "+"):gsub("_", "/"))), nil) - end - end -+ -+-- Returns virtual screen size -+function GetVirtualScreenSize() -+ local width, height = GetScreenSize() -+ local scale = GetScreenScale and GetScreenScale() or 1.0 -+ if scale ~= 1.0 then -+ width = math.floor(width / scale) -+ height = math.floor(height / scale) -+ end -+ return width, height -+end