aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--dwm.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/dwm.c b/dwm.c
index a0ab126..01e8d1f 100644
--- a/dwm.c
+++ b/dwm.c
@@ -827,13 +827,14 @@ enternotify(XEvent *e) {
if((ev->mode != NotifyNormal || ev->detail == NotifyInferior) && ev->window != root)
return;
c = wintoclient(ev->window);
- if((m = wintomon(ev->window)) && m != selmon) {
+ m = c ? c->mon : wintomon(ev->window);
+ if(m != selmon) {
unfocus(selmon->sel, True);
selmon = m;
}
- else if(c == selmon->sel || c == NULL)
+ else if(!c || c == selmon->sel)
return;
- focus((wintoclient(ev->window)));
+ focus(c);
}
void
remember that computers suck.