diff options
Diffstat (limited to 'Ryujinx.Ava/AppHost.cs')
-rw-r--r-- | Ryujinx.Ava/AppHost.cs | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/Ryujinx.Ava/AppHost.cs b/Ryujinx.Ava/AppHost.cs index c6f2265c..22c4ab5e 100644 --- a/Ryujinx.Ava/AppHost.cs +++ b/Ryujinx.Ava/AppHost.cs @@ -53,6 +53,7 @@ namespace Ryujinx.Ava internal class AppHost { private const int CursorHideIdleTime = 8; // Hide Cursor seconds + private const float MaxResolutionScale = 4.0f; // Max resolution hotkeys can scale to before wrapping. private static readonly Cursor InvisibleCursor = new Cursor(StandardCursorType.None); @@ -976,6 +977,13 @@ namespace Ryujinx.Ava _parent.ViewModel.Volume = Device.GetVolume(); break; + case KeyboardHotkeyState.ResScaleUp: + GraphicsConfig.ResScale = GraphicsConfig.ResScale % MaxResolutionScale + 1; + break; + case KeyboardHotkeyState.ResScaleDown: + GraphicsConfig.ResScale = + (MaxResolutionScale + GraphicsConfig.ResScale - 2) % MaxResolutionScale + 1; + break; case KeyboardHotkeyState.None: (_keyboardInterface as AvaloniaKeyboard).Clear(); break; @@ -1033,6 +1041,14 @@ namespace Ryujinx.Ava { state = KeyboardHotkeyState.ToggleMute; } + else if (_keyboardInterface.IsPressed((Key)ConfigurationState.Instance.Hid.Hotkeys.Value.ResScaleUp)) + { + state = KeyboardHotkeyState.ResScaleUp; + } + else if (_keyboardInterface.IsPressed((Key)ConfigurationState.Instance.Hid.Hotkeys.Value.ResScaleDown)) + { + state = KeyboardHotkeyState.ResScaleDown; + } return state; } |