From a118056c304c6919ff9aaa10769bd4d78809b7e9 Mon Sep 17 00:00:00 2001 From: Asura Date: Mon, 18 Jul 2022 23:04:04 +0800 Subject: [PATCH] Fix sync Numpad status --- src/server/input_service.rs | 11 +++++++++-- src/ui/remote.rs | 6 ++---- 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/src/server/input_service.rs b/src/server/input_service.rs index aadb957a3..a116bbbfc 100644 --- a/src/server/input_service.rs +++ b/src/server/input_service.rs @@ -810,9 +810,8 @@ async fn send_sas() -> ResultType<()> { #[cfg(test)] mod test { use super::*; - use rdev::{listen, simulate, Event, EventType, Key}; + use rdev::{listen, Event, EventType, Key}; use std::sync::mpsc; - use std::thread; #[test] fn test_handle_key() { @@ -847,4 +846,12 @@ mod test { assert_eq!(listen_evt.event_type, EventType::KeyRelease(Key::Num1)) } } + #[test] + fn test_get_key_state() { + let mut en = ENIGO.lock().unwrap(); + println!( + "[*] test_get_key_state: {:?}", + en.get_key_state(enigo::Key::NumLock) + ); + } } diff --git a/src/ui/remote.rs b/src/ui/remote.rs index 44e7d705f..a0aa5d381 100644 --- a/src/ui/remote.rs +++ b/src/ui/remote.rs @@ -990,10 +990,8 @@ impl Handler { if get_key_state(enigo::Key::CapsLock) { key_event.modifiers.push(ControlKey::CapsLock.into()); } - if self.peer_platform() != "Mac OS" { - if get_key_state(enigo::Key::NumLock) && common::valid_for_numlock(&key_event) { - key_event.modifiers.push(ControlKey::NumLock.into()); - } + if get_key_state(enigo::Key::NumLock) { + key_event.modifiers.push(ControlKey::NumLock.into()); } self.send_key_event(key_event, 1);