diff options
Diffstat (limited to 'include/sway/config.h')
-rw-r--r-- | include/sway/config.h | 36 |
1 files changed, 35 insertions, 1 deletions
diff --git a/include/sway/config.h b/include/sway/config.h index afff2738..83ded720 100644 --- a/include/sway/config.h +++ b/include/sway/config.h | |||
@@ -67,11 +67,34 @@ struct input_config { | |||
67 | int send_events; | 67 | int send_events; |
68 | int tap; | 68 | int tap; |
69 | 69 | ||
70 | char *xkb_layout; | ||
71 | char *xkb_model; | ||
72 | char *xkb_options; | ||
73 | char *xkb_rules; | ||
74 | char *xkb_variant; | ||
75 | |||
70 | bool capturable; | 76 | bool capturable; |
71 | struct wlr_box region; | 77 | struct wlr_box region; |
72 | }; | 78 | }; |
73 | 79 | ||
74 | /** | 80 | /** |
81 | * Options for misc device configurations that happen in the seat block | ||
82 | */ | ||
83 | struct seat_attachment_config { | ||
84 | char *identifier; | ||
85 | // TODO other things are configured here for some reason | ||
86 | }; | ||
87 | |||
88 | /** | ||
89 | * Options for multiseat and other misc device configurations | ||
90 | */ | ||
91 | struct seat_config { | ||
92 | char *name; | ||
93 | int fallback; // -1 means not set | ||
94 | list_t *attachments; // list of seat_attachment configs | ||
95 | }; | ||
96 | |||
97 | /** | ||
75 | * Size and position configuration for a particular output. | 98 | * Size and position configuration for a particular output. |
76 | * | 99 | * |
77 | * This is set via the `output` command. | 100 | * This is set via the `output` command. |
@@ -262,6 +285,7 @@ struct sway_config { | |||
262 | list_t *pid_workspaces; | 285 | list_t *pid_workspaces; |
263 | list_t *output_configs; | 286 | list_t *output_configs; |
264 | list_t *input_configs; | 287 | list_t *input_configs; |
288 | list_t *seat_configs; | ||
265 | list_t *criteria; | 289 | list_t *criteria; |
266 | list_t *no_focus; | 290 | list_t *no_focus; |
267 | list_t *active_bar_modifiers; | 291 | list_t *active_bar_modifiers; |
@@ -358,9 +382,19 @@ char *do_var_replacement(char *str); | |||
358 | struct cmd_results *check_security_config(); | 382 | struct cmd_results *check_security_config(); |
359 | 383 | ||
360 | int input_identifier_cmp(const void *item, const void *data); | 384 | int input_identifier_cmp(const void *item, const void *data); |
385 | struct input_config *new_input_config(const char* identifier); | ||
361 | void merge_input_config(struct input_config *dst, struct input_config *src); | 386 | void merge_input_config(struct input_config *dst, struct input_config *src); |
362 | void apply_input_config(struct input_config *ic, struct libinput_device *dev); | ||
363 | void free_input_config(struct input_config *ic); | 387 | void free_input_config(struct input_config *ic); |
388 | void apply_input_config(struct input_config *input); | ||
389 | |||
390 | int seat_name_cmp(const void *item, const void *data); | ||
391 | struct seat_config *new_seat_config(const char* name); | ||
392 | void merge_seat_config(struct seat_config *dst, struct seat_config *src); | ||
393 | void free_seat_config(struct seat_config *ic); | ||
394 | struct seat_attachment_config *seat_attachment_config_new(); | ||
395 | struct seat_attachment_config *seat_config_get_attachment( | ||
396 | struct seat_config *seat_config, char *identifier); | ||
397 | void apply_seat_config(struct seat_config *seat); | ||
364 | 398 | ||
365 | int output_name_cmp(const void *item, const void *data); | 399 | int output_name_cmp(const void *item, const void *data); |
366 | struct output_config *new_output_config(); | 400 | struct output_config *new_output_config(); |