mirror of
https://gitlab.freedesktop.org/wlroots/wlroots.git
synced 2024-11-22 23:22:24 +00:00
rootston: seat config by device
This commit is contained in:
parent
53021f8ed4
commit
447c561d15
@ -19,6 +19,7 @@ struct device_config {
|
||||
char *name;
|
||||
char *mapped_output;
|
||||
struct wlr_box *mapped_box;
|
||||
char *seat;
|
||||
struct wl_list link;
|
||||
};
|
||||
|
||||
|
@ -289,6 +289,7 @@ static int config_ini_handler(void *user, const char *section, const char *name,
|
||||
if (!found) {
|
||||
dc = calloc(1, sizeof(struct device_config));
|
||||
dc->name = strdup(device_name);
|
||||
dc->seat = strdup("seat0");
|
||||
wl_list_insert(&config->devices, &dc->link);
|
||||
}
|
||||
|
||||
@ -298,6 +299,9 @@ static int config_ini_handler(void *user, const char *section, const char *name,
|
||||
} else if (strcmp(name, "geometry") == 0) {
|
||||
free(dc->mapped_box);
|
||||
dc->mapped_box = parse_geometry(value);
|
||||
} else if (strcmp(name, "seat") == 0) {
|
||||
free(dc->seat);
|
||||
dc->seat = strdup(value);
|
||||
} else {
|
||||
wlr_log(L_ERROR, "got unknown device config: %s", name);
|
||||
}
|
||||
@ -387,6 +391,7 @@ void roots_config_destroy(struct roots_config *config) {
|
||||
struct device_config *dc, *dtmp = NULL;
|
||||
wl_list_for_each_safe(dc, dtmp, &config->devices, link) {
|
||||
free(dc->name);
|
||||
free(dc->seat);
|
||||
free(dc->mapped_output);
|
||||
free(dc->mapped_box);
|
||||
free(dc);
|
||||
|
Loading…
Reference in New Issue
Block a user