1
0
mirror of https://github.com/OpenTTD/OpenTTD synced 2026-01-17 09:22:42 +01:00

Fix #14240: Remember previous GUI scale when toggling auto-detect (#14380)

This commit is contained in:
Oliver Bechstein-Rumble
2025-10-24 20:33:55 +01:00
committed by GitHub
parent 813cde3735
commit 6fc4bef0e3

View File

@@ -415,6 +415,7 @@ struct GameOptionsWindow : Window {
bool reload = false;
bool gui_scale_changed = false;
int gui_scale = 0;
static inline int previous_gui_scale = 0; ///< Previous GUI scale.
static inline WidgetID active_tab = WID_GO_TAB_GENERAL;
GameOptionsWindow(WindowDesc &desc) : Window(desc), filter_editbox(50)
@@ -1076,9 +1077,12 @@ struct GameOptionsWindow : Window {
case WID_GO_GUI_SCALE_AUTO:
{
if (_gui_scale_cfg == -1) {
_gui_scale_cfg = _gui_scale;
_gui_scale_cfg = this->previous_gui_scale; // Load the previous GUI scale
this->SetWidgetLoweredState(WID_GO_GUI_SCALE_AUTO, false);
if (AdjustGUIZoom(false)) ReInitAllWindows(true);
this->gui_scale = _gui_scale;
} else {
this->previous_gui_scale = _gui_scale; // Set the previous GUI scale value as the current one
_gui_scale_cfg = -1;
this->SetWidgetLoweredState(WID_GO_GUI_SCALE_AUTO, true);
if (AdjustGUIZoom(false)) ReInitAllWindows(true);