Hey, I've recently been looking into dwm's window manager hints support. I've just finished looking through all the ICCCM properties (next up EWMH), and have found only one which dwm ought to support, but doesn't: the WM_NORMAL_HINTS USPosition and USSize fields.
Basically these two fields state that the client's geometry has been chosen specifically by the user, and the window manager ought to respect that. But we don't, we just tile the window anyway. The traditional X utilities all set this field when the user passes them the '-geom' (or similar) flag, including xterm, rxvt, and so on. I've attached a patch which adds support for these fields in updatesizehints(). Thanks, cls
diff -r 335c279dbff6 dwm.c --- a/dwm.c Tue Jun 14 22:28:16 2011 +0100 +++ b/dwm.c Tue Aug 09 03:07:52 2011 +0100 @@ -1882,6 +1882,8 @@ if(!XGetWMNormalHints(dpy, c->win, &size, &msize)) /* size is uninitialized, ensure that size.flags aren't used */ size.flags = PSize; + if(size.flags & (USPosition|USSize)) + c->isfloating = True; if(size.flags & PBaseSize) { c->basew = size.base_width; c->baseh = size.base_height;