keyboard: set keyboard layout on reconfigure

If keyboard-layout-per-toplevel-window is used, reset the group (index)
for each window on --reconfigure whenever the keymap has changed.

Refactor to use a common configure function for reconfigure and
keyboard-group creation.

Co-authored-by: @johanmalm

Fixes #1407
This commit is contained in:
Simon Long 2024-01-16 12:43:18 +00:00 committed by Johan Malm
parent dfb6664906
commit 8c9be2f0d1
5 changed files with 67 additions and 15 deletions

View file

@ -9,8 +9,11 @@ struct seat;
struct keyboard;
struct wlr_keyboard;
void keyboard_init(struct seat *seat);
void keyboard_finish(struct seat *seat);
void keyboard_configure(struct seat *seat, struct wlr_keyboard *kb,
bool is_virtual);
void keyboard_group_init(struct seat *seat);
void keyboard_group_finish(struct seat *seat);
void keyboard_setup_handlers(struct keyboard *keyboard);
void keyboard_set_numlock(struct wlr_keyboard *keyboard);