diff -r 335c279dbff6 dwm.c --- a/dwm.c Tue Jun 14 22:28:16 2011 +0100 +++ b/dwm.c Wed Aug 10 15:49:25 2011 +0100 @@ -1092,12 +1092,15 @@ Client *c, *t = NULL; Window trans = None; XWindowChanges wc; + XClassHint ch = { 0 }; if(!(c = calloc(1, sizeof(Client)))) die("fatal: could not malloc() %u bytes\n", sizeof(Client)); c->win = w; updatetitle(c); - if(XGetTransientForHint(dpy, w, &trans) && (t = wintoclient(trans))) { + XGetClassHint(dpy, w, &ch); + if(XGetTransientForHint(dpy, w, &trans) && (t = wintoclient(trans)) && (!ch.res_class || !ch.res_name + || strcmp(ch.res_class, "OpenOffice.org 3.2") || strcmp(ch.res_name, "VCLSalFrame"))) { c->mon = t->mon; c->tags = t->tags; }