aboutsummaryrefslogtreecommitdiffstats
path: root/event.c
diff options
context:
space:
mode:
Diffstat (limited to 'event.c')
-rw-r--r--event.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/event.c b/event.c
index c7a0b15..0f74478 100644
--- a/event.c
+++ b/event.c
@@ -150,6 +150,7 @@ buttonpress(XEvent *e)
static void
configurerequest(XEvent *e)
{
+ int ox, oy, ow, oh;
unsigned long newmask;
Client *c;
XConfigureRequestEvent *ev = &e->xconfigurerequest;
@@ -157,6 +158,10 @@ configurerequest(XEvent *e)
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 @@ configurerequest(XEvent *e)
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);
}
remember that computers suck.