From 3106ef23a7b4f7f7efeb43d47e724f5b23c4fd78 Mon Sep 17 00:00:00 2001 From: Brian Ashworth Date: Fri, 15 Mar 2019 15:09:55 -0400 Subject: Fix output config retrieval for new outputs This removes `output_find_config`, which would take the first matching output config it found. This is fine if only a name output config, identifier output config, or even just wildcard exist, but if there is a name output config and identifier output config, they are not merged. Instead, this introduces find_output_config, which is just a wrapper for `get_output_config`. This ensures that both the name and identifier output configs are respected. This fixes the following case: - For simplicity in this example, remove all output configs from config - Run `swaymsg output bg #ff0000 solid_color` - Run `swaymsg output scale 2` - Disconnect and reconnect output Without this, the output will have the background, but not the scale. With this, the output will have both the background and scale --- include/sway/config.h | 2 ++ 1 file changed, 2 insertions(+) (limited to 'include/sway/config.h') diff --git a/include/sway/config.h b/include/sway/config.h index 46ca7cee..7c544541 100644 --- a/include/sway/config.h +++ b/include/sway/config.h @@ -585,6 +585,8 @@ bool apply_output_config(struct output_config *oc, struct sway_output *output); struct output_config *store_output_config(struct output_config *oc); +struct output_config *find_output_config(struct sway_output *output); + void apply_output_config_to_outputs(struct output_config *oc); void reset_outputs(void); -- cgit v1.2.3-54-g00ecf