]> Dogcows Code - chaz/openbox/blobdiff - openbox/framerender.c
don't use the title separator color for shaded windows
[chaz/openbox] / openbox / framerender.c
index 3a5267a779e1c2adff17f17e7e30a207987b3fc5..b5cdf174d157b7ada2751303e40849c9e9313358 100644 (file)
@@ -41,6 +41,8 @@ void framerender_frame(ObFrame *self)
               RrColorPixel(ob_rr_theme->cb_focused_color) :
               RrColorPixel(ob_rr_theme->cb_unfocused_color));
 
+        XSetWindowBackground(ob_display, self->backback, px);
+        XClearWindow(ob_display, self->backback);
         XSetWindowBackground(ob_display, self->innerleft, px);
         XClearWindow(ob_display, self->innerleft);
         XSetWindowBackground(ob_display, self->innertop, px);
@@ -69,8 +71,6 @@ void framerender_frame(ObFrame *self)
         XClearWindow(ob_display, self->titletopright);
         XSetWindowBackground(ob_display, self->titleright, px);
         XClearWindow(ob_display, self->titleright);
-        XSetWindowBackground(ob_display, self->titlebottom, px);
-        XClearWindow(ob_display, self->titlebottom);
 
         XSetWindowBackground(ob_display, self->handleleft, px);
         XClearWindow(ob_display, self->handleleft);
@@ -94,6 +94,15 @@ void framerender_frame(ObFrame *self)
         XClearWindow(ob_display, self->rgriptop);
         XSetWindowBackground(ob_display, self->rgripbottom, px);
         XClearWindow(ob_display, self->rgripbottom);
+
+        /* don't use the separator color for shaded windows */
+        if (!self->client->shaded)
+            px = (self->focused ?
+                  RrColorPixel(ob_rr_theme->title_separator_focused_color) :
+                  RrColorPixel(ob_rr_theme->title_separator_unfocused_color));
+
+        XSetWindowBackground(ob_display, self->titlebottom, px);
+        XClearWindow(ob_display, self->titlebottom);
     }
 
     if (self->decorations & OB_FRAME_DECOR_TITLEBAR) {
@@ -342,6 +351,7 @@ static void framerender_icon(ObFrame *self, RrAppearance *a)
         a->texture[0].type = RR_TEXTURE_RGBA;
         a->texture[0].data.rgba.width = icon->width;
         a->texture[0].data.rgba.height = icon->height;
+        a->texture[0].data.rgba.alpha = 0xff;
         a->texture[0].data.rgba.data = icon->data;
     } else
         a->texture[0].type = RR_TEXTURE_NONE;
This page took 0.020835 seconds and 4 git commands to generate.