diff --git a/include/theme/theme.h b/include/theme/theme.h index 1287c3cf..f175682e 100644 --- a/include/theme/theme.h +++ b/include/theme/theme.h @@ -33,13 +33,6 @@ struct theme { struct wlr_texture *xbm_iconify_inactive_unpressed; }; -/** - * parse_hexstr - parse #rrggbb - * @hex: hex string to be parsed - * @rgba: pointer to float[4] for return value - */ -void parse_hexstr(const char *hex, float *rgba); - /** * theme_init - read openbox theme and generate button textures * @theme: theme data @@ -56,11 +49,4 @@ void theme_init(struct theme *theme, struct wlr_renderer *renderer, */ void theme_finish(struct theme *theme); -/** - * theme_builin - apply built-in theme similar to Clearlooks - * Note: Only used if no theme can be found. Default values for individual - * theme options are as per openbox spec and are typically black/white. - */ -void theme_builtin(struct theme *theme); - #endif /* __LABWC_THEME_H */ diff --git a/src/theme/meson.build b/src/theme/meson.build index 7800344a..a9bef667 100644 --- a/src/theme/meson.build +++ b/src/theme/meson.build @@ -1,5 +1,4 @@ labwc_sources += files( 'theme.c', - 'theme-builtin.c', ) diff --git a/src/theme/theme-builtin.c b/src/theme/theme-builtin.c deleted file mode 100644 index aa79ce6c..00000000 --- a/src/theme/theme-builtin.c +++ /dev/null @@ -1,25 +0,0 @@ -/* - * We generally use Openbox defaults, but if no theme file can be found it's - * better to populate the theme variables with some sane values as no-one - * wants to use openbox without a theme - it'll all just be black and white. - * - * Openbox doesn't actual start if it can't find a theme. As it's normally - * packaged with Clearlooks, this is not a problem, but for labwc I thought - * this was a bit hard-line. People might want to try labwc without having - * Openbox (and associated themes) installed. - */ - -#include "theme/theme.h" - -void theme_builtin(struct theme *theme) -{ - 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); - 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); - parse_hexstr("#ffffff", theme->menu_items_active_text_color); -} diff --git a/src/theme/theme.c b/src/theme/theme.c index ddf393bc..69448516 100644 --- a/src/theme/theme.c +++ b/src/theme/theme.c @@ -28,6 +28,11 @@ hex_to_dec(char c) return 0; } +/** + * parse_hexstr - parse #rrggbb + * @hex: hex string to be parsed + * @rgba: pointer to float[4] for return value + */ void parse_hexstr(const char *hex, float *rgba) { @@ -44,6 +49,31 @@ parse_hexstr(const char *hex, float *rgba) } } +/* + * We generally use Openbox defaults, but if no theme file can be found it's + * better to populate the theme variables with some sane values as no-one + * wants to use openbox without a theme - it'll all just be black and white. + * + * Openbox doesn't actual start if it can't find a theme. As it's normally + * packaged with Clearlooks, this is not a problem, but for labwc I thought + * this was a bit hard-line. People might want to try labwc without having + * Openbox (and associated themes) installed. + * + * theme_builtin() applies a theme very similar to Clearlooks-3.4 + */ +void theme_builtin(struct theme *theme) +{ + 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); + 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); + parse_hexstr("#ffffff", theme->menu_items_active_text_color); +} + static bool match(const gchar *pattern, const gchar *string) {