aboutsummaryrefslogtreecommitdiffstats
path: root/sway/commands
diff options
context:
space:
mode:
authorLibravatar Drew DeVault <sir@cmpwn.com>2018-10-08 14:42:48 +0200
committerLibravatar GitHub <noreply@github.com>2018-10-08 14:42:48 +0200
commit6cb0e58c6d26efa2bca9b3710df08ed1aea09aea (patch)
tree1036293744616474f190d30f7ae5428579e82900 /sway/commands
parentMerge pull request #2789 from RyanDwyer/reload-idle (diff)
parentAllow status_command to be disabled via IPC (diff)
downloadsway-6cb0e58c6d26efa2bca9b3710df08ed1aea09aea.tar.gz
sway-6cb0e58c6d26efa2bca9b3710df08ed1aea09aea.tar.zst
sway-6cb0e58c6d26efa2bca9b3710df08ed1aea09aea.zip
Merge pull request #2791 from RyanDwyer/status-command-optional
swaybar: allow null status_command
Diffstat (limited to 'sway/commands')
-rw-r--r--sway/commands/bar.c14
-rw-r--r--sway/commands/bar/status_command.c16
2 files changed, 20 insertions, 10 deletions
diff --git a/sway/commands/bar.c b/sway/commands/bar.c
index f760888e..03f4c557 100644
--- a/sway/commands/bar.c
+++ b/sway/commands/bar.c
@@ -46,14 +46,14 @@ struct cmd_results *cmd_bar(int argc, char **argv) {
46 return error; 46 return error;
47 } 47 }
48 48
49 if (!config->reading) { 49 if (find_handler(argv[0], bar_config_handlers,
50 if (!find_handler(argv[0], bar_config_handlers, 50 sizeof(bar_config_handlers))) {
51 sizeof(bar_config_handlers))) { 51 if (config->reading) {
52 return cmd_results_new(CMD_FAILURE, "bar", 52 return config_subcommand(argv, argc, bar_config_handlers,
53 "Can only be used in config file."); 53 sizeof(bar_config_handlers));
54 } 54 }
55 return config_subcommand(argv, argc, bar_config_handlers, 55 return cmd_results_new(CMD_FAILURE, "bar",
56 sizeof(bar_config_handlers)); 56 "Can only be used in config file.");
57 } 57 }
58 58
59 if (argc > 1) { 59 if (argc > 1) {
diff --git a/sway/commands/bar/status_command.c b/sway/commands/bar/status_command.c
index 6f6f81a3..5ea22525 100644
--- a/sway/commands/bar/status_command.c
+++ b/sway/commands/bar/status_command.c
@@ -13,8 +13,18 @@ struct cmd_results *bar_cmd_status_command(int argc, char **argv) {
13 "status_command", "No bar defined."); 13 "status_command", "No bar defined.");
14 } 14 }
15 free(config->current_bar->status_command); 15 free(config->current_bar->status_command);
16 config->current_bar->status_command = join_args(argv, argc); 16 config->current_bar->status_command = NULL;
17 wlr_log(WLR_DEBUG, "Feeding bar with status command: %s", 17
18 config->current_bar->status_command); 18 char *new_command = join_args(argv, argc);
19 if (strcmp(new_command, "-") != 0) {
20 config->current_bar->status_command = new_command;
21 wlr_log(WLR_DEBUG, "Feeding bar with status command: %s",
22 config->current_bar->status_command);
23 }
24
25 if (config->active && !config->validating) {
26 load_swaybars();
27 }
28
19 return cmd_results_new(CMD_SUCCESS, NULL, NULL); 29 return cmd_results_new(CMD_SUCCESS, NULL, NULL);
20} 30}