-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);