From 57118e00fb00f7828a91e896429323da5e875a2e Mon Sep 17 00:00:00 2001 From: GreemDev Date: Fri, 14 Mar 2025 23:52:27 -0500 Subject: [PATCH] UI: Added the ability to unbind hotkeys via pressing backspace. --- src/Ryujinx/UI/Helpers/ButtonKeyAssigner.cs | 7 ++++++- .../UI/Views/Settings/SettingsHotkeysView.axaml.cs | 11 ----------- 2 files changed, 6 insertions(+), 12 deletions(-) diff --git a/src/Ryujinx/UI/Helpers/ButtonKeyAssigner.cs b/src/Ryujinx/UI/Helpers/ButtonKeyAssigner.cs index 2781a32b1..a3939abf7 100644 --- a/src/Ryujinx/UI/Helpers/ButtonKeyAssigner.cs +++ b/src/Ryujinx/UI/Helpers/ButtonKeyAssigner.cs @@ -83,8 +83,13 @@ namespace Ryujinx.Ava.UI.Helpers ToggledButton.IsChecked = false; - ButtonAssigned?.Invoke(this, new ButtonAssignedEventArgs(ToggledButton, pressedButton)); + if (pressedButton.HasValue && pressedButton.Value.AsHidType() == Key.BackSpace) + { + ButtonAssigned?.Invoke(this, new ButtonAssignedEventArgs(ToggledButton, new Button(Key.Unbound))); + return; + } + ButtonAssigned?.Invoke(this, new ButtonAssignedEventArgs(ToggledButton, pressedButton)); }); } diff --git a/src/Ryujinx/UI/Views/Settings/SettingsHotkeysView.axaml.cs b/src/Ryujinx/UI/Views/Settings/SettingsHotkeysView.axaml.cs index 46693374a..54ef00c38 100644 --- a/src/Ryujinx/UI/Views/Settings/SettingsHotkeysView.axaml.cs +++ b/src/Ryujinx/UI/Views/Settings/SettingsHotkeysView.axaml.cs @@ -45,15 +45,6 @@ namespace Ryujinx.Ava.UI.Views.Settings } } - private void MouseClick(object sender, PointerPressedEventArgs e) - { - bool shouldUnbind = e.GetCurrentPoint(this).Properties.IsMiddleButtonPressed; - - _currentAssigner?.Cancel(shouldUnbind); - - PointerPressed -= MouseClick; - } - private void Button_IsCheckedChanged(object sender, RoutedEventArgs e) { if (sender is ToggleButton button) @@ -71,8 +62,6 @@ namespace Ryujinx.Ava.UI.Views.Settings this.Focus(NavigationMethod.Pointer); - PointerPressed += MouseClick; - IKeyboard keyboard = (IKeyboard)_avaloniaKeyboardDriver.GetGamepad("0"); IButtonAssigner assigner = new KeyboardKeyAssigner(keyboard);