dwm

my fork of dwm
Index Commits Files Refs README LICENSE
commit fd00b3a18620c70721c4c4d9f0169e06b9ce4437
parent e8389a4cc0f1c35bcb7e7646102bd6d6a830207e
Author: Anselm R. Garbe <arg@10kloc.org>
Date:   Wed,  6 Sep 2006 15:30:28 +0200

does this preserve z order for anthony?
Diffstat:
Mclient.c | 9+++++++--
Mtag.c | 9+++------
2 files changed, 10 insertions(+), 8 deletions(-)
diff --git a/client.c b/client.c
@@ -99,6 +99,13 @@ focus(Client *c)
         }
     }
     if(c) {
+        if(c->isfloat || arrange == dofloat) {
+            detach(c);
+            if(clients)
+                clients->prev = c;
+            c->next = clients;
+            clients = c;
+        }
         grabbuttons(c, True);
         drawtitle(c);
         XSetInputFocus(dpy, c->win, RevertToPointerRoot, CurrentTime);
@@ -243,8 +250,6 @@ manage(Window w, XWindowAttributes *wa)
         c->isfloat = trans
             || (c->maxw && c->minw &&
                 c->maxw == c->minw && c->maxh == c->minh);
-    if(c->isfloat)
-        c->weight = ntags;
 
     if(clients)
         clients->prev = c;
diff --git a/tag.c b/tag.c
@@ -110,8 +110,7 @@ settags(Client *c, Client *trans)
     if(!matched)
         for(i = 0; i < ntags; i++)
             c->tags[i] = seltag[i];
-    if(!c->isfloat)
-        for(c->weight = 0; c->weight < ntags && !c->tags[c->weight]; c->weight++);
+    for(c->weight = 0; c->weight < ntags && !c->tags[c->weight]; c->weight++);
 }
 
 void
@@ -125,8 +124,7 @@ tag(Arg *arg)
     for(i = 0; i < ntags; i++)
         sel->tags[i] = False;
     sel->tags[arg->i] = True;
-    if(!sel->isfloat)
-        sel->weight = arg->i;
+    sel->weight = arg->i;
     arrange(NULL);
 }
 
@@ -142,7 +140,6 @@ toggletag(Arg *arg)
     for(i = 0; i < ntags && !sel->tags[i]; i++);
     if(i == ntags)
         sel->tags[arg->i] = True;
-    if(!sel->isfloat)
-        sel->weight = (i == ntags) ? arg->i : i;
+    sel->weight = (i == ntags) ? arg->i : i;
     arrange(NULL);
 }