X-Git-Url: https://jasonwoof.com/gitweb/?a=blobdiff_plain;ds=sidebyside;f=layout.c;h=abdf30fdb8c2493dd9824c455ff0cc755a2ece9c;hb=5a9af492ae9fc6d28dc80bf3599d7eebda9136dd;hp=0dc062f1a59bcb50041b60e7a906a0ad8f2f8a27;hpb=2aef8b9b4ce0900d241c60cb3a07e111c825d13a;p=dwm.git diff --git a/layout.c b/layout.c index 0dc062f..abdf30f 100644 --- a/layout.c +++ b/layout.c @@ -198,11 +198,9 @@ setlayout(const char *arg) { int i; if(!arg) { - for(i = 0; i < nlayouts && lt != &layout[i]; i++); - if(i == nlayouts - 1) - lt = &layout[0]; - else - lt = &layout[++i]; + lt++; + if(lt == layout + nlayouts) + lt = layout; } else { i = atoi(arg); @@ -218,8 +216,12 @@ setlayout(const char *arg) { void togglebar(const char *arg) { - bpos = (bpos == BarOff) ? BARPOS : BarOff; + if(bpos == BarOff) + bpos = (BARPOS == BarOff) ? BarTop : BARPOS; + else + bpos = BarOff; updatebarpos(); + lt->arrange(); } void @@ -245,7 +247,7 @@ void zoom(const char *arg) { Client *c; - if(!sel || lt->arrange != tile || sel->isfloating) + if(!sel || lt->arrange == floating || sel->isfloating) return; if((c = sel) == nexttiled(clients)) if(!(c = nexttiled(c->next)))