diff options
Diffstat (limited to 'sway')
-rw-r--r-- | sway/commands/bar/font.c | 15 | ||||
-rw-r--r-- | sway/config/bar.c | 2 | ||||
-rw-r--r-- | sway/ipc-json.c | 4 |
3 files changed, 18 insertions, 3 deletions
diff --git a/sway/commands/bar/font.c b/sway/commands/bar/font.c index 62987f3e..891c87af 100644 --- a/sway/commands/bar/font.c +++ b/sway/commands/bar/font.c | |||
@@ -11,7 +11,20 @@ struct cmd_results *bar_cmd_font(int argc, char **argv) { | |||
11 | } | 11 | } |
12 | char *font = join_args(argv, argc); | 12 | char *font = join_args(argv, argc); |
13 | free(config->current_bar->font); | 13 | free(config->current_bar->font); |
14 | config->current_bar->font = font; | 14 | |
15 | if (strncmp(font, "pango:", 6) == 0) { | ||
16 | if (config->current_bar->pango_markup == PANGO_MARKUP_DEFAULT) { | ||
17 | config->current_bar->pango_markup = true; | ||
18 | } | ||
19 | config->current_bar->font = strdup(font + 6); | ||
20 | } else { | ||
21 | if (config->current_bar->pango_markup == PANGO_MARKUP_DEFAULT) { | ||
22 | config->current_bar->pango_markup = false; | ||
23 | } | ||
24 | config->current_bar->font = strdup(font); | ||
25 | } | ||
26 | |||
27 | free(font); | ||
15 | sway_log(SWAY_DEBUG, "Settings font '%s' for bar: %s", | 28 | sway_log(SWAY_DEBUG, "Settings font '%s' for bar: %s", |
16 | config->current_bar->font, config->current_bar->id); | 29 | config->current_bar->font, config->current_bar->id); |
17 | return cmd_results_new(CMD_SUCCESS, NULL); | 30 | return cmd_results_new(CMD_SUCCESS, NULL); |
diff --git a/sway/config/bar.c b/sway/config/bar.c index 767534a6..8970f3fd 100644 --- a/sway/config/bar.c +++ b/sway/config/bar.c | |||
@@ -91,7 +91,7 @@ struct bar_config *default_bar_config(void) { | |||
91 | } | 91 | } |
92 | bar->outputs = NULL; | 92 | bar->outputs = NULL; |
93 | bar->position = strdup("bottom"); | 93 | bar->position = strdup("bottom"); |
94 | bar->pango_markup = false; | 94 | bar->pango_markup = PANGO_MARKUP_DEFAULT; |
95 | bar->swaybar_command = NULL; | 95 | bar->swaybar_command = NULL; |
96 | bar->font = NULL; | 96 | bar->font = NULL; |
97 | bar->height = 0; | 97 | bar->height = 0; |
diff --git a/sway/ipc-json.c b/sway/ipc-json.c index 34adfc74..6c438424 100644 --- a/sway/ipc-json.c +++ b/sway/ipc-json.c | |||
@@ -1127,7 +1127,9 @@ json_object *ipc_json_describe_bar_config(struct bar_config *bar) { | |||
1127 | json_object_object_add(json, "verbose", | 1127 | json_object_object_add(json, "verbose", |
1128 | json_object_new_boolean(bar->verbose)); | 1128 | json_object_new_boolean(bar->verbose)); |
1129 | json_object_object_add(json, "pango_markup", | 1129 | json_object_object_add(json, "pango_markup", |
1130 | json_object_new_boolean(bar->pango_markup)); | 1130 | json_object_new_boolean(bar->pango_markup == PANGO_MARKUP_DEFAULT |
1131 | ? config->pango_markup | ||
1132 | : bar->pango_markup)); | ||
1131 | 1133 | ||
1132 | json_object *colors = json_object_new_object(); | 1134 | json_object *colors = json_object_new_object(); |
1133 | json_object_object_add(colors, "background", | 1135 | json_object_object_add(colors, "background", |