From 8310f38c15bdfcb9c8a8af94cfa84819ed07f2ee Mon Sep 17 00:00:00 2001 From: Asura Date: Fri, 12 Aug 2022 00:05:31 -0700 Subject: [PATCH] Fix repeatedly releasing keys without char --- src/ui/remote.rs | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/src/ui/remote.rs b/src/ui/remote.rs index f26150f31..3d90ac73f 100644 --- a/src/ui/remote.rs +++ b/src/ui/remote.rs @@ -1113,16 +1113,19 @@ impl Handler { self.send_key_event(key_event, KeyboardMode::Translate); } } else { - if down_or_up == true { - TO_RELEASE.lock().unwrap().insert(key); + let success = if down_or_up == true { + TO_RELEASE.lock().unwrap().insert(key) } else { - TO_RELEASE.lock().unwrap().remove(&key); - } + TO_RELEASE.lock().unwrap().remove(&key) + }; + // AltGr && LeftControl(SpecialKey) without action if key == RdevKey::AltGr || evt.scan_code == 541 { return; } - self.map_keyboard_mode(down_or_up, key, None); + if success{ + self.map_keyboard_mode(down_or_up, key, None); + } } }