diff options
Diffstat (limited to 'include')
-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; | |||
284 | sway_cmd seat_cmd_cursor; | 284 | sway_cmd seat_cmd_cursor; |
285 | sway_cmd seat_cmd_fallback; | 285 | sway_cmd seat_cmd_fallback; |
286 | sway_cmd seat_cmd_hide_cursor; | 286 | sway_cmd seat_cmd_hide_cursor; |
287 | sway_cmd seat_cmd_keyboard_grouping; | ||
287 | sway_cmd seat_cmd_pointer_constraint; | 288 | sway_cmd seat_cmd_pointer_constraint; |
288 | sway_cmd seat_cmd_xcursor_theme; | 289 | sway_cmd seat_cmd_xcursor_theme; |
289 | 290 | ||
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 { | |||
176 | CONSTRAIN_DISABLE | 176 | CONSTRAIN_DISABLE |
177 | }; | 177 | }; |
178 | 178 | ||
179 | enum seat_keyboard_grouping { | ||
180 | KEYBOARD_GROUP_DEFAULT, // the default is currently keymap | ||
181 | KEYBOARD_GROUP_NONE, | ||
182 | KEYBOARD_GROUP_KEYMAP | ||
183 | }; | ||
184 | |||
179 | /** | 185 | /** |
180 | * Options for multiseat and other misc device configurations | 186 | * Options for multiseat and other misc device configurations |
181 | */ | 187 | */ |
@@ -185,6 +191,7 @@ struct seat_config { | |||
185 | list_t *attachments; // list of seat_attachment configs | 191 | list_t *attachments; // list of seat_attachment configs |
186 | int hide_cursor_timeout; | 192 | int hide_cursor_timeout; |
187 | enum seat_config_allow_constrain allow_constrain; | 193 | enum seat_config_allow_constrain allow_constrain; |
194 | enum seat_keyboard_grouping keyboard_grouping; | ||
188 | struct { | 195 | struct { |
189 | char *name; | 196 | char *name; |
190 | int size; | 197 | 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 { | |||
67 | struct sway_binding *repeat_binding; | 67 | struct sway_binding *repeat_binding; |
68 | }; | 68 | }; |
69 | 69 | ||
70 | struct sway_keyboard_group { | ||
71 | struct wlr_keyboard_group *wlr_group; | ||
72 | struct sway_seat_device *seat_device; | ||
73 | struct wl_listener keyboard_key; | ||
74 | struct wl_listener keyboard_modifiers; | ||
75 | struct wl_list link; // sway_seat::keyboard_groups | ||
76 | }; | ||
77 | |||
70 | struct xkb_keymap *sway_keyboard_compile_keymap(struct input_config *ic, | 78 | struct xkb_keymap *sway_keyboard_compile_keymap(struct input_config *ic, |
71 | char **error); | 79 | char **error); |
72 | 80 | ||
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 { | |||
90 | struct wl_listener request_set_primary_selection; | 90 | struct wl_listener request_set_primary_selection; |
91 | 91 | ||
92 | struct wl_list devices; // sway_seat_device::link | 92 | struct wl_list devices; // sway_seat_device::link |
93 | struct wl_list keyboard_groups; // sway_keyboard_group::link | ||
93 | 94 | ||
94 | struct wl_list link; // input_manager::seats | 95 | struct wl_list link; // input_manager::seats |
95 | }; | 96 | }; |