From 6dc8e6e3e4ec51644f7d54830ba817277ad321aa Mon Sep 17 00:00:00 2001 From: Ivan Kanakarakis Date: Thu, 23 Aug 2012 23:09:47 +0300 Subject: fix for misbehaving apps - tile on configure request --- monsterwm.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'monsterwm.c') diff --git a/monsterwm.c b/monsterwm.c index 8e99fc4..0c68845 100644 --- a/monsterwm.c +++ b/monsterwm.c @@ -362,16 +362,16 @@ void clientmessage(XEvent *e) { * some windows implement window manager functions themselves. * that is windows explicitly steal focus, or manage subwindows, * or move windows around w/o the window manager's help, etc.. - * to disallow this behavior, one should 'tile()' the desktop - * from which the configure request came from. - * however we skip this, and let such apps (ie Chromium) do their thing. - * to reset the window just retile the desktop. + * to disallow this behavior, we 'tile()' the desktop to which + * the window that sent the configure request belongs. */ void configurerequest(XEvent *e) { XConfigureRequestEvent *ev = &e->xconfigurerequest; XWindowChanges wc = { ev->x, ev->y, ev->width, ev->height, ev->border_width, ev->above, ev->detail }; XConfigureWindow(dis, ev->window, ev->value_mask, &wc); XSync(dis, False); + Desktop *d = NULL; Client *c = NULL; + if (wintoclient(ev->window, &c, &d)) tile(d); } /** -- cgit v1.3.1