diff options
-rw-r--r-- | src/events.rs | 2 | ||||
-rw-r--r-- | src/osx/mod.rs | 6 |
2 files changed, 8 insertions, 0 deletions
diff --git a/src/events.rs b/src/events.rs index 1b46e10..0c11a75 100644 --- a/src/events.rs +++ b/src/events.rs @@ -128,6 +128,7 @@ pub enum VirtualKeyCode { Kana, Kanji, L, + LAlt, LBracket, LControl, Left, @@ -171,6 +172,7 @@ pub enum VirtualKeyCode { Prevtrack, Q, R, + RAlt, RBracket, RControl, Return, diff --git a/src/osx/mod.rs b/src/osx/mod.rs index abe233d..dfd2eb8 100644 --- a/src/osx/mod.rs +++ b/src/osx/mod.rs @@ -26,6 +26,7 @@ mod event; static mut shift_pressed: bool = false; static mut ctrl_pressed: bool = false; static mut win_pressed: bool = false; +static mut alt_pressed: bool = false; pub struct Window { view: id, @@ -272,6 +273,11 @@ impl Window { win_pressed = !win_pressed; events.push(win_modifier.unwrap()); } + let alt_modifier = Window::modifier_event(event, appkit::NSAlternateKeyMask as u64, events::LAlt, alt_pressed); + if alt_modifier.is_some() { + alt_pressed = !alt_pressed; + events.push(alt_modifier.unwrap()); + } }, NSScrollWheel => { }, NSOtherMouseDown => { }, |