X-Git-Url: https://git.brokenzipper.com/gitweb?a=blobdiff_plain;f=src%2FToolbar.cc;h=587d3fd430269c444c93dc39010347368c4fdb75;hb=9af642d29918e8b36d7f1fd17e4c771662d4fe97;hp=8c2325b5c58c7da014b097482f5e270e43d12232;hpb=c2d992a35c11b8212bf390528d9828a815e8b5fd;p=chaz%2Fopenbox diff --git a/src/Toolbar.cc b/src/Toolbar.cc index 8c2325b5..587d3fd4 100644 --- a/src/Toolbar.cc +++ b/src/Toolbar.cc @@ -581,6 +581,11 @@ void Toolbar::checkClock(bool redraw, bool date) { int pos = frame.bevel_w * 2; // this is modified by doJustify() style->doJustify(t, pos, frame.clock_w, frame.bevel_w * 4); + +#ifdef XFT + XClearWindow(display, frame.clock); +#endif // XFT + style->font->drawString(frame.clock, pos, 1, style->c_text, t); } } @@ -593,6 +598,10 @@ void Toolbar::redrawWindowLabel(bool redraw) { return; } +#ifdef XFT + redraw = true; +#endif // XFT + if (redraw) XClearWindow(display, frame.window_label); @@ -610,6 +619,10 @@ void Toolbar::redrawWindowLabel(bool redraw) { void Toolbar::redrawWorkspaceLabel(bool redraw) { const string& name = screen->getCurrentWorkspace()->getName(); +#ifdef XFT + redraw = true; +#endif // XFT + if (redraw) XClearWindow(display, frame.workspace_label); @@ -633,16 +646,8 @@ void Toolbar::drawArrow(Drawable surface, bool left) const { if (left) { - if (style->left_button.mask == None) { - pts[0].x = hw - bullet_size; - pts[0].y = hh; - pts[1].x = 2 * bullet_size; - pts[1].y = bullet_size; - pts[2].x = 0; - pts[2].y = -(2 * bullet_size); - XFillPolygon(display, surface, pen.gc(), pts, 3, Convex, - CoordModePrevious); - } else { +#ifdef BITMAPBUTTONS + if (style->left_button.mask != None) { XSetClipMask(blackbox->getXDisplay(), pen.gc(), style->left_button.mask); XSetClipOrigin(blackbox->getXDisplay(), pen.gc(), (frame.button_w - style->left_button.w)/2, @@ -651,23 +656,26 @@ void Toolbar::drawArrow(Drawable surface, bool left) const { XFillRectangle(blackbox->getXDisplay(), surface, pen.gc(), (frame.button_w - style->left_button.w)/2, (frame.button_w - style->left_button.h)/2, - (frame.button_w + style->left_button.w)/2, - (frame.button_w + style->left_button.h)/2); + style->left_button.w, style->left_button.h); XSetClipMask(blackbox->getXDisplay(), pen.gc(), None); XSetClipOrigin(blackbox->getXDisplay(), pen.gc(), 0, 0); - } - } else { - if (style->right_button.mask == None) { + } else { +#endif // BITMAPBUTTONS pts[0].x = hw - bullet_size; - pts[0].y = hh - bullet_size; - pts[1].x = (2 * bullet_size); - pts[1].y = bullet_size; - pts[2].x = -(2 * bullet_size); - pts[2].y = bullet_size; + pts[0].y = hh; + pts[1].x = 2 * bullet_size; + pts[1].y = bullet_size; + pts[2].x = 0; + pts[2].y = -(2 * bullet_size); XFillPolygon(display, surface, pen.gc(), pts, 3, Convex, CoordModePrevious); - } else { +#ifdef BITMAPBUTTONS + } +#endif // BITMAPBUTTONS + } else { +#ifdef BITMAPBUTTONS + if (style->right_button.mask != None) { XSetClipMask(blackbox->getXDisplay(), pen.gc(), style->right_button.mask); XSetClipOrigin(blackbox->getXDisplay(), pen.gc(), @@ -682,7 +690,19 @@ void Toolbar::drawArrow(Drawable surface, bool left) const { XSetClipMask(blackbox->getXDisplay(), pen.gc(), None); XSetClipOrigin(blackbox->getXDisplay(), pen.gc(), 0, 0); + } else { +#endif // BITMAPBUTTONS + pts[0].x = hw - bullet_size; + pts[0].y = hh - bullet_size; + pts[1].x = (2 * bullet_size); + pts[1].y = bullet_size; + pts[2].x = -(2 * bullet_size); + pts[2].y = bullet_size; + XFillPolygon(display, surface, pen.gc(), pts, 3, Convex, + CoordModePrevious); +#ifdef BITMAPBUTTONS } +#endif } }