aewl
diff event.c @ 491:12395ef46d97
added configure(), but this doesn't really fix those frking broken SDL apps
author | arg@mmvi |
---|---|
date | Tue, 26 Sep 2006 07:40:19 +0200 |
parents | 303d3384720e |
children | 5df494262dfd |
line diff
1.1 --- a/event.c Mon Sep 25 21:28:00 2006 +0200 1.2 +++ b/event.c Tue Sep 26 07:40:19 2006 +0200 1.3 @@ -1,3 +1,4 @@ 1.4 +#include <stdio.h> 1.5 /* 1.6 * (C)opyright MMVI Anselm R. Garbe <garbeam at gmail dot com> 1.7 * See LICENSE file for license details. 1.8 @@ -38,6 +39,7 @@ 1.9 XMaskEvent(dpy, MOUSEMASK | ExposureMask, &ev); 1.10 switch (ev.type) { 1.11 case ButtonRelease: 1.12 + resize(c, True, TopLeft); 1.13 XUngrabPointer(dpy, CurrentTime); 1.14 return; 1.15 case Expose: 1.16 @@ -71,6 +73,7 @@ 1.17 XMaskEvent(dpy, MOUSEMASK | ExposureMask, &ev); 1.18 switch(ev.type) { 1.19 case ButtonRelease: 1.20 + resize(c, True, TopLeft); 1.21 XUngrabPointer(dpy, CurrentTime); 1.22 return; 1.23 case Expose: 1.24 @@ -151,6 +154,7 @@ 1.25 XEvent synev; 1.26 XWindowChanges wc; 1.27 1.28 + fputs("configurerequest\n", stderr); 1.29 if((c = getclient(ev->window))) { 1.30 c->ismax = False; 1.31 gravitate(c, True); 1.32 @@ -172,19 +176,8 @@ 1.33 newmask = ev->value_mask & (~(CWSibling | CWStackMode | CWBorderWidth)); 1.34 if(newmask) 1.35 XConfigureWindow(dpy, c->win, newmask, &wc); 1.36 - else { 1.37 - synev.type = ConfigureNotify; 1.38 - synev.xconfigure.display = dpy; 1.39 - synev.xconfigure.event = c->win; 1.40 - synev.xconfigure.window = c->win; 1.41 - synev.xconfigure.x = c->x; 1.42 - synev.xconfigure.y = c->y; 1.43 - synev.xconfigure.width = c->w; 1.44 - synev.xconfigure.height = c->h; 1.45 - synev.xconfigure.border_width = c->border; 1.46 - synev.xconfigure.above = None; 1.47 - XSendEvent(dpy, c->win, True, NoEventMask, &synev); 1.48 - } 1.49 + else 1.50 + configure(c); 1.51 XSync(dpy, False); 1.52 if(c->isfloat) 1.53 resize(c, False, TopLeft); 1.54 @@ -218,6 +211,7 @@ 1.55 Client *c; 1.56 XCrossingEvent *ev = &e->xcrossing; 1.57 1.58 + fputs("enternotify\n", stderr); 1.59 if(ev->mode != NotifyNormal || ev->detail == NotifyInferior) 1.60 return; 1.61 1.62 @@ -305,6 +299,7 @@ 1.63 Window trans; 1.64 XPropertyEvent *ev = &e->xproperty; 1.65 1.66 + fputs("propertynotify\n", stderr); 1.67 if(ev->state == PropertyDelete) 1.68 return; /* ignore */ 1.69