about summary refs log tree commit diff stats
path: root/tag.c
diff options
context:
space:
mode:
authorarg@10ksloc.org <unknown>2006-07-20 15:07:35 +0200
committerarg@10ksloc.org <unknown>2006-07-20 15:07:35 +0200
commit4688ad181da14be36e034918580ec0ce5968ffdb (patch)
treee919b8e6e89400a8b5dac01fa611090f139d5b5f /tag.c
parentdc5d967ee61046f899b3b49daeb9268c8161844a (diff)
downloaddwm-4688ad181da14be36e034918580ec0ce5968ffdb.tar.gz
made status bar drawing more robust, implemented togglemax and togglemode, works quite well
Diffstat (limited to 'tag.c')
-rw-r--r--tag.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/tag.c b/tag.c
index 186a5ae..d6c349b 100644
--- a/tag.c
+++ b/tag.c
@@ -51,8 +51,8 @@ dofloat(Arg *arg)
 {
 	Client *c;
 
-	arrange = dofloat;
 	for(c = clients; c; c = c->next) {
+		c->ismax = False;
 		if(c->tags[tsel]) {
 			resize(c, True, TopLeft);
 		}
@@ -75,7 +75,6 @@ dotile(Arg *arg)
 	Client *c;
 
 	w = sw - mw;
-	arrange = dotile;
 	for(n = 0, c = clients; c; c = c->next)
 		if(c->tags[tsel] && !c->isfloat)
 			n++;
@@ -86,6 +85,7 @@ dotile(Arg *arg)
 		h = sh - bh;
 
 	for(i = 0, c = clients; c; c = c->next) {
+		c->ismax = False;
 		if(c->tags[tsel]) {
 			if(c->isfloat) {
 				higher(c);
@@ -213,6 +213,13 @@ settags(Client *c)
 }
 
 void
+togglemode(Arg *arg)
+{
+	arrange = arrange == dofloat ? dotile : dofloat;
+	arrange(NULL);
+}
+
+void
 view(Arg *arg)
 {
 	tsel = arg->i;