aboutsummaryrefslogtreecommitdiffstats
path: root/swaynag/types.c
diff options
context:
space:
mode:
Diffstat (limited to 'swaynag/types.c')
-rw-r--r--swaynag/types.c15
1 files changed, 11 insertions, 4 deletions
diff --git a/swaynag/types.c b/swaynag/types.c
index fa045532..409cc668 100644
--- a/swaynag/types.c
+++ b/swaynag/types.c
@@ -26,15 +26,18 @@ struct swaynag_type *swaynag_type_new(const char *name) {
26 type->button_gap_close = -1; 26 type->button_gap_close = -1;
27 type->button_margin_right = -1; 27 type->button_margin_right = -1;
28 type->button_padding = -1; 28 type->button_padding = -1;
29 type->layer = -1;
29 return type; 30 return type;
30} 31}
31 32
32void swaynag_types_add_default(list_t *types) { 33void swaynag_types_add_default(list_t *types) {
33 struct swaynag_type *type_defaults = swaynag_type_new("<defaults>"); 34 struct swaynag_type *type_defaults = swaynag_type_new("<defaults>");
34 type_defaults->font = strdup("pango:Monospace 10"); 35 type_defaults->font_description =
36 pango_font_description_from_string("pango:Monospace 10");
35 type_defaults->anchors = ZWLR_LAYER_SURFACE_V1_ANCHOR_TOP 37 type_defaults->anchors = ZWLR_LAYER_SURFACE_V1_ANCHOR_TOP
36 | ZWLR_LAYER_SURFACE_V1_ANCHOR_LEFT 38 | ZWLR_LAYER_SURFACE_V1_ANCHOR_LEFT
37 | ZWLR_LAYER_SURFACE_V1_ANCHOR_RIGHT; 39 | ZWLR_LAYER_SURFACE_V1_ANCHOR_RIGHT;
40 type_defaults->layer = ZWLR_LAYER_SHELL_V1_LAYER_TOP;
38 type_defaults->button_background = 0x333333FF; 41 type_defaults->button_background = 0x333333FF;
39 type_defaults->details_background = 0x333333FF; 42 type_defaults->details_background = 0x333333FF;
40 type_defaults->background = 0x323232FF; 43 type_defaults->background = 0x323232FF;
@@ -88,8 +91,8 @@ void swaynag_type_merge(struct swaynag_type *dest, struct swaynag_type *src) {
88 return; 91 return;
89 } 92 }
90 93
91 if (src->font) { 94 if (src->font_description) {
92 dest->font = strdup(src->font); 95 dest->font_description = pango_font_description_copy(src->font_description);
93 } 96 }
94 97
95 if (src->output) { 98 if (src->output) {
@@ -100,6 +103,10 @@ void swaynag_type_merge(struct swaynag_type *dest, struct swaynag_type *src) {
100 dest->anchors = src->anchors; 103 dest->anchors = src->anchors;
101 } 104 }
102 105
106 if (src->layer >= 0) {
107 dest->layer = src->layer;
108 }
109
103 // Colors 110 // Colors
104 if (src->button_background > 0) { 111 if (src->button_background > 0) {
105 dest->button_background = src->button_background; 112 dest->button_background = src->button_background;
@@ -166,7 +173,7 @@ void swaynag_type_merge(struct swaynag_type *dest, struct swaynag_type *src) {
166 173
167void swaynag_type_free(struct swaynag_type *type) { 174void swaynag_type_free(struct swaynag_type *type) {
168 free(type->name); 175 free(type->name);
169 free(type->font); 176 pango_font_description_free(type->font_description);
170 free(type->output); 177 free(type->output);
171 free(type); 178 free(type);
172} 179}