X-Git-Url: https://jasonwoof.com/gitweb/?p=dwm.git;a=blobdiff_plain;f=event.c;h=d0716fa842466b0f419b63de4d7f1bf76c451afb;hp=9897640fb766d1d84ca9ea22ccd5c4058d7197c8;hb=2d81b78b853565a3e34a8a9190e2362a6fdde739;hpb=52250e7c1e54d0ec8cd7d4667ba34137fcfef908 diff --git a/event.c b/event.c index 9897640..d0716fa 100644 --- a/event.c +++ b/event.c @@ -16,7 +16,7 @@ typedef struct { KEYS -#define CLEANMASK(mask) (mask & ~(numlockmask | LockMask)) +#define CLEANMASK(mask) (mask & ~(numlockmask | LockMask)) #define MOUSEMASK (BUTTONMASK | PointerMotionMask) static Client * @@ -138,12 +138,8 @@ buttonpress(XEvent *e) { return; } } - if(ev->x < x + blw) - switch(ev->button) { - case Button1: - setlayout(NULL); - break; - } + if((ev->x < x + blw) && ev->button == Button1) + setlayout(NULL); } else if((c = getclient(ev->window))) { focus(c); @@ -301,8 +297,7 @@ maprequest(XEvent *e) { if(!XGetWindowAttributes(dpy, ev->window, &wa)) return; - fprintf(stderr, "does the window suck? %s\n", wa.map_state == IsViewable ? "no" : "yes"); - if(wa.override_redirect || wa.map_state != IsViewable) + if(wa.override_redirect) return; if(!getclient(ev->window)) manage(ev->window, &wa); @@ -341,8 +336,10 @@ unmapnotify(XEvent *e) { Client *c; XUnmapEvent *ev = &e->xunmap; - if((c = getclient(ev->window))) - unmanage(c); + if((c = getclient(ev->window)) && (ev->event == root)) { + if(ev->send_event || c->unmapped-- == 0) + unmanage(c); + } } /* extern */