diff options
-rw-r--r-- | sway/input/keyboard.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/sway/input/keyboard.c b/sway/input/keyboard.c index 36c5a064..643ff510 100644 --- a/sway/input/keyboard.c +++ b/sway/input/keyboard.c | |||
@@ -401,6 +401,14 @@ void sway_keyboard_configure(struct sway_keyboard *keyboard) { | |||
401 | } | 401 | } |
402 | if (locked_mods) { | 402 | if (locked_mods) { |
403 | wlr_keyboard_notify_modifiers(wlr_device->keyboard, 0, 0, locked_mods, 0); | 403 | wlr_keyboard_notify_modifiers(wlr_device->keyboard, 0, 0, locked_mods, 0); |
404 | uint32_t leds = 0; | ||
405 | for (uint32_t i = 0; i < WLR_LED_COUNT; ++i) { | ||
406 | if (xkb_state_led_index_is_active(wlr_device->keyboard->xkb_state, | ||
407 | wlr_device->keyboard->led_indexes[i])) { | ||
408 | leds |= (1 << i); | ||
409 | } | ||
410 | } | ||
411 | wlr_keyboard_led_update(wlr_device->keyboard, leds); | ||
404 | } | 412 | } |
405 | 413 | ||
406 | if (input_config && input_config->repeat_delay != INT_MIN | 414 | if (input_config && input_config->repeat_delay != INT_MIN |