applied sanders try2 patch
authorarg@mig29
Fri, 27 Oct 2006 13:28:26 +0200
changeset 549 fd1061442711
parent 548 3d23384eb5ab
child 550 787f6ae02f29
applied sanders try2 patch
client.c
dwm.h
event.c
view.c
--- a/client.c	Fri Oct 27 12:05:47 2006 +0200
+++ b/client.c	Fri Oct 27 13:28:26 2006 +0200
@@ -209,6 +209,8 @@
 	c->h = wa->height;
 	c->th = bh;
 	updatesize(c);
+	c->isfixed = (c->maxw && c->minw && c->maxh && c->minh &&
+				c->maxw == c->minw && c->maxh == c->minh);
 	if(c->x + c->w + 2 * BORDERPX > sw)
 		c->x = sw - c->w - 2 * BORDERPX;
 	if(c->x < sx)
@@ -232,9 +234,7 @@
 	updatetitle(c);
 	settags(c, getclient(trans));
 	if(!c->isfloat)
-		c->isfloat = trans
-			|| (c->maxw && c->minw && c->maxh && c->minh &&
-				c->maxw == c->minw && c->maxh == c->minh);
+		c->isfloat = trans || c->isfixed;
 	resizetitle(c);
 	if(clients)
 		clients->prev = c;
--- a/dwm.h	Fri Oct 27 12:05:47 2006 +0200
+++ b/dwm.h	Fri Oct 27 13:28:26 2006 +0200
@@ -83,7 +83,7 @@
 	int grav;
 	long flags; 
 	unsigned int border, weight;
-	Bool isfloat, ismax;
+	Bool isfloat, isfixed, ismax;
 	Bool *tags;
 	Client *next;
 	Client *prev;
--- a/event.c	Fri Oct 27 12:05:47 2006 +0200
+++ b/event.c	Fri Oct 27 13:28:26 2006 +0200
@@ -136,7 +136,7 @@
 		}
 		else if(ev->button == Button2)
 			zoom(NULL);
-		else if(ev->button == Button3 && (arrange == dofloat || c->isfloat)) {
+		else if(ev->button == Button3 && (arrange == dofloat || c->isfloat) && !c->isfixed) {
 			restack();
 			resizemouse(c);
 		}
--- a/view.c	Fri Oct 27 12:05:47 2006 +0200
+++ b/view.c	Fri Oct 27 13:28:26 2006 +0200
@@ -45,8 +45,7 @@
 togglemax(Client *c) {
 	XEvent ev;
 		
-	if (x->maxw && x->minw && x->maxh && x->minh &&
-			x->maxw == x->minw && x->maxh == x->minh)
+	if(c->isfixed)
 		return;
 
 	if((c->ismax = !c->ismax)) {