aboutsummaryrefslogtreecommitdiffstats
path: root/swaybar
diff options
context:
space:
mode:
authorLibravatar Mikkel Oscar Lyderik <mikkeloscar@gmail.com>2016-02-23 15:06:04 +0100
committerLibravatar Mikkel Oscar Lyderik <mikkeloscar@gmail.com>2016-02-27 22:12:35 +0100
commite4c1176b726ab9391a3c9eb69670c09ffe3e4f0a (patch)
tree3eacdd14c2eb49826c56de8ddb7dbaf67720e59e /swaybar
parentAdd outputs to bar_config ipc response (diff)
downloadsway-e4c1176b726ab9391a3c9eb69670c09ffe3e4f0a.tar.gz
sway-e4c1176b726ab9391a3c9eb69670c09ffe3e4f0a.tar.zst
sway-e4c1176b726ab9391a3c9eb69670c09ffe3e4f0a.zip
Differentiate between all or no outputs
Diffstat (limited to 'swaybar')
-rw-r--r--swaybar/config.c1
-rw-r--r--swaybar/ipc.c5
2 files changed, 5 insertions, 1 deletions
diff --git a/swaybar/config.c b/swaybar/config.c
index 5609f85f..fddea791 100644
--- a/swaybar/config.c
+++ b/swaybar/config.c
@@ -51,6 +51,7 @@ struct config *init_config() {
51 config->strip_workspace_numbers = false; 51 config->strip_workspace_numbers = false;
52 config->binding_mode_indicator = true; 52 config->binding_mode_indicator = true;
53 config->workspace_buttons = true; 53 config->workspace_buttons = true;
54 config->all_outputs = false;
54 config->outputs = create_list(); 55 config->outputs = create_list();
55 56
56 /* height */ 57 /* height */
diff --git a/swaybar/ipc.c b/swaybar/ipc.c
index b5ae6747..312c79b9 100644
--- a/swaybar/ipc.c
+++ b/swaybar/ipc.c
@@ -78,10 +78,13 @@ static void ipc_parse_config(struct config *config, const char *payload) {
78 output = json_object_array_get_idx(outputs, i); 78 output = json_object_array_get_idx(outputs, i);
79 output_str = json_object_get_string(output); 79 output_str = json_object_get_string(output);
80 if (strcmp("*", output_str) == 0) { 80 if (strcmp("*", output_str) == 0) {
81 config->all_outputs = true;
81 break; 82 break;
82 } 83 }
83 list_add(config->outputs, strdup(output_str)); 84 list_add(config->outputs, strdup(output_str));
84 } 85 }
86 } else {
87 config->all_outputs = true;
85 } 88 }
86 89
87 if (colors) { 90 if (colors) {
@@ -251,7 +254,7 @@ void ipc_bar_init(struct bar *bar, const char *bar_id) {
251 } 254 }
252 255
253 bool use_output = false; 256 bool use_output = false;
254 if (bar->config->outputs->length == 0) { 257 if (bar->config->all_outputs) {
255 use_output = true; 258 use_output = true;
256 } else { 259 } else {
257 int j = 0; 260 int j = 0;