Fix numpad when linux -> windows
This commit is contained in:
parent
18ee6f0e9d
commit
5216dedca6
@ -309,8 +309,6 @@ impl<T: InvokeUiSession> Session<T> {
|
||||
} else {
|
||||
key
|
||||
};
|
||||
#[cfg(not(windows))]
|
||||
let key = self.convert_numpad_keys(key);
|
||||
|
||||
let peer = self.peer_platform();
|
||||
let mut key_event = KeyEvent::new();
|
||||
@ -657,6 +655,9 @@ impl<T: InvokeUiSession> Session<T> {
|
||||
_ => KeyboardMode::Legacy,
|
||||
};
|
||||
|
||||
#[cfg(not(windows))]
|
||||
let key = self.convert_numpad_keys(key);
|
||||
|
||||
match mode {
|
||||
KeyboardMode::Map => {
|
||||
if down_or_up == true {
|
||||
@ -845,6 +846,24 @@ impl<T: InvokeUiSession> Session<T> {
|
||||
key_event.set_chr(chr);
|
||||
}
|
||||
Key::ControlKey(key) => {
|
||||
let key = if !get_key_state(enigo::Key::NumLock) {
|
||||
match key {
|
||||
ControlKey::Numpad0 => ControlKey::Insert,
|
||||
ControlKey::Decimal => ControlKey::Delete,
|
||||
ControlKey::Numpad1 => ControlKey::End,
|
||||
ControlKey::Numpad2 => ControlKey::DownArrow,
|
||||
ControlKey::Numpad3 => ControlKey::PageDown,
|
||||
ControlKey::Numpad4 => ControlKey::LeftArrow,
|
||||
ControlKey::Numpad5 => ControlKey::Clear,
|
||||
ControlKey::Numpad6 => ControlKey::RightArrow,
|
||||
ControlKey::Numpad7 => ControlKey::Home,
|
||||
ControlKey::Numpad8 => ControlKey::UpArrow,
|
||||
ControlKey::Numpad9 => ControlKey::PageUp,
|
||||
_ => key,
|
||||
}
|
||||
}else{
|
||||
key
|
||||
};
|
||||
key_event.set_control_key(key.clone());
|
||||
}
|
||||
Key::_Raw(raw) => {
|
||||
|
Loading…
x
Reference in New Issue
Block a user