]> git.mdlowis.com Git - proto/labwc.git/commitdiff
theme: add window.inactive.border.color
authorJohan Malm <jgm323@gmail.com>
Sat, 10 Apr 2021 18:11:29 +0000 (19:11 +0100)
committerJohan Malm <jgm323@gmail.com>
Sat, 10 Apr 2021 18:11:29 +0000 (19:11 +0100)
include/theme.h
src/ssd.c
src/theme.c

index 34b750e71e0d8410f17592265d44b1489583dcdb..318c5815568ad173d0812e34d3d6b32674d405d5 100644 (file)
 struct theme {
        int border_width;
 
+       float window_active_border_color[4];
+       float window_inactive_border_color[4];
+
        float window_active_title_bg_color[4];
        float window_inactive_title_bg_color[4];
 
-       float window_active_border_color[4];
-
        float window_active_button_unpressed_image_color[4];
        float window_inactive_button_unpressed_image_color[4];
 
index bcbdbf7b878a46f747e3ff094b5a5bc4c90af967..f3c59da66b8ff50e7f5cb70377655952b49f456b 100644 (file)
--- a/src/ssd.c
+++ b/src/ssd.c
@@ -257,7 +257,7 @@ ssd_create(struct view *view)
                part = add_part(view, border[i]);
                part->box = ssd_box(view, border[i]);
                part->color.active = theme->window_active_border_color;
-               part->color.inactive = theme->window_active_border_color;
+               part->color.inactive = theme->window_inactive_border_color;
        }
 
        /* titlebar */
@@ -266,7 +266,7 @@ ssd_create(struct view *view)
        part->color.active = theme->window_active_title_bg_color;
        part->color.inactive = theme->window_inactive_title_bg_color;
 
-       /* titlebar top left corner */
+       /* titlebar active top left corner */
        struct wlr_renderer *renderer = view->server->renderer;
        part = add_part(view, LAB_SSD_PART_CORNER_TOP_LEFT);
        part->box = ssd_box(view, part->type);
@@ -280,18 +280,23 @@ ssd_create(struct view *view)
        };
        part->texture.active = rounded_rect(renderer, &ctx);
 
+       /* titlebar inactive top left corner */
        ctx.fill_color = theme->window_inactive_title_bg_color,
+       ctx.border_color = theme->window_inactive_border_color,
        part->texture.inactive = rounded_rect(renderer, &ctx);
 
-       /* titlebar top right corner */
+       /* titlebar active top right corner */
        part = add_part(view, LAB_SSD_PART_CORNER_TOP_RIGHT);
        part->box = ssd_box(view, part->type);
        ctx.box = &part->box;
        ctx.corner = LAB_CORNER_TOP_RIGHT;
        ctx.fill_color = theme->window_active_title_bg_color,
+       ctx.border_color = theme->window_active_border_color,
        part->texture.active = rounded_rect(renderer, &ctx);
 
+       /* titlebar inactive top right corner */
        ctx.fill_color = theme->window_inactive_title_bg_color,
+       ctx.border_color = theme->window_inactive_border_color,
        part->texture.inactive = rounded_rect(renderer, &ctx);
 }
 
index 409ea48271dedc6ea0608c78eaff82632417b2ee..348a32692ee97ced282bba9eef63bd7460a2329f 100644 (file)
@@ -64,11 +64,16 @@ parse_hexstr(const char *hex, float *rgba)
 void theme_builtin(struct theme *theme)
 {
        theme->border_width = 1;
-       parse_hexstr("#589bda", theme->window_active_title_bg_color);
+
        parse_hexstr("#3c7cb7", theme->window_active_border_color);
+       parse_hexstr("#efece6", theme->window_inactive_border_color);
+
+       parse_hexstr("#589bda", theme->window_active_title_bg_color);
        parse_hexstr("#efece6", theme->window_inactive_title_bg_color);
+
        parse_hexstr("#ffffff", theme->window_active_button_unpressed_image_color);
        parse_hexstr("#000000", theme->window_inactive_button_unpressed_image_color);
+
        parse_hexstr("#fcfbfa", theme->menu_items_bg_color);
        parse_hexstr("#000000", theme->menu_items_text_color);
        parse_hexstr("#4a90d9", theme->menu_items_active_bg_color);
@@ -88,16 +93,22 @@ static void entry(struct theme *theme, const char *key, const char *value)
        }
        if (match(key, "border.width")) {
                theme->border_width = atoi(value);
+
+       } else if (match(key, "window.active.border.color")) {
+               parse_hexstr(value, theme->window_active_border_color);
+       } else if (match(key, "window.inactive.border.color")) {
+               parse_hexstr(value, theme->window_inactive_border_color);
+
        } else if (match(key, "window.active.title.bg.color")) {
                parse_hexstr(value, theme->window_active_title_bg_color);
-       } else if (match(key, "window.active.handle.bg.color")) {
-               parse_hexstr(value, theme->window_active_border_color);
        } else if (match(key, "window.inactive.title.bg.color")) {
                parse_hexstr(value, theme->window_inactive_title_bg_color);
+
        } else if (match(key, "window.active.button.unpressed.image.color")) {
                parse_hexstr(value, theme->window_active_button_unpressed_image_color);
        } else if (match(key, "window.inactive.button.unpressed.image.color")) {
                parse_hexstr(value, theme->window_inactive_button_unpressed_image_color);
+
        } else if (match(key, "menu.items.bg.color")) {
                parse_hexstr(value, theme->menu_items_bg_color);
        } else if (match(key, "menu.items.text.color")) {