From 89a495b5ee74cd0a108afbce2ce031191756f2d6 Mon Sep 17 00:00:00 2001 From: Quinten Libert Date: Wed, 25 Dec 2024 16:30:28 +0100 Subject: [PATCH] Support emulator keyboard shortcuts with numlock turned on The keyboard shortcuts on the emulator did not work when numlock was turned on. --- crates/emulator/src/main.rs | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/crates/emulator/src/main.rs b/crates/emulator/src/main.rs index 82a1b9f7..af7d5d2e 100644 --- a/crates/emulator/src/main.rs +++ b/crates/emulator/src/main.rs @@ -315,7 +315,7 @@ fn main() -> Result<(), Error> { }, SdlEvent::KeyDown { scancode: Some(scancode), keymod, timestamp, repeat, .. } => { match keymod { - Mod::NOMOD => { + Mod::NOMOD | Mod::NUMMOD => { match scancode { Scancode::LeftBracket => { let rot = (3 + context.display.rotation) % 4; @@ -361,7 +361,11 @@ fn main() -> Result<(), Error> { _ => (), } }, - Mod::LSHIFTMOD | Mod::RSHIFTMOD => { + _ if keymod.contains(Mod::LSHIFTMOD) || + keymod.contains(Mod::RSHIFTMOD) || + (keymod.contains(Mod::LSHIFTMOD) && keymod.contains(Mod::NUMMOD)) || + (keymod.contains(Mod::RSHIFTMOD) && keymod.contains(Mod::NUMMOD)) + => { match scancode { Scancode::S | Scancode::P | Scancode::C => { if let Some(index) = locate::(view.as_ref()) {