Support inactive unpressed icons

This commit is contained in:
Johan Malm 2020-08-21 20:35:06 +01:00
parent e62c251a74
commit 83331e57ed
6 changed files with 48 additions and 17 deletions

View file

@ -39,6 +39,7 @@ static bool match(const gchar *pattern, const gchar *string)
return (bool)g_pattern_match_simple(pattern, string);
}
/* clang-format off */
static void entry(const char *key, const char *value)
{
if (!key || !value)
@ -51,7 +52,10 @@ static void entry(const char *key, const char *value)
parse_hexstr(value, theme.window_inactive_title_bg_color);
if (match(key, "window.active.button.unpressed.image.color"))
parse_hexstr(value, theme.window_active_button_unpressed_image_color);
if (match(key, "window.inactive.button.unpressed.image.color"))
parse_hexstr(value, theme.window_inactive_button_unpressed_image_color);
}
/* clang-format on */
static void rtrim(char **s)
{
@ -101,13 +105,16 @@ static void process_line(char *line)
* this was a bit hard-line. People might want to try labwc without having
* Openbox (and associated themes) installed.
*/
/* clang-format off */
void theme_builtin(void)
{
parse_hexstr("#589bda", theme.window_active_title_bg_color);
parse_hexstr("#3c7cb7", theme.window_active_handle_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);
}
/* clang-format on */
void theme_read(const char *theme_name)
{

View file

@ -73,8 +73,13 @@ out:
void xbm_load(struct wlr_renderer *r)
{
parse_set_color(theme.window_active_button_unpressed_image_color);
load_button(r, "close.xbm", &theme.xbm_close, close_button_normal);
load_button(r, "max.xbm", &theme.xbm_maximize, max_button_normal);
load_button(r, "iconify.xbm", &theme.xbm_iconify, iconify_button_normal);
load_button(r, "close.xbm", &theme.xbm_close_active_unpressed, close_button_normal);
load_button(r, "max.xbm", &theme.xbm_maximize_active_unpressed, max_button_normal);
load_button(r, "iconify.xbm", &theme.xbm_iconify_active_unpressed, iconify_button_normal);
parse_set_color(theme.window_inactive_button_unpressed_image_color);
load_button(r, "close.xbm", &theme.xbm_close_inactive_unpressed, close_button_normal);
load_button(r, "max.xbm", &theme.xbm_maximize_inactive_unpressed, max_button_normal);
load_button(r, "iconify.xbm", &theme.xbm_iconify_inactive_unpressed, iconify_button_normal);
}
/* clang-format on */