mirror of
https://github.com/swaywm/sway.git
synced 2026-04-20 06:47:03 -04:00
swaybar: complete barconfig_update event handling
This adds complete support for the barconfig_update ipc event. This also changes the bar command and subcommand handlers to correctly emit the event. This makes it so all bar subcommands other than id and swaybar_command are dynamically changeable at runtime. sway-bar.5 has been updated accordingly
This commit is contained in:
parent
187306640b
commit
1fd2c6ba49
15 changed files with 412 additions and 321 deletions
|
|
@ -24,9 +24,21 @@ struct cmd_results *bar_cmd_tray_output(int argc, char **argv) {
|
|||
free(outputs->items[i]);
|
||||
}
|
||||
outputs->length = 0;
|
||||
} else if (strcmp(argv[0], "*") == 0) {
|
||||
sway_log(SWAY_DEBUG, "Showing tray on all outputs for bar: %s",
|
||||
config->current_bar->id);
|
||||
while (outputs->length) {
|
||||
free(outputs->items[0]);
|
||||
list_del(outputs, 0);
|
||||
}
|
||||
return cmd_results_new(CMD_SUCCESS, NULL);
|
||||
} else {
|
||||
sway_log(SWAY_DEBUG, "Showing tray on output '%s' for bar: %s", argv[0],
|
||||
config->current_bar->id);
|
||||
if (outputs->length == 1 && strcmp(outputs->items[0], "none") == 0) {
|
||||
free(outputs->items[0]);
|
||||
list_del(outputs, 0);
|
||||
}
|
||||
}
|
||||
list_add(outputs, strdup(argv[0]));
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue