From 78cb805fac6e6f6d5679b24e222271a2c2ed221e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?H=C3=A9ctor=20Ram=C3=B3n=20Jim=C3=A9nez?= Date: Tue, 30 Jun 2020 07:36:13 +0200 Subject: [PATCH 1/2] Add `ModifiersChanged` to `keyboard::Event` --- core/src/keyboard/event.rs | 3 +++ winit/src/conversion.rs | 3 +++ 2 files changed, 6 insertions(+) diff --git a/core/src/keyboard/event.rs b/core/src/keyboard/event.rs index bc8437a8..d142c3bc 100644 --- a/core/src/keyboard/event.rs +++ b/core/src/keyboard/event.rs @@ -28,4 +28,7 @@ pub enum Event { /// A unicode character was received. CharacterReceived(char), + + /// The keyboard modifiers have changed. + ModifiersChanged(ModifiersState), } diff --git a/winit/src/conversion.rs b/winit/src/conversion.rs index 80727bd8..cfa76e88 100644 --- a/winit/src/conversion.rs +++ b/winit/src/conversion.rs @@ -92,6 +92,9 @@ pub fn window_event( } } })), + WindowEvent::ModifiersChanged(new_modifiers) => Some(Event::Keyboard( + keyboard::Event::ModifiersChanged(modifiers_state(*new_modifiers)), + )), WindowEvent::HoveredFile(path) => { Some(Event::Window(window::Event::FileHovered(path.clone()))) } From e8aeb86698ae3f4ef23621d67685243d62158036 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?H=C3=A9ctor=20Ram=C3=B3n=20Jim=C3=A9nez?= Date: Tue, 30 Jun 2020 07:38:04 +0200 Subject: [PATCH 2/2] Use `keyboard::ModifiersChanged` in `PaneGrid` --- native/src/widget/pane_grid.rs | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/native/src/widget/pane_grid.rs b/native/src/widget/pane_grid.rs index 2d21a968..f89c3588 100644 --- a/native/src/widget/pane_grid.rs +++ b/native/src/widget/pane_grid.rs @@ -539,10 +539,8 @@ where } } } - - *self.pressed_modifiers = modifiers; } - keyboard::Event::KeyReleased { modifiers, .. } => { + keyboard::Event::ModifiersChanged(modifiers) => { *self.pressed_modifiers = modifiers; } _ => {}