diff --git a/distribution/changelog.txt b/distribution/changelog.txt index 357b64fc91..52d2fde808 100644 --- a/distribution/changelog.txt +++ b/distribution/changelog.txt @@ -3,6 +3,7 @@ - Improved: [#2296, #2307] The land tool now takes sloped track and paths into account when modifying land. - Change: [#25161] Revert to the ‘fair ride price’ calculation of vanilla RCT2. - Fix: [#24513] Ride/track designs can now be shifted underground as well. +- Fix: [#24682] The scenery window isn't enough to accommodate all tool buttons when there are multiple rows of groups/tabs. - Fix: [#25131] The Reverse Freefall Coaster On-ride photo section track has incorrectly coloured ties. - Fix: [#25132] Crash when trying to use simulate on incomplete ride. - Fix: [#25134] Vehicles visually glitch on diagonal steep slopes. diff --git a/src/openrct2-ui/windows/Scenery.cpp b/src/openrct2-ui/windows/Scenery.cpp index f7ca4b3eb5..a4333d8796 100644 --- a/src/openrct2-ui/windows/Scenery.cpp +++ b/src/openrct2-ui/windows/Scenery.cpp @@ -1105,10 +1105,18 @@ namespace OpenRCT2::Ui::Windows private: int32_t GetMinimumHeight() const { - // Minimum window height: title, one scenery button, status bar, padding - int32_t newMinHeight = getTitleBarTargetHeight() + kSceneryButtonHeight + kDescriptionHeight + 2 * kTabMargin; - newMinHeight += static_cast(1 + (_tabEntries.size() / GetMaxTabCountInARow())) * kTabHeight; + // Minimum window height: title, status bar, padding + int32_t newMinHeight = getTitleBarTargetHeight() + kDescriptionHeight + 2 * kTabMargin; + + // Room for the search/filter widget newMinHeight += widgets[WIDX_FILTER_TEXT_BOX].height() + 2 * kInputMargin; + + // Fit *all* rows of tabs + newMinHeight += static_cast(1 + (_tabEntries.size() / GetMaxTabCountInARow())) * kTabHeight; + + // And at least 1.5 rows of scenery items + newMinHeight += 1.5 * kSceneryButtonHeight; + return newMinHeight; }