diff options
Diffstat (limited to 'sway/commands/bar/font.c')
-rw-r--r-- | sway/commands/bar/font.c | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/sway/commands/bar/font.c b/sway/commands/bar/font.c index 62987f3e..0c074679 100644 --- a/sway/commands/bar/font.c +++ b/sway/commands/bar/font.c | |||
@@ -1,4 +1,3 @@ | |||
1 | #define _POSIX_C_SOURCE 200809L | ||
2 | #include <string.h> | 1 | #include <string.h> |
3 | #include "sway/commands.h" | 2 | #include "sway/commands.h" |
4 | #include "log.h" | 3 | #include "log.h" |
@@ -11,7 +10,20 @@ struct cmd_results *bar_cmd_font(int argc, char **argv) { | |||
11 | } | 10 | } |
12 | char *font = join_args(argv, argc); | 11 | char *font = join_args(argv, argc); |
13 | free(config->current_bar->font); | 12 | free(config->current_bar->font); |
14 | config->current_bar->font = font; | 13 | |
14 | if (strncmp(font, "pango:", 6) == 0) { | ||
15 | if (config->current_bar->pango_markup == PANGO_MARKUP_DEFAULT) { | ||
16 | config->current_bar->pango_markup = true; | ||
17 | } | ||
18 | config->current_bar->font = strdup(font + 6); | ||
19 | } else { | ||
20 | if (config->current_bar->pango_markup == PANGO_MARKUP_DEFAULT) { | ||
21 | config->current_bar->pango_markup = false; | ||
22 | } | ||
23 | config->current_bar->font = strdup(font); | ||
24 | } | ||
25 | |||
26 | free(font); | ||
15 | sway_log(SWAY_DEBUG, "Settings font '%s' for bar: %s", | 27 | sway_log(SWAY_DEBUG, "Settings font '%s' for bar: %s", |
16 | config->current_bar->font, config->current_bar->id); | 28 | config->current_bar->font, config->current_bar->id); |
17 | return cmd_results_new(CMD_SUCCESS, NULL); | 29 | return cmd_results_new(CMD_SUCCESS, NULL); |