- monitors[i].dc.drawable = XCreatePixmap(dpy, root, monitors[i].sw, bh, DefaultDepth(dpy, screen));
- g = XCreateGC(dpy, root, 0, 0);
- monitors[i].dc.gc = XCreateGC(dpy, root, 0, 0);
- XSetLineAttributes(dpy, monitors[i].dc.gc, 1, LineSolid, CapButt, JoinMiter);
- if(!monitors[i].dc.font.set)
- XSetFont(dpy, monitors[i].dc.gc, monitors[i].dc.font.xfont->fid);
+ m->dc.drawable = XCreatePixmap(dpy, root, m->sw, bh, DefaultDepth(dpy, m->screen));
+ m->dc.gc = XCreateGC(dpy, root, 0, 0);
+ XSetLineAttributes(dpy, m->dc.gc, 1, LineSolid, CapButt, JoinMiter);
+ if(!m->dc.font.set)
+ XSetFont(dpy, m->dc.gc, m->dc.font.xfont->fid);
+
+ /* EWMH support per monitor */
+ XChangeProperty(dpy, root, netatom[NetSupported], XA_ATOM, 32,
+ PropModeReplace, (unsigned char *) netatom, NetLast);
+
+ /* select for events */
+ wa.event_mask = SubstructureRedirectMask | SubstructureNotifyMask
+ | EnterWindowMask | LeaveWindowMask | StructureNotifyMask;
+ XChangeWindowAttributes(dpy, root, CWEventMask | CWCursor, &wa);
+ XSelectInput(dpy, root, wa.event_mask);