URI: 
       applied sanders try2 patch - dwm - dynamic window manager
  HTML git clone https://git.parazyd.org/dwm
   DIR Log
   DIR Files
   DIR Refs
   DIR README
   DIR LICENSE
       ---
   DIR commit 0f395c1b115280a0976a85940c714152d8a58dac
   DIR parent 2b13e7466f4912e3778bf59e6aec3065443f08fe
  HTML Author: arg@mig29 <unknown>
       Date:   Fri, 27 Oct 2006 13:28:26 +0200
       
       applied sanders try2 patch
       Diffstat:
         M client.c                            |       6 +++---
         M dwm.h                               |       2 +-
         M event.c                             |       2 +-
         M view.c                              |       3 +--
       
       4 files changed, 6 insertions(+), 7 deletions(-)
       ---
   DIR 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;
   DIR 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;
   DIR 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);
                        }
   DIR 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)) {