- if (self->client->decorations & Decor_Titlebar) {
- Appearance *t, *l, *m, *n, *i, *d, *s, *c;
-
- t = (client_focused(self->client) ?
- self->a_focused_title : self->a_unfocused_title);
- l = (client_focused(self->client) ?
- self->a_focused_label : self->a_unfocused_label);
- m = (client_focused(self->client) ?
- (self->client->max_vert || self->client->max_horz ?
- theme_a_focused_pressed_set_max :
- (self->max_press ?
- theme_a_focused_pressed_max : theme_a_focused_unpressed_max)) :
- (self->client->max_vert || self->client->max_horz ?
- theme_a_unfocused_pressed_set_max :
- (self->max_press ?
- theme_a_unfocused_pressed_max :
- theme_a_unfocused_unpressed_max)));
- n = self->a_icon;
- i = (client_focused(self->client) ?
- (self->iconify_press ?
- theme_a_focused_pressed_iconify :
- theme_a_focused_unpressed_iconify) :
- (self->iconify_press ?
- theme_a_unfocused_pressed_iconify :
- theme_a_unfocused_unpressed_iconify));
- d = (client_focused(self->client) ?
- (self->client->desktop == DESKTOP_ALL ?
- theme_a_focused_pressed_set_desk :
- (self->desk_press ?
- theme_a_focused_pressed_desk :
- theme_a_focused_unpressed_desk)) :
- (self->client->desktop == DESKTOP_ALL ?
- theme_a_unfocused_pressed_set_desk :
- (self->desk_press ?
- theme_a_unfocused_pressed_desk :
- theme_a_unfocused_unpressed_desk)));
- s = (client_focused(self->client) ?
- (self->client->shaded ?
- theme_a_focused_pressed_set_shade :
- (self->shade_press ?
- theme_a_focused_pressed_shade :
- theme_a_focused_unpressed_shade)) :
- (self->client->shaded ?
- theme_a_unfocused_pressed_set_shade :
- (self->shade_press ?
- theme_a_unfocused_pressed_shade :
- theme_a_unfocused_unpressed_shade)));
- c = (client_focused(self->client) ?
- (self->close_press ?
- theme_a_focused_pressed_close :
- theme_a_focused_unpressed_close) :
- (self->close_press ?
- theme_a_unfocused_pressed_close :
- theme_a_unfocused_unpressed_close));
-
- paint(self->title, t);
+ if (self->decorations & OB_FRAME_DECOR_TITLEBAR) {
+ RrAppearance *t, *l, *m, *n, *i, *d, *s, *c, *clear;
+ if (self->focused) {
+ t = ob_rr_theme->a_focused_title;
+ l = ob_rr_theme->a_focused_label;
+ m = (!(self->decorations & OB_FRAME_DECOR_MAXIMIZE) ?
+ ob_rr_theme->a_disabled_focused_max :
+ (self->client->max_vert || self->client->max_horz ?
+ (self->max_press ?
+ ob_rr_theme->a_toggled_focused_pressed_max :
+ (self->max_hover ?
+ ob_rr_theme->a_toggled_hover_focused_max :
+ ob_rr_theme->a_toggled_focused_unpressed_max)) :
+ (self->max_press ?
+ ob_rr_theme->a_focused_pressed_max :
+ (self->max_hover ?
+ ob_rr_theme->a_hover_focused_max :
+ ob_rr_theme->a_focused_unpressed_max))));
+ n = ob_rr_theme->a_icon;
+ i = (!(self->decorations & OB_FRAME_DECOR_ICONIFY) ?
+ ob_rr_theme->a_disabled_focused_iconify :
+ (self->iconify_press ?
+ ob_rr_theme->a_focused_pressed_iconify :
+ (self->iconify_hover ?
+ ob_rr_theme->a_hover_focused_iconify :
+ ob_rr_theme->a_focused_unpressed_iconify)));
+ d = (!(self->decorations & OB_FRAME_DECOR_ALLDESKTOPS) ?
+ ob_rr_theme->a_disabled_focused_desk :
+ (self->client->desktop == DESKTOP_ALL ?
+ (self->desk_press ?
+ ob_rr_theme->a_toggled_focused_pressed_desk :
+ (self->desk_hover ?
+ ob_rr_theme->a_toggled_hover_focused_desk :
+ ob_rr_theme->a_toggled_focused_unpressed_desk)) :
+ (self->desk_press ?
+ ob_rr_theme->a_focused_pressed_desk :
+ (self->desk_hover ?
+ ob_rr_theme->a_hover_focused_desk :
+ ob_rr_theme->a_focused_unpressed_desk))));
+ s = (!(self->decorations & OB_FRAME_DECOR_SHADE) ?
+ ob_rr_theme->a_disabled_focused_shade :
+ (self->client->shaded ?
+ (self->shade_press ?
+ ob_rr_theme->a_toggled_focused_pressed_shade :
+ (self->shade_hover ?
+ ob_rr_theme->a_toggled_hover_focused_shade :
+ ob_rr_theme->a_toggled_focused_unpressed_shade)) :
+ (self->shade_press ?
+ ob_rr_theme->a_focused_pressed_shade :
+ (self->shade_hover ?
+ ob_rr_theme->a_hover_focused_shade :
+ ob_rr_theme->a_focused_unpressed_shade))));
+ c = (!(self->decorations & OB_FRAME_DECOR_CLOSE) ?
+ ob_rr_theme->a_disabled_focused_close :
+ (self->close_press ?
+ ob_rr_theme->a_focused_pressed_close :
+ (self->close_hover ?
+ ob_rr_theme->a_hover_focused_close :
+ ob_rr_theme->a_focused_unpressed_close)));
+ } else {
+ t = ob_rr_theme->a_unfocused_title;
+ l = ob_rr_theme->a_unfocused_label;
+ m = (!(self->decorations & OB_FRAME_DECOR_MAXIMIZE) ?
+ ob_rr_theme->a_disabled_unfocused_max :
+ (self->client->max_vert || self->client->max_horz ?
+ (self->max_press ?
+ ob_rr_theme->a_toggled_unfocused_pressed_max :
+ (self->max_hover ?
+ ob_rr_theme->a_toggled_hover_unfocused_max :
+ ob_rr_theme->a_toggled_unfocused_unpressed_max)) :
+ (self->max_press ?
+ ob_rr_theme->a_unfocused_pressed_max :
+ (self->max_hover ?
+ ob_rr_theme->a_hover_unfocused_max :
+ ob_rr_theme->a_unfocused_unpressed_max))));
+ n = ob_rr_theme->a_icon;
+ i = (!(self->decorations & OB_FRAME_DECOR_ICONIFY) ?
+ ob_rr_theme->a_disabled_unfocused_iconify :
+ (self->iconify_press ?
+ ob_rr_theme->a_unfocused_pressed_iconify :
+ (self->iconify_hover ?
+ ob_rr_theme->a_hover_unfocused_iconify :
+ ob_rr_theme->a_unfocused_unpressed_iconify)));
+ d = (!(self->decorations & OB_FRAME_DECOR_ALLDESKTOPS) ?
+ ob_rr_theme->a_disabled_unfocused_desk :
+ (self->client->desktop == DESKTOP_ALL ?
+ (self->desk_press ?
+ ob_rr_theme->a_toggled_unfocused_pressed_desk :
+ (self->desk_hover ?
+ ob_rr_theme->a_toggled_hover_unfocused_desk :
+ ob_rr_theme->a_toggled_unfocused_unpressed_desk)) :
+ (self->desk_press ?
+ ob_rr_theme->a_unfocused_pressed_desk :
+ (self->desk_hover ?
+ ob_rr_theme->a_hover_unfocused_desk :
+ ob_rr_theme->a_unfocused_unpressed_desk))));
+ s = (!(self->decorations & OB_FRAME_DECOR_SHADE) ?
+ ob_rr_theme->a_disabled_unfocused_shade :
+ (self->client->shaded ?
+ (self->shade_press ?
+ ob_rr_theme->a_toggled_unfocused_pressed_shade :
+ (self->shade_hover ?
+ ob_rr_theme->a_toggled_hover_unfocused_shade :
+ ob_rr_theme->a_toggled_unfocused_unpressed_shade)) :
+ (self->shade_press ?
+ ob_rr_theme->a_unfocused_pressed_shade :
+ (self->shade_hover ?
+ ob_rr_theme->a_hover_unfocused_shade :
+ ob_rr_theme->a_unfocused_unpressed_shade))));
+ c = (!(self->decorations & OB_FRAME_DECOR_CLOSE) ?
+ ob_rr_theme->a_disabled_unfocused_close :
+ (self->close_press ?
+ ob_rr_theme->a_unfocused_pressed_close :
+ (self->close_hover ?
+ ob_rr_theme->a_hover_unfocused_close :
+ ob_rr_theme->a_unfocused_unpressed_close)));
+ }
+ clear = ob_rr_theme->a_clear;
+
+ RrPaint(t, self->title, self->width, ob_rr_theme->title_height);
+
+ clear->surface.parent = t;
+ clear->surface.parenty = 0;
+
+ clear->surface.parentx = ob_rr_theme->grip_width;
+
+ RrPaint(clear, self->topresize,
+ self->width - ob_rr_theme->grip_width * 2,
+ ob_rr_theme->paddingy + 1);
+
+ clear->surface.parentx = 0;
+
+ if (ob_rr_theme->grip_width > 0)
+ RrPaint(clear, self->tltresize,
+ ob_rr_theme->grip_width, ob_rr_theme->paddingy + 1);
+ if (ob_rr_theme->title_height > 0)
+ RrPaint(clear, self->tllresize,
+ ob_rr_theme->paddingx + 1, ob_rr_theme->title_height);
+
+ clear->surface.parentx = self->width - ob_rr_theme->grip_width;
+
+ if (ob_rr_theme->grip_width > 0)
+ RrPaint(clear, self->trtresize,
+ ob_rr_theme->grip_width, ob_rr_theme->paddingy + 1);
+
+ clear->surface.parentx = self->width - (ob_rr_theme->paddingx + 1);
+
+ if (ob_rr_theme->title_height > 0)
+ RrPaint(clear, self->trrresize,
+ ob_rr_theme->paddingx + 1, ob_rr_theme->title_height);