pass mouse clicks through to windows properly
Iris Lightshard nilix@nilfm.cc
PGP Signature
-----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEkFh6dA+k/6CXFXU4O3+8IhROY5gFAmJAljoACgkQO3+8IhRO Y5g9bQ//aIRjVi9BHo2RNb5HfUYiU4Ln7Qp8sVMVc5NXJ88nbVeiVuhWGGEPRatI x//h0GGold0D0KygJO3aF6rreWDKTb6ThcGBiDSUpf3lBGNlmWuEI92aASRNYlYc 8iAVf/nmV0kkQZfnJUcVRtzYvOWSadrir+JHAcMfkWq8ZwBHiZtmWkarhPRpYVpH BVlvNB0UNCnAJEak3aN654IN3DkmkH3mUa28oLJpFUKyqfzmOGLbDgCzWHuarDTc OeCGFISWD3wCmqk8FR1NLkhzVZvxXaR1BXrfHiAVEIuTZHX0oSB714HCVlZBcxRt vfWZe6egZ/iM4NbWQm//ap6LKTGFWclaJKb8KzMT93X8JS8kP7UsuPlwKONF2CC8 R1p5JaMKCOjcajpPcLWB6vhvV6YuRq2GjN2ZTyicInedqJizRUCU7yQ2YdpiOVhg Jg5OcO0p18AlRCOQ4edHlLBlIQaBt+Ychkdl/jsnOzq78yfNT4360+fWwrsg20Ns PQsapHBXbrLy8a9BMkDsCvjHodjFSe10sHJnJY35XTVClvzYxyi/q/qSdz7VMbRU SpZCjiLlHsecdZMRGYHdylTLQYrIi/J5wGHoqs0A+cHiKU4mXQ+fLOa6lyAdysDi Po5hjV+Erwf0HI5eMp392lnxj0aSgOSq6556Sj29BtREG5mLp8c= =Un18 -----END PGP SIGNATURE-----
M
event.c
→
event.c
@@ -62,8 +62,10 @@ keyrelease(&ev.xkey);
break; case ButtonPress: button(&ev.xbutton); + XAllowEvents(dpy, ReplayPointer, ev.xbutton.time); break; case ButtonRelease: + XAllowEvents(dpy, ReplayPointer, ev.xbutton.time); break; case MapRequest: mapreq(&ev.xmaprequest);@@ -238,7 +240,7 @@ if (!manage(c, 0))
return; break; } - XReparentWindow(dpy, c->window, c->parent, BORDER - 1, BORDER - 1); + XReparentWindow(dpy, c->window, c->parent, BORDER, BORDER); XAddToSaveSet(dpy, c->window); /* fall through... */ case NormalState:
M
manage.c
→
manage.c
@@ -30,6 +30,7 @@ XClassHint class;
XWMHints* hints; XSetWindowAttributes attrs; XRRMonitorInfo monitor; + ScreenInfo* screen; trace("manage", c, 0); XSelectInput(@@ -141,9 +142,10 @@ nwin %= 10;
} if (c->is9term && !(fixsize ? drag(c, Button3) : sweep(c, Button3))) { + screen = c->screen; XKillClient(dpy, c->window); rmclient(c); - if (current && current->screen == c->screen) + if (current && current->screen == screen) cmapfocus(current); return 0; }