about summary refs log tree commit diff stats
path: root/draw.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 /draw.c
parentdc5d967ee61046f899b3b49daeb9268c8161844a (diff)
downloaddwm-4688ad181da14be36e034918580ec0ce5968ffdb.tar.gz
made status bar drawing more robust, implemented togglemax and togglemode, works quite well
Diffstat (limited to 'draw.c')
-rw-r--r--draw.c13
1 files changed, 6 insertions, 7 deletions
diff --git a/draw.c b/draw.c
index b5d8bd2..0c920e5 100644
--- a/draw.c
+++ b/draw.c
@@ -107,7 +107,7 @@ drawall()
 void
 drawstatus()
 {
-	int i;
+	int i, x;
 	Bool istile = arrange == dotile;
 
 	dc.x = dc.y = 0;
@@ -123,15 +123,14 @@ drawstatus()
 		else
 			drawtext(tags[i], (i != tsel), True);
 	}
-	if(sel) {
-		dc.x += dc.w;
-		dc.w = textw(sel->name);
-		drawtext(sel->name, istile, True);
-	}
+	x = dc.x + dc.w;
 	dc.w = textw(stext);
 	dc.x = bx + bw - dc.w;
 	drawtext(stext, !istile, False);
-
+	if(sel && ((dc.w = dc.x - x) >= bh)) {
+		dc.x = x;
+		drawtext(sel->name, istile, True);
+	}
 	XCopyArea(dpy, dc.drawable, barwin, dc.gc, 0, 0, bw, bh, 0, 0);
 	XSync(dpy, False);
 }