Differentiate between all or no outputs
This commit is contained in:
parent
212c6a18a2
commit
e4c1176b72
|
@ -27,6 +27,7 @@ struct config {
|
|||
bool strip_workspace_numbers;
|
||||
bool binding_mode_indicator;
|
||||
bool workspace_buttons;
|
||||
bool all_outputs;
|
||||
list_t *outputs;
|
||||
|
||||
int height;
|
||||
|
|
|
@ -51,6 +51,7 @@ struct config *init_config() {
|
|||
config->strip_workspace_numbers = false;
|
||||
config->binding_mode_indicator = true;
|
||||
config->workspace_buttons = true;
|
||||
config->all_outputs = false;
|
||||
config->outputs = create_list();
|
||||
|
||||
/* height */
|
||||
|
|
|
@ -78,10 +78,13 @@ static void ipc_parse_config(struct config *config, const char *payload) {
|
|||
output = json_object_array_get_idx(outputs, i);
|
||||
output_str = json_object_get_string(output);
|
||||
if (strcmp("*", output_str) == 0) {
|
||||
config->all_outputs = true;
|
||||
break;
|
||||
}
|
||||
list_add(config->outputs, strdup(output_str));
|
||||
}
|
||||
} else {
|
||||
config->all_outputs = true;
|
||||
}
|
||||
|
||||
if (colors) {
|
||||
|
@ -251,7 +254,7 @@ void ipc_bar_init(struct bar *bar, const char *bar_id) {
|
|||
}
|
||||
|
||||
bool use_output = false;
|
||||
if (bar->config->outputs->length == 0) {
|
||||
if (bar->config->all_outputs) {
|
||||
use_output = true;
|
||||
} else {
|
||||
int j = 0;
|
||||
|
|
Loading…
Reference in a new issue