From: Dana Jansens Date: Mon, 21 Dec 2009 15:42:58 +0000 (-0500) Subject: make a config option for the inactive osd font X-Git-Url: https://git.brokenzipper.com/gitweb?a=commitdiff_plain;h=b7393636e05c95ec068e8a1ff063cbefa63a901b;p=chaz%2Fopenbox make a config option for the inactive osd font --- diff --git a/data/rc.xml b/data/rc.xml index dc73fb53..ff9016dc 100644 --- a/data/rc.xml +++ b/data/rc.xml @@ -98,7 +98,16 @@ normal - + + sans + 9 + + bold + + normal + + + sans 9 diff --git a/openbox/config.c b/openbox/config.c index 33fadeb7..6bdae9ff 100644 --- a/openbox/config.c +++ b/openbox/config.c @@ -57,7 +57,8 @@ RrFont *config_font_activewindow; RrFont *config_font_inactivewindow; RrFont *config_font_menuitem; RrFont *config_font_menutitle; -RrFont *config_font_osd; +RrFont *config_font_activeosd; +RrFont *config_font_inactiveosd; guint config_desktops_num; GSList *config_desktops_names; @@ -605,8 +606,12 @@ static void parse_theme(xmlNodePtr node, gpointer d) font = &config_font_menutitle; else if (obt_parse_attr_contains(n, "place", "MenuItem")) font = &config_font_menuitem; + else if (obt_parse_attr_contains(n, "place", "ActiveOnScreenDisplay")) + font = &config_font_activeosd; else if (obt_parse_attr_contains(n, "place", "OnScreenDisplay")) - font = &config_font_osd; + font = &config_font_activeosd; + else if (obt_parse_attr_contains(n, "place","InactiveOnScreenDisplay")) + font = &config_font_inactiveosd; else goto next_font; @@ -1036,7 +1041,8 @@ void config_shutdown(void) RrFontClose(config_font_inactivewindow); RrFontClose(config_font_menuitem); RrFontClose(config_font_menutitle); - RrFontClose(config_font_osd); + RrFontClose(config_font_activeosd); + RrFontClose(config_font_inactiveosd); for (it = config_desktops_names; it; it = g_slist_next(it)) g_free(it->data); diff --git a/openbox/config.h b/openbox/config.h index 18c97ede..11796dcb 100644 --- a/openbox/config.h +++ b/openbox/config.h @@ -152,8 +152,10 @@ extern RrFont *config_font_inactivewindow; extern RrFont *config_font_menutitle; /*! The font for menu items */ extern RrFont *config_font_menuitem; -/*! The font for on-screen-displays/popups */ -extern RrFont *config_font_osd; +/*! The font for on-screen-displays/popups' active text */ +extern RrFont *config_font_activeosd; +/*! The font for on-screen-displays/popups' inactive text */ +extern RrFont *config_font_inactiveosd; /*! The number of desktops */ extern guint config_desktops_num; diff --git a/openbox/openbox.c b/openbox/openbox.c index 800e6a21..5f926bb6 100644 --- a/openbox/openbox.c +++ b/openbox/openbox.c @@ -274,7 +274,8 @@ gint main(gint argc, gchar **argv) config_font_inactivewindow, config_font_menutitle, config_font_menuitem, - config_font_osd))) + config_font_activeosd, + config_font_inactiveosd))) { RrThemeFree(ob_rr_theme); ob_rr_theme = theme; diff --git a/render/theme.c b/render/theme.c index 29d81c0d..6c136bf5 100644 --- a/render/theme.c +++ b/render/theme.c @@ -67,7 +67,7 @@ RrTheme* RrThemeNew(const RrInstance *inst, const gchar *name, gboolean allow_fallback, RrFont *active_window_font, RrFont *inactive_window_font, RrFont *menu_title_font, RrFont *menu_item_font, - RrFont *osd_font) + RrFont *active_osd_font, RrFont *inactive_osd_font) { XrmDatabase db = NULL; RrJustify winjust, mtitlejust; @@ -174,7 +174,8 @@ RrTheme* RrThemeNew(const RrInstance *inst, const gchar *name, theme->menu_font = get_font(menu_item_font, &default_font, inst); - theme->osd_font = get_font(osd_font, &default_font, inst); + theme->osd_font_hilite = get_font(active_osd_font, &default_font, inst); + theme->osd_font_unhilite = get_font(inactive_osd_font, &default_font,inst); /* load direct dimensions */ if ((!read_int(db, "menu.overlap.x", &theme->menu_overlap_x) && @@ -926,13 +927,15 @@ RrTheme* RrThemeNew(const RrInstance *inst, const gchar *name, theme->osd_hilite_label->texture[0].type = RR_TEXTURE_TEXT; theme->osd_hilite_label->texture[0].data.text.justify = RR_JUSTIFY_LEFT; - theme->osd_hilite_label->texture[0].data.text.font = theme->osd_font; + theme->osd_hilite_label->texture[0].data.text.font = + theme->osd_font_hilite; theme->osd_hilite_label->texture[0].data.text.color = theme->osd_text_active_color; theme->osd_unhilite_label->texture[0].type = RR_TEXTURE_TEXT; theme->osd_unhilite_label->texture[0].data.text.justify = RR_JUSTIFY_LEFT; - theme->osd_unhilite_label->texture[0].data.text.font = theme->osd_font; + theme->osd_unhilite_label->texture[0].data.text.font = + theme->osd_font_unhilite; theme->osd_unhilite_label->texture[0].data.text.color = theme->osd_text_inactive_color; @@ -1564,7 +1567,8 @@ void RrThemeFree(RrTheme *theme) RrFontClose(theme->win_font_unfocused); RrFontClose(theme->menu_title_font); RrFontClose(theme->menu_font); - RrFontClose(theme->osd_font); + RrFontClose(theme->osd_font_hilite); + RrFontClose(theme->osd_font_unhilite); RrAppearanceFree(theme->a_disabled_focused_max); RrAppearanceFree(theme->a_disabled_unfocused_max); diff --git a/render/theme.h b/render/theme.h index 06014cbb..3f9063e6 100644 --- a/render/theme.h +++ b/render/theme.h @@ -34,7 +34,8 @@ struct _RrTheme { RrFont *win_font_unfocused; RrFont *menu_title_font; RrFont *menu_font; - RrFont *osd_font; + RrFont *osd_font_hilite; + RrFont *osd_font_unhilite; /* style settings - geometry */ gint paddingx; @@ -257,7 +258,7 @@ RrTheme* RrThemeNew(const RrInstance *inst, const gchar *theme, gboolean allow_fallback, RrFont *active_window_font, RrFont *inactive_window_font, RrFont *menu_title_font, RrFont *menu_item_font, - RrFont *osd_font); + RrFont *active_osd_font, RrFont *inactive_osd_font); void RrThemeFree(RrTheme *theme); G_END_DECLS