fix: DisplaySettings focus mode, remove duplicate ApplyWindowMode

This commit is contained in:
2026-03-19 03:35:28 +01:00
parent 8cce1866b1
commit 3e74959bb9
2 changed files with 5 additions and 20 deletions

View File

@@ -19,6 +19,9 @@ public partial class DisplaySettings : Control
WindowModeButton.ItemSelected += OnWindowModeChanged;
ResolutionButton.ItemSelected += OnResolutionChanged;
WindowModeButton.FocusMode = Control.FocusModeEnum.All;
ResolutionButton.FocusMode = Control.FocusModeEnum.All;
LoadSettings();
if (InputDeviceManager.Instance != null)
@@ -85,8 +88,8 @@ public partial class DisplaySettings : Control
_ => "windowed"
};
ApplyWindowMode(mode);
SettingsManager.Instance.WindowMode = mode;
SettingsManager.Instance.ApplyDisplaySettings();
ResolutionButton.Disabled = mode == "fullscreen";
SettingsManager.Instance.SaveDisplaySettings();
}
@@ -106,24 +109,6 @@ public partial class DisplaySettings : Control
SettingsManager.Instance.SaveDisplaySettings();
}
private static void ApplyWindowMode(string mode)
{
switch (mode)
{
case "fullscreen":
DisplayServer.WindowSetMode(DisplayServer.WindowMode.Fullscreen);
break;
case "borderless":
DisplayServer.WindowSetMode(DisplayServer.WindowMode.Windowed);
DisplayServer.WindowSetFlag(DisplayServer.WindowFlags.Borderless, true);
break;
default:
DisplayServer.WindowSetMode(DisplayServer.WindowMode.Windowed);
DisplayServer.WindowSetFlag(DisplayServer.WindowFlags.Borderless, false);
break;
}
}
private void LoadSettings()
{
var mode = SettingsManager.Instance.WindowMode;