if (real_transparency) {
clear_pixmap(p->area.pix.pmap, 0, 0, p->area.width, p->area.height);
- return; // no need for background pixmap, a transparent one is enough
}
-
- get_root_pixmap();
-
- // copy background (server.root_pmap) in panel.area.pix.pmap
- Window dummy;
- int x, y;
- XTranslateCoordinates(server.dsp, p->main_win, server.root_win, 0, 0, &x, &y, &dummy);
- XSetTSOrigin(server.dsp, server.gc, -x, -y) ;
- XFillRectangle(server.dsp, p->area.pix.pmap, server.gc, 0, 0, p->area.width, p->area.height);
+ else {
+ get_root_pixmap();
+ // copy background (server.root_pmap) in panel.area.pix.pmap
+ Window dummy;
+ int x, y;
+ XTranslateCoordinates(server.dsp, p->main_win, server.root_win, 0, 0, &x, &y, &dummy);
+ XSetTSOrigin(server.dsp, server.gc, -x, -y) ;
+ XFillRectangle(server.dsp, p->area.pix.pmap, server.gc, 0, 0, p->area.width, p->area.height);
+ }
// draw background panel
cairo_surface_t *cs;
traywin = (TrayWindow*)l->data;
if (traywin->hide) continue;
if (real_transparency) systray_render_icons(traywin);
- else XClearArea(server.dsp, traywin->id, 0, 0, traywin->width, traywin->height, False);
+ else XClearArea(server.dsp, traywin->id, 0, 0, traywin->width, traywin->height, True);
}
if (real_transparency)
XFlush(server.dsp);
// add layer of root pixmap (or clear pixmap if real_transparency==true)
if (real_transparency)
clear_pixmap(*pmap, 0 ,0, a->width, a->height);
- else
- XCopyArea (server.dsp, ((Panel *)a->panel)->temp_pmap, *pmap, server.gc, a->posx, a->posy, a->width, a->height, 0, 0);
+ XCopyArea (server.dsp, ((Panel *)a->panel)->temp_pmap, *pmap, server.gc, a->posx, a->posy, a->width, a->height, 0, 0);
cairo_surface_t *cs;
cairo_t *c;