diff -r 5d79c351e30a -r 1438e35b622e view.c --- a/view.c Mon Jan 08 17:33:24 2007 +0100 +++ b/view.c Mon Jan 08 17:36:56 2007 +0100 @@ -153,8 +153,7 @@ 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 @@ 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 @@ -244,6 +242,12 @@ } void +updatemodetext() { + snprintf(mtext, sizeof mtext, arrange == dofloat ? FLOATSYMBOL : TILESYMBOL, nmaster); + bmw = textw(mtext); +} + +void view(Arg *arg) { unsigned int i;