Browse Source

some focus fixes

Anselm R Garbe 16 years ago
parent
commit
80ee95473b
1 changed files with 8 additions and 2 deletions
  1. 8 2
      dwm.c

+ 8 - 2
dwm.c

@@ -762,6 +762,8 @@ focus(Client *c) {
 		XSetWindowBorder(dpy, selmon->sel->win, dc.norm[ColBorder]);
 	}
 	if(c) {
+		if(c->mon != selmon)
+			selmon = c->mon;
 		if(c->isurgent)
 			clearurgent(c);
 		detachstack(c);
@@ -792,8 +794,12 @@ focusmon(const Arg *arg) {
 
 	for(i = 0, m = mons; m; m = m->next, i++)
 		if(i == arg->ui) {
-			selmon = m;
-			focus(NULL);
+			if(m->stack)
+				focus(m->stack);
+			else {
+				selmon = m;
+				focus(NULL);
+			}
 			drawbars();
 			break;
 		}