diff options
| author | MutantAura <44103205+MutantAura@users.noreply.github.com> | 2024-05-01 17:21:24 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-05-01 18:21:24 +0200 |
| commit | d0cc13ce0b2a149c3d19aa58a2f12ddc6cc0196f (patch) | |
| tree | 83eb9571151171ed2bf28830987bb319698020ee /src/Ryujinx.UI.Common | |
| parent | 65c035cdf8093b2e303ded1dc7253f994570b115 (diff) | |
UI: Fix some MainWindow bugs and implement menubar items to change window size. (#6750)
* Do not save window dimensions when maximized.
* Implement option to disable window size/position memory.
* Remove logging statements
* Implement menubar items for common window sizes.
* formatting fixes
* Set 720p window as a composite value.
* Remove unused using
* Fix exception paramter.
* Force restore window when a size change is requested
* Fix some resizing bugs.
Diffstat (limited to 'src/Ryujinx.UI.Common')
| -rw-r--r-- | src/Ryujinx.UI.Common/Configuration/ConfigurationFileFormat.cs | 7 | ||||
| -rw-r--r-- | src/Ryujinx.UI.Common/Configuration/ConfigurationState.cs | 18 |
2 files changed, 24 insertions, 1 deletions
diff --git a/src/Ryujinx.UI.Common/Configuration/ConfigurationFileFormat.cs b/src/Ryujinx.UI.Common/Configuration/ConfigurationFileFormat.cs index 3387e1be..af3ad0a1 100644 --- a/src/Ryujinx.UI.Common/Configuration/ConfigurationFileFormat.cs +++ b/src/Ryujinx.UI.Common/Configuration/ConfigurationFileFormat.cs @@ -15,7 +15,7 @@ namespace Ryujinx.UI.Common.Configuration /// <summary> /// The current version of the file format /// </summary> - public const int CurrentVersion = 50; + public const int CurrentVersion = 51; /// <summary> /// Version of the configuration file format @@ -163,6 +163,11 @@ namespace Ryujinx.UI.Common.Configuration public bool ShowConfirmExit { get; set; } /// <summary> + /// Enables or disables save window size, position and state on close. + /// </summary> + public bool RememberWindowState { get; set; } + + /// <summary> /// Enables hardware-accelerated rendering for Avalonia /// </summary> public bool EnableHardwareAcceleration { get; set; } diff --git a/src/Ryujinx.UI.Common/Configuration/ConfigurationState.cs b/src/Ryujinx.UI.Common/Configuration/ConfigurationState.cs index 2609dc9b..01c60a5e 100644 --- a/src/Ryujinx.UI.Common/Configuration/ConfigurationState.cs +++ b/src/Ryujinx.UI.Common/Configuration/ConfigurationState.cs @@ -627,6 +627,11 @@ namespace Ryujinx.UI.Common.Configuration public ReactiveObject<bool> ShowConfirmExit { get; private set; } /// <summary> + /// Enables or disables save window size, position and state on close. + /// </summary> + public ReactiveObject<bool> RememberWindowState { get; private set; } + + /// <summary> /// Enables hardware-accelerated rendering for Avalonia /// </summary> public ReactiveObject<bool> EnableHardwareAcceleration { get; private set; } @@ -647,6 +652,7 @@ namespace Ryujinx.UI.Common.Configuration EnableDiscordIntegration = new ReactiveObject<bool>(); CheckUpdatesOnStart = new ReactiveObject<bool>(); ShowConfirmExit = new ReactiveObject<bool>(); + RememberWindowState = new ReactiveObject<bool>(); EnableHardwareAcceleration = new ReactiveObject<bool>(); HideCursor = new ReactiveObject<HideCursorMode>(); } @@ -684,6 +690,7 @@ namespace Ryujinx.UI.Common.Configuration EnableDiscordIntegration = EnableDiscordIntegration, CheckUpdatesOnStart = CheckUpdatesOnStart, ShowConfirmExit = ShowConfirmExit, + RememberWindowState = RememberWindowState, EnableHardwareAcceleration = EnableHardwareAcceleration, HideCursor = HideCursor, EnableVsync = Graphics.EnableVsync, @@ -792,6 +799,7 @@ namespace Ryujinx.UI.Common.Configuration EnableDiscordIntegration.Value = true; CheckUpdatesOnStart.Value = true; ShowConfirmExit.Value = true; + RememberWindowState.Value = true; EnableHardwareAcceleration.Value = true; HideCursor.Value = HideCursorMode.OnIdle; Graphics.EnableVsync.Value = true; @@ -1459,6 +1467,15 @@ namespace Ryujinx.UI.Common.Configuration configurationFileUpdated = true; } + if (configurationFileFormat.Version < 51) + { + Ryujinx.Common.Logging.Logger.Warning?.Print(LogClass.Application, $"Outdated configuration version {configurationFileFormat.Version}, migrating to version 51."); + + configurationFileFormat.RememberWindowState = true; + + configurationFileUpdated = true; + } + Logger.EnableFileLog.Value = configurationFileFormat.EnableFileLog; Graphics.ResScale.Value = configurationFileFormat.ResScale; Graphics.ResScaleCustom.Value = configurationFileFormat.ResScaleCustom; @@ -1489,6 +1506,7 @@ namespace Ryujinx.UI.Common.Configuration EnableDiscordIntegration.Value = configurationFileFormat.EnableDiscordIntegration; CheckUpdatesOnStart.Value = configurationFileFormat.CheckUpdatesOnStart; ShowConfirmExit.Value = configurationFileFormat.ShowConfirmExit; + RememberWindowState.Value = configurationFileFormat.RememberWindowState; EnableHardwareAcceleration.Value = configurationFileFormat.EnableHardwareAcceleration; HideCursor.Value = configurationFileFormat.HideCursor; Graphics.EnableVsync.Value = configurationFileFormat.EnableVsync; |
