diff --git a/core/src/keyboard/modifiers.rs b/core/src/keyboard/modifiers.rs index 45b44a55..2c3cab37 100644 --- a/core/src/keyboard/modifiers.rs +++ b/core/src/keyboard/modifiers.rs @@ -26,6 +26,8 @@ bitflags! { // const RLOGO = 0b001 << 9; /// No modifiers const NONE = 0; + /// The Caps Lock key + const CAPS_LOCK = 0b100 << 12; } } diff --git a/winit/src/platform_specific/wayland/conversion.rs b/winit/src/platform_specific/wayland/conversion.rs index c2ca825d..d102b8e1 100644 --- a/winit/src/platform_specific/wayland/conversion.rs +++ b/winit/src/platform_specific/wayland/conversion.rs @@ -64,10 +64,10 @@ pub fn modifiers_to_native(mods: Modifiers) -> keyboard::Modifiers { if mods.shift { native_mods = native_mods.union(keyboard::Modifiers::SHIFT); } + if mods.caps_lock { + native_mods = native_mods.union(keyboard::Modifiers::CAPS_LOCK); + } // TODO Ashley: missing modifiers as platform specific additions? - // if mods.caps_lock { - // native_mods = native_mods.union(keyboard::Modifier); - // } // if mods.num_lock { // native_mods = native_mods.union(keyboard::Modifiers::); // }