dwm

my fork of dwm
Index Commits Files Refs README LICENSE
commit 0f395c1b115280a0976a85940c714152d8a58dac
parent 2b13e7466f4912e3778bf59e6aec3065443f08fe
Author: arg@mig29 <unknown>
Date:   Fri, 27 Oct 2006 13:28:26 +0200

applied sanders try2 patch
Diffstat:
Mclient.c | 6+++---
Mdwm.h | 2+-
Mevent.c | 2+-
Mview.c | 3+--
4 files changed, 6 insertions(+), 7 deletions(-)
diff --git a/client.c b/client.c
@@ -209,6 +209,8 @@ manage(Window w, XWindowAttributes *wa) {
     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 @@ manage(Window w, XWindowAttributes *wa) {
     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;
diff --git a/dwm.h b/dwm.h
@@ -83,7 +83,7 @@ struct Client {
     int grav;
     long flags; 
     unsigned int border, weight;
-    Bool isfloat, ismax;
+    Bool isfloat, isfixed, ismax;
     Bool *tags;
     Client *next;
     Client *prev;
diff --git a/event.c b/event.c
@@ -136,7 +136,7 @@ buttonpress(XEvent *e) {
         }
         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);
         }
diff --git a/view.c b/view.c
@@ -45,8 +45,7 @@ static void
 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)) {