JasonWoof Got questions, comments, patches, etc.? Contact Jason Woofenden
small changes
[dwm.git] / client.c
index 510ec59..f2cd802 100644 (file)
--- a/client.c
+++ b/client.c
@@ -79,31 +79,28 @@ configure(Client *c) {
 
 void
 focus(Client *c) {
-       Client *old = sel;
-
        if(c && !isvisible(c))
                return;
-
-       if(old && old != c) {
-               grabbuttons(old, False);
-               XSetWindowBorder(dpy, old->win, dc.norm[ColBorder]);
+       if(sel && sel != c) {
+               grabbuttons(sel, False);
+               XSetWindowBorder(dpy, sel->win, dc.norm[ColBorder]);
        }
        if(c) {
-               if(issel) {
-                       detachstack(c);
-                       c->snext = stack;
-                       stack = c;
-                       grabbuttons(c, True);
-                       XSetWindowBorder(dpy, c->win, dc.sel[ColBorder]);
-                       XSetInputFocus(dpy, c->win, RevertToPointerRoot, CurrentTime);
-               }
-               else
-                       XSetWindowBorder(dpy, c->win, dc.norm[ColBorder]);
+               detachstack(c);
+               c->snext = stack;
+               stack = c;
+               grabbuttons(c, True);
        }
-       else if(issel)
-               XSetInputFocus(dpy, root, RevertToPointerRoot, CurrentTime);
        sel = c;
        drawstatus();
+       if(!activescreen)
+               return;
+       if(sel) {
+               XSetWindowBorder(dpy, c->win, dc.sel[ColBorder]);
+               XSetInputFocus(dpy, c->win, RevertToPointerRoot, CurrentTime);
+       }
+       else
+               XSetInputFocus(dpy, root, RevertToPointerRoot, CurrentTime);
 }
 
 Client *