aboutsummaryrefslogtreecommitdiffstats
path: root/include/sway/config.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/sway/config.h')
-rw-r--r--include/sway/config.h36
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 */
83struct 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 */
91struct 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);
358struct cmd_results *check_security_config(); 382struct cmd_results *check_security_config();
359 383
360int input_identifier_cmp(const void *item, const void *data); 384int input_identifier_cmp(const void *item, const void *data);
385struct input_config *new_input_config(const char* identifier);
361void merge_input_config(struct input_config *dst, struct input_config *src); 386void merge_input_config(struct input_config *dst, struct input_config *src);
362void apply_input_config(struct input_config *ic, struct libinput_device *dev);
363void free_input_config(struct input_config *ic); 387void free_input_config(struct input_config *ic);
388void apply_input_config(struct input_config *input);
389
390int seat_name_cmp(const void *item, const void *data);
391struct seat_config *new_seat_config(const char* name);
392void merge_seat_config(struct seat_config *dst, struct seat_config *src);
393void free_seat_config(struct seat_config *ic);
394struct seat_attachment_config *seat_attachment_config_new();
395struct seat_attachment_config *seat_config_get_attachment(
396 struct seat_config *seat_config, char *identifier);
397void apply_seat_config(struct seat_config *seat);
364 398
365int output_name_cmp(const void *item, const void *data); 399int output_name_cmp(const void *item, const void *data);
366struct output_config *new_output_config(); 400struct output_config *new_output_config();