READ_INT("border.width", theme->fbwidth, 0, 100, 1);
READ_INT("menu.border.width", theme->mbwidth, 0, 100, theme->fbwidth);
READ_INT("osd.border.width", theme->obwidth, 0, 100, theme->fbwidth);
+ READ_INT("undecorated.border.width", theme->ubwidth, 0, 100,
+ theme->fbwidth);
READ_INT("menu.separator.width", theme->menu_sep_width, 1, 100, 1);
- READ_INT("menu.separator.padding.width", theme->menu_sep_paddingx, 0, 100, 6);
- READ_INT("menu.separator.padding.height", theme->menu_sep_paddingy, 0, 100, 3);
+ READ_INT("menu.separator.padding.width", theme->menu_sep_paddingx,
+ 0, 100, 6);
+ READ_INT("menu.separator.padding.height", theme->menu_sep_paddingy,
+ 0, 100, 3);
READ_INT("window.client.padding.width", theme->cbwidthx, 0, 100,
theme->paddingx);
READ_INT("window.client.padding.height", theme->cbwidthy, 0, 100,
/* load colors */
READ_COLOR_("window.active.border.color", "border.color",
theme->frame_focused_border_color, RrColorNew(inst, 0, 0, 0));
-
+ /* undecorated focused border color inherits from frame focused border
+ color */
+ READ_COLOR("window.undecorated.active.border.color",
+ theme->frame_undecorated_focused_border_color,
+ RrColorCopy(theme->frame_focused_border_color));
/* title separator focused color inherits from focused border color */
READ_COLOR("window.active.title.separator.color",
theme->title_separator_focused_color,
theme->frame_unfocused_border_color,
RrColorCopy(theme->frame_focused_border_color));
+ /* undecorated unfocused border color inherits from frame unfocused border
+ color */
+ READ_COLOR("window.undecorated.inactive.border.color",
+ theme->frame_undecorated_unfocused_border_color,
+ RrColorCopy(theme->frame_unfocused_border_color));
+
/* title separator unfocused color inherits from unfocused border color */
READ_COLOR("window.inactive.title.separator.color",
theme->title_separator_unfocused_color,
"osd.label.text.color",
theme->osd_text_active_color, RrColorCopy(theme->title_focused_color));
- READ_COLOR("osd.inactive.label.text.color", theme->osd_text_inactive_color,
- RrColorNew(inst, 0xff, 0xff, 0xff));
+ READ_COLOR_("osd.inactive.label.text.color",
+ "osd.label.text.color",
+ theme->osd_text_inactive_color, RrColorCopy(theme->title_unfocused_color));
READ_COLOR("window.active.button.unpressed.image.color",
theme->titlebut_focused_unpressed_color,
/* hover */
READ_APPEARANCE_COPY("window.active.button.max.hover.bg",
theme->btn_max->a_hover_focused, TRUE,
- theme->btn_max->a_focused_unpressed);
+ a_hover_focused_tmp);
READ_APPEARANCE_COPY("window.inactive.button.max.hover.bg",
theme->btn_max->a_hover_unfocused, TRUE,
- theme->btn_max->a_unfocused_unpressed);
+ a_hover_unfocused_tmp);
/* toggled unpressed */
READ_APPEARANCE_("window.active.button.max.toggled.unpressed.bg",
"window.active.button.max.toggled.bg",
theme->btn_max->a_toggled_focused_unpressed, TRUE,
- theme->btn_max->a_focused_pressed);
+ a_toggled_focused_unpressed_tmp);
READ_APPEARANCE_("window.inactive.button.max.toggled.unpressed.bg",
"window.inactive.button.max.toggled.bg",
theme->btn_max->a_toggled_unfocused_unpressed, TRUE,
- theme->btn_max->a_unfocused_pressed);
+ a_toggled_unfocused_unpressed_tmp);
/* toggled pressed */
READ_APPEARANCE_COPY("window.active.button.max.toggled.pressed.bg",
theme->btn_max->a_toggled_focused_pressed, TRUE,
- theme->btn_max->a_focused_pressed);
+ a_toggled_focused_pressed_tmp);
READ_APPEARANCE_COPY("window.inactive.button.max.toggled.pressed.bg",
theme->btn_max->a_toggled_unfocused_pressed, TRUE,
- theme->btn_max->a_unfocused_pressed);
+ a_toggled_unfocused_pressed_tmp);
/* toggled hover */
READ_APPEARANCE_COPY("window.active.button.max.toggled.hover.bg",
theme->btn_max->a_toggled_hover_focused, TRUE,
- theme->btn_max->a_toggled_focused_unpressed);
+ a_toggled_hover_focused_tmp);
READ_APPEARANCE_COPY("window.inactive.button.max.toggled.hover.bg",
theme->btn_max->a_toggled_hover_unfocused, TRUE,
- theme->btn_max->a_toggled_unfocused_unpressed);
+ a_toggled_hover_unfocused_tmp);
/* close button */
read_button_colors(db, inst, theme, theme->btn_close, "close");
a_disabled_unfocused_tmp);
READ_APPEARANCE_COPY("window.active.button.close.hover.bg",
theme->btn_close->a_hover_focused, TRUE,
- theme->btn_close->a_focused_unpressed);
+ a_hover_focused_tmp);
READ_APPEARANCE_COPY("window.inactive.button.close.hover.bg",
theme->btn_close->a_hover_unfocused, TRUE,
- theme->btn_close->a_unfocused_unpressed);
+ a_hover_unfocused_tmp);
/* desk button */
read_button_colors(db, inst, theme, theme->btn_desk, "desk");
/* hover */
READ_APPEARANCE_COPY("window.active.button.desk.hover.bg",
theme->btn_desk->a_hover_focused, TRUE,
- theme->btn_desk->a_focused_unpressed);
+ a_hover_focused_tmp);
READ_APPEARANCE_COPY("window.inactive.button.desk.hover.bg",
theme->btn_desk->a_hover_unfocused, TRUE,
- theme->btn_desk->a_unfocused_unpressed);
+ a_hover_unfocused_tmp);
/* toggled unpressed */
READ_APPEARANCE_("window.active.button.desk.toggled.unpressed.bg",
"window.active.button.desk.toggled.bg",
theme->btn_desk->a_toggled_focused_unpressed, TRUE,
- theme->btn_desk->a_focused_pressed);
+ a_toggled_focused_unpressed_tmp);
READ_APPEARANCE_("window.inactive.button.desk.toggled.unpressed.bg",
"window.inactive.button.desk.toggled.bg",
theme->btn_desk->a_toggled_unfocused_unpressed, TRUE,
- theme->btn_desk->a_unfocused_pressed);
+ a_toggled_unfocused_unpressed_tmp);
/* toggled pressed */
READ_APPEARANCE_COPY("window.active.button.desk.toggled.pressed.bg",
theme->btn_desk->a_toggled_focused_pressed, TRUE,
- theme->btn_desk->a_focused_pressed);
+ a_toggled_focused_pressed_tmp);
READ_APPEARANCE_COPY("window.inactive.button.desk.toggled.pressed.bg",
theme->btn_desk->a_toggled_unfocused_pressed, TRUE,
- theme->btn_desk->a_unfocused_pressed);
+ a_toggled_unfocused_pressed_tmp);
/* toggled hover */
READ_APPEARANCE_COPY("window.active.button.desk.toggled.hover.bg",
theme->btn_desk->a_toggled_hover_focused, TRUE,
- theme->btn_desk->a_toggled_focused_unpressed);
+ a_toggled_hover_focused_tmp);
READ_APPEARANCE_COPY("window.inactive.button.desk.toggled.hover.bg",
theme->btn_desk->a_toggled_hover_unfocused, TRUE,
- theme->btn_desk->a_toggled_unfocused_unpressed);
+ a_toggled_hover_unfocused_tmp);
/* shade button */
read_button_colors(db, inst, theme, theme->btn_shade, "shade");
/* hover */
READ_APPEARANCE_COPY("window.active.button.shade.hover.bg",
theme->btn_shade->a_hover_focused, TRUE,
- theme->btn_shade->a_focused_unpressed);
+ a_hover_focused_tmp);
READ_APPEARANCE_COPY("window.inactive.button.shade.hover.bg",
theme->btn_shade->a_hover_unfocused, TRUE,
- theme->btn_shade->a_unfocused_unpressed);
+ a_hover_unfocused_tmp);
/* toggled unpressed */
READ_APPEARANCE_("window.active.button.shade.toggled.unpressed.bg",
"window.active.button.shade.toggled.bg",
theme->btn_shade->a_toggled_focused_unpressed, TRUE,
- theme->btn_shade->a_focused_pressed);
+ a_toggled_focused_unpressed_tmp);
READ_APPEARANCE_("window.inactive.button.shade.toggled.unpressed.bg",
"window.inactive.button.shade.toggled.bg",
theme->btn_shade->a_toggled_unfocused_unpressed, TRUE,
- theme->btn_shade->a_unfocused_pressed);
+ a_toggled_unfocused_unpressed_tmp);
/* toggled pressed */
READ_APPEARANCE_COPY("window.active.button.shade.toggled.pressed.bg",
theme->btn_shade->a_toggled_focused_pressed, TRUE,
- theme->btn_shade->a_focused_pressed);
+ a_toggled_focused_pressed_tmp);
READ_APPEARANCE_COPY("window.inactive.button.shade.toggled.pressed.bg",
theme->btn_shade->a_toggled_unfocused_pressed, TRUE,
- theme->btn_shade->a_unfocused_pressed);
+ a_toggled_unfocused_pressed_tmp);
/* toggled hover */
READ_APPEARANCE_COPY("window.active.button.shade.toggled.hover.bg",
theme->btn_shade->a_toggled_hover_focused, TRUE,
- theme->btn_shade->a_toggled_focused_unpressed);
+ a_toggled_hover_focused_tmp);
READ_APPEARANCE_COPY("window.inactive.button.shade.toggled.hover.bg",
theme->btn_shade->a_toggled_hover_unfocused, TRUE,
- theme->btn_shade->a_toggled_unfocused_unpressed);
+ a_toggled_hover_unfocused_tmp);
/* iconify button */
read_button_colors(db, inst, theme, theme->btn_iconify, "iconify");
a_disabled_unfocused_tmp);
READ_APPEARANCE_COPY("window.active.button.iconify.hover.bg",
theme->btn_iconify->a_hover_focused, TRUE,
- theme->btn_iconify->a_focused_unpressed);
+ a_hover_focused_tmp);
READ_APPEARANCE_COPY("window.inactive.button.iconify.hover.bg",
theme->btn_iconify->a_hover_unfocused, TRUE,
- theme->btn_iconify->a_unfocused_unpressed);
+ a_hover_unfocused_tmp);
/* osd buttons */
READ_APPEARANCE_COPY("osd.button.unpressed.bg", theme->osd_unpressed_button, TRUE, a_focused_unpressed_tmp);
RrColorFree(theme->menu_border_color);
RrColorFree(theme->osd_border_color);
RrColorFree(theme->frame_focused_border_color);
+ RrColorFree(theme->frame_undecorated_focused_border_color);
RrColorFree(theme->frame_unfocused_border_color);
+ RrColorFree(theme->frame_undecorated_unfocused_border_color);
RrColorFree(theme->title_separator_focused_color);
RrColorFree(theme->title_separator_unfocused_color);
RrColorFree(theme->cb_unfocused_color);
if (XrmGetResource(db, rname, rclass, &rettype, &retvalue) &&
retvalue.addr != NULL) {
+ g_strstrip(retvalue.addr);
*value = retvalue.addr;
ret = TRUE;
}
if (XrmGetResource(db, rname, rclass, &rettype, &retvalue) &&
retvalue.addr != NULL) {
- RrColor *c = RrColorParse(inst, retvalue.addr);
+ RrColor *c;
+
+ /* retvalue.addr is inside the xrdb database so we can't destroy it
+ but we can edit it in place, as g_strstrip does. */
+ g_strstrip(retvalue.addr);
+ c = RrColorParse(inst, retvalue.addr);
if (c != NULL) {
*value = c;
ret = TRUE;