some restack fixes, still odd behavior if n>1 on unmanaging clients
authorAnselm R Garbe <anselm@garbe.us>
Tue, 23 Jun 2009 19:09:30 +0100
changeset 1412 2bc44743117e
parent 1411 652fe08b6eaa
child 1413 e0b1ca478d40
some restack fixes, still odd behavior if n>1 on unmanaging clients
dwm.c
--- a/dwm.c	Tue Jun 23 19:00:32 2009 +0100
+++ b/dwm.c	Tue Jun 23 19:09:30 2009 +0100
@@ -1045,8 +1045,8 @@
 			c->y = sy + sh - HEIGHT(c);
 		c->x = MAX(c->x, sx);
 		/* only fix client y-offset, if the client center might cover the bar */
-		c->y = MAX(c->y, ((selmon->by == 0) && (c->x + (c->w / 2) >= selmon->wx)
-		           && (c->x + (c->w / 2) < selmon->wx + selmon->ww)) ? bh : sy);
+		c->y = MAX(c->y, ((c->mon->by == 0) && (c->x + (c->w / 2) >= c->mon->wx)
+		           && (c->x + (c->w / 2) < c->mon->wx + c->mon->ww)) ? bh : sy);
 		c->bw = borderpx;
 	}
 
@@ -1271,10 +1271,10 @@
 	XWindowChanges wc;
 
 	drawbars();
-	if(!selmon->sel)
+	if(!m->sel)
 		return;
-	if(m == selmon && (selmon->sel->isfloating || !lt[m->sellt]->arrange))
-		XRaiseWindow(dpy, selmon->sel->win);
+	if(m->sel->isfloating || !lt[m->sellt]->arrange)
+		XRaiseWindow(dpy, m->sel->win);
 	if(lt[m->sellt]->arrange) {
 		wc.stack_mode = Below;
 		wc.sibling = m->barwin;