diff -r 2ec9cead84a7 -r 126e78129f1d event.c --- a/event.c Tue Aug 29 17:11:37 2006 +0200 +++ b/event.c Tue Aug 29 17:31:55 2006 +0200 @@ -150,6 +150,7 @@ static void configurerequest(XEvent *e) { + int ox, oy, ow, oh; unsigned long newmask; Client *c; XConfigureRequestEvent *ev = &e->xconfigurerequest; @@ -157,6 +158,10 @@ XWindowChanges wc; if((c = getclient(ev->window))) { + ox = c->x; + oy = c->y; + ow = c->w; + oh = c->h; gravitate(c, True); if(ev->value_mask & CWX) c->x = ev->x; @@ -191,8 +196,13 @@ XSendEvent(dpy, c->win, True, NoEventMask, &synev); } XSync(dpy, False); - if(c->isfloat) + if(c->isfloat || c->ismax) { resize(c, False, TopLeft); + c->x = ox; + c->y = oy; + c->w = ow; + c->h = oh; + } else arrange(NULL); }