mirror of
https://github.com/swaywm/sway.git
synced 2025-01-01 18:06:47 +01:00
input/keyboard: fix Group# bindings for keyboard groups
The keyboard group's effective keyboard layout was never being changed due to a condition that incorrectly preventing it from being performed. The IPC event that follows the change was correctly being prevented.
This commit is contained in:
parent
07042486c3
commit
9d6787d10d
1 changed files with 5 additions and 3 deletions
|
@ -626,11 +626,13 @@ static void handle_modifier_event(struct sway_keyboard *keyboard) {
|
||||||
determine_bar_visibility(modifiers);
|
determine_bar_visibility(modifiers);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (wlr_device->keyboard->modifiers.group != keyboard->effective_layout &&
|
if (wlr_device->keyboard->modifiers.group != keyboard->effective_layout) {
|
||||||
!wlr_keyboard_group_from_wlr_keyboard(wlr_device->keyboard)) {
|
|
||||||
keyboard->effective_layout = wlr_device->keyboard->modifiers.group;
|
keyboard->effective_layout = wlr_device->keyboard->modifiers.group;
|
||||||
|
|
||||||
|
if (!wlr_keyboard_group_from_wlr_keyboard(wlr_device->keyboard)) {
|
||||||
ipc_event_input("xkb_layout", keyboard->seat_device->input_device);
|
ipc_event_input("xkb_layout", keyboard->seat_device->input_device);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void handle_keyboard_modifiers(struct wl_listener *listener,
|
static void handle_keyboard_modifiers(struct wl_listener *listener,
|
||||||
|
|
Loading…
Reference in a new issue