-drawsetup(void) {
- /* style */
- dc.norm[ColBG] = getcolor(normbgcolor);
- dc.norm[ColFG] = getcolor(normfgcolor);
- dc.sel[ColBG] = getcolor(selbgcolor);
- dc.sel[ColFG] = getcolor(selfgcolor);
-
- /* pixmap */
- dc.drawable = XCreatePixmap(dpy, parent, mw, mh, DefaultDepth(dpy, screen));
- dc.gc = XCreateGC(dpy, parent, 0, NULL);
- XSetLineAttributes(dpy, dc.gc, 1, LineSolid, CapButt, JoinMiter);
- if(!dc.font.set)
- XSetFont(dpy, dc.gc, dc.font.xfont->fid);
+setupdraw(DC *dc, Window w) {
+ XWindowAttributes wa;
+
+ XGetWindowAttributes(dc->dpy, w, &wa);
+ dc->drawable = XCreatePixmap(dc->dpy, w, wa.width, wa.height,
+ DefaultDepth(dc->dpy, DefaultScreen(dc->dpy)));
+ dc->gc = XCreateGC(dc->dpy, w, 0, NULL);
+ XSetLineAttributes(dc->dpy, dc->gc, 1, LineSolid, CapButt, JoinMiter);
+ if(!dc->font.set)
+ XSetFont(dc->dpy, dc->gc, dc->font.xfont->fid);