diff options
Diffstat (limited to 'include/sway')
-rw-r--r-- | include/sway/commands.h | 1 | ||||
-rw-r--r-- | include/sway/config.h | 7 | ||||
-rw-r--r-- | include/sway/input/keyboard.h | 8 | ||||
-rw-r--r-- | include/sway/input/seat.h | 1 |
4 files changed, 17 insertions, 0 deletions
diff --git a/include/sway/commands.h b/include/sway/commands.h index 45b5b0f4..67665d87 100644 --- a/include/sway/commands.h +++ b/include/sway/commands.h @@ -284,6 +284,7 @@ sway_cmd seat_cmd_attach; sway_cmd seat_cmd_cursor; sway_cmd seat_cmd_fallback; sway_cmd seat_cmd_hide_cursor; +sway_cmd seat_cmd_keyboard_grouping; sway_cmd seat_cmd_pointer_constraint; sway_cmd seat_cmd_xcursor_theme; diff --git a/include/sway/config.h b/include/sway/config.h index 457e0a98..ed542790 100644 --- a/include/sway/config.h +++ b/include/sway/config.h @@ -176,6 +176,12 @@ enum seat_config_allow_constrain { CONSTRAIN_DISABLE }; +enum seat_keyboard_grouping { + KEYBOARD_GROUP_DEFAULT, // the default is currently keymap + KEYBOARD_GROUP_NONE, + KEYBOARD_GROUP_KEYMAP +}; + /** * Options for multiseat and other misc device configurations */ @@ -185,6 +191,7 @@ struct seat_config { list_t *attachments; // list of seat_attachment configs int hide_cursor_timeout; enum seat_config_allow_constrain allow_constrain; + enum seat_keyboard_grouping keyboard_grouping; struct { char *name; int size; diff --git a/include/sway/input/keyboard.h b/include/sway/input/keyboard.h index 4aa0d8f4..72a29ba6 100644 --- a/include/sway/input/keyboard.h +++ b/include/sway/input/keyboard.h @@ -67,6 +67,14 @@ struct sway_keyboard { struct sway_binding *repeat_binding; }; +struct sway_keyboard_group { + struct wlr_keyboard_group *wlr_group; + struct sway_seat_device *seat_device; + struct wl_listener keyboard_key; + struct wl_listener keyboard_modifiers; + struct wl_list link; // sway_seat::keyboard_groups +}; + struct xkb_keymap *sway_keyboard_compile_keymap(struct input_config *ic, char **error); diff --git a/include/sway/input/seat.h b/include/sway/input/seat.h index 24a6fed4..32795b03 100644 --- a/include/sway/input/seat.h +++ b/include/sway/input/seat.h @@ -90,6 +90,7 @@ struct sway_seat { struct wl_listener request_set_primary_selection; struct wl_list devices; // sway_seat_device::link + struct wl_list keyboard_groups; // sway_keyboard_group::link struct wl_list link; // input_manager::seats }; |