浏览代码

reorganized

Anselm R. Garbe 19 年之前
父节点
当前提交
5a5851bac2
共有 3 个文件被更改,包括 10 次插入6 次删除
  1. 1 0
      dwm.h
  2. 1 2
      main.c
  3. 8 4
      view.c

+ 1 - 0
dwm.h

@@ -168,5 +168,6 @@ extern void restack(void);			/* restores z layers of all clients */
 extern void togglefloat(Arg *arg);		/* toggles focusesd client between floating/non-floating state */
 extern void togglemode(Arg *arg);		/* toggles global arrange function (dotile/dofloat) */
 extern void toggleview(Arg *arg);		/* toggles the tag with arg's index (in)visible */
+extern void updatemodetext(void);		/* updates mtext */
 extern void view(Arg *arg);			/* views the tag with arg's index */
 extern void zoom(Arg *arg);			/* zooms the focused client to master area, arg is ignored */

+ 1 - 2
main.c

@@ -133,8 +133,7 @@ setup(void) {
 	sh = DisplayHeight(dpy, screen);
 	master = MASTER;
 	nmaster = NMASTER;
-	snprintf(mtext, sizeof mtext, arrange == dofloat ? FLOATSYMBOL : TILESYMBOL, nmaster);
-	bmw = textw(mtext);
+	updatemodetext();
 	/* bar */
 	bx = sx;
 	by = sy;

+ 8 - 4
view.c

@@ -153,8 +153,7 @@ incnmaster(Arg *arg) {
 	if((arrange == dofloat) || (nmaster + arg->i < 1) || (wah / (nmaster + arg->i) < bh))
 		return;
 	nmaster += arg->i;
-	snprintf(mtext, sizeof mtext, arrange == dofloat ? FLOATSYMBOL : TILESYMBOL, nmaster);
-	bmw = textw(mtext);
+	updatemodetext();
 	if(sel)
 		arrange();
 	else
@@ -224,8 +223,7 @@ togglefloat(Arg *arg) {
 void
 togglemode(Arg *arg) {
 	arrange = (arrange == dofloat) ? dotile : dofloat;
-	snprintf(mtext, sizeof mtext, arrange == dofloat ? FLOATSYMBOL : TILESYMBOL, nmaster);
-	bmw = textw(mtext);
+	updatemodetext();
 	if(sel)
 		arrange();
 	else
@@ -243,6 +241,12 @@ toggleview(Arg *arg) {
 	arrange();
 }
 
+void
+updatemodetext() {
+	snprintf(mtext, sizeof mtext, arrange == dofloat ? FLOATSYMBOL : TILESYMBOL, nmaster);
+	bmw = textw(mtext);
+}
+
 void
 view(Arg *arg) {
 	unsigned int i;