diff options
Diffstat (limited to 'Ryujinx/Ui/RendererWidgetBase.cs')
-rw-r--r-- | Ryujinx/Ui/RendererWidgetBase.cs | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/Ryujinx/Ui/RendererWidgetBase.cs b/Ryujinx/Ui/RendererWidgetBase.cs index c25e2163..8830a4f5 100644 --- a/Ryujinx/Ui/RendererWidgetBase.cs +++ b/Ryujinx/Ui/RendererWidgetBase.cs @@ -425,6 +425,7 @@ namespace Ryujinx.Ui StatusUpdatedEvent?.Invoke(this, new StatusUpdatedEventArgs( Device.EnableDeviceVsync, + Device.GetVolume(), dockedMode, ConfigurationState.Instance.Graphics.AspectRatio.Value.ToText(), $"Game: {Device.Statistics.GetGameFrameRate():00.00} FPS ({Device.Statistics.GetGameFrameTime():00.00} ms)", @@ -598,6 +599,19 @@ namespace Ryujinx.Ui (Toplevel as MainWindow)?.TogglePause(); } + if (currentHotkeyState.HasFlag(KeyboardHotkeyState.ToggleMute) && + !_prevHotkeyState.HasFlag(KeyboardHotkeyState.ToggleMute)) + { + if (Device.IsAudioMuted()) + { + Device.SetVolume(ConfigurationState.Instance.System.AudioVolume); + } + else + { + Device.SetVolume(0); + } + } + _prevHotkeyState = currentHotkeyState; } @@ -627,7 +641,8 @@ namespace Ryujinx.Ui ToggleVSync = 1 << 0, Screenshot = 1 << 1, ShowUi = 1 << 2, - Pause = 1 << 3 + Pause = 1 << 3, + ToggleMute = 1 << 4 } private KeyboardHotkeyState GetHotkeyState() @@ -654,6 +669,11 @@ namespace Ryujinx.Ui state |= KeyboardHotkeyState.Pause; } + if (_keyboardInterface.IsPressed((Key)ConfigurationState.Instance.Hid.Hotkeys.Value.ToggleMute)) + { + state |= KeyboardHotkeyState.ToggleMute; + } + return state; } } |