diff --git a/osu.Game/Overlays/KeyBinding/KeyBindingRow.cs b/osu.Game/Overlays/KeyBinding/KeyBindingRow.cs index 88005795ff..63b5e8a7c1 100644 --- a/osu.Game/Overlays/KeyBinding/KeyBindingRow.cs +++ b/osu.Game/Overlays/KeyBinding/KeyBindingRow.cs @@ -200,24 +200,17 @@ protected override bool OnKeyDown(InputState state, KeyDownEventArgs args) KeyCombination keyCombination = KeyCombination.FromInputState(state); - switch (args.Key) + if (keyCombination.Equals(InputKey.Escape)) { - case Key.Escape: - finalise(); - return true; - case Key.Delete: - if (keyCombination.Equals(InputKey.Delete)) - { - bindTarget.UpdateKeyCombination(InputKey.None); - finalise(); - return true; - } - else if (keyCombination.Equals(new[] { InputKey.Alt, InputKey.Delete })) - { - keyCombination = InputKey.Delete; - } + finalise(); + return true; + } - break; + if (keyCombination.Equals(new[] { InputKey.Shift, InputKey.Delete })) + { + bindTarget.UpdateKeyCombination(InputKey.None); + finalise(); + return true; } bindTarget.UpdateKeyCombination(keyCombination);