From f62b74c732ca4aa63636eb34766eb1ea6026fbd6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20Janiszewski?= Date: Sun, 26 Oct 2025 00:18:55 +0200 Subject: [PATCH] Align Staff viewport resizing with the Guest window (#25072) --- src/openrct2-ui/windows/Staff.cpp | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/src/openrct2-ui/windows/Staff.cpp b/src/openrct2-ui/windows/Staff.cpp index cad0cc4ea6..9352eec3c5 100644 --- a/src/openrct2-ui/windows/Staff.cpp +++ b/src/openrct2-ui/windows/Staff.cpp @@ -538,14 +538,6 @@ namespace OpenRCT2::Ui::Windows widgets[WIDX_FIRE].left = width - 25; widgets[WIDX_FIRE].right = width - 2; - - if (viewport != nullptr) - { - const Widget& viewportWidget = widgets[WIDX_VIEWPORT]; - viewport->pos = windowPos + ScreenCoordsXY{ viewportWidget.left + 1, viewportWidget.top + 1 }; - viewport->width = widgets[WIDX_VIEWPORT].width() - 1; - viewport->height = widgets[WIDX_VIEWPORT].height() - 1; - } } void OverviewDraw(RenderTarget& rt) @@ -620,6 +612,20 @@ namespace OpenRCT2::Ui::Windows { WindowSetResize(*this, kWindowSize, { 500, 450 }); + if (viewport != nullptr) + { + const Widget& viewportWidget = widgets[WIDX_VIEWPORT]; + const auto reqViewportWidth = viewportWidget.width() - 1; + const auto reqViewportHeight = viewportWidget.height() - 1; + + viewport->pos = windowPos + ScreenCoordsXY{ viewportWidget.left + 1, viewportWidget.top + 1 }; + if (viewport->width != reqViewportWidth || viewport->height != reqViewportHeight) + { + viewport->width = reqViewportWidth; + viewport->height = reqViewportHeight; + } + } + ViewportInit(); }