From 016a77424aae401cd25b49eb9c681cbab4e12908 Mon Sep 17 00:00:00 2001 From: Mikkel Oscar Lyderik Date: Fri, 12 Feb 2016 13:22:20 +0100 Subject: [PATCH] Prefer named output config over wildcard config. This makes sure that a named output config is applied before the general wildcard config when a new output is created. This ensures that the config: output * ... output NAME ... behaves the same way as: output NAME ... output * ... --- sway/container.c | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/sway/container.c b/sway/container.c index 444f85fd..6e6b20b2 100644 --- a/sway/container.c +++ b/sway/container.c @@ -90,22 +90,28 @@ swayc_t *new_output(wlc_handle handle) { sway_log(L_DEBUG, "New output %lu:%s", handle, name); - struct output_config *oc = NULL; + struct output_config *oc = NULL, *all = NULL; int i; for (i = 0; i < config->output_configs->length; ++i) { struct output_config *cur = config->output_configs->items[i]; if (strcasecmp(name, cur->name) == 0) { sway_log(L_DEBUG, "Matched output config for %s", name); oc = cur; - break; } if (strcasecmp("*", cur->name) == 0) { sway_log(L_DEBUG, "Matched wildcard output config for %s", name); - oc = cur; + all = cur; + } + + if (oc && all) { break; } } + if (!oc) { + oc = all; + } + if (oc && !oc->enabled) { return NULL; }