X-Git-Url: https://git.danieliu.xyz/?a=blobdiff_plain;f=screen.c;h=8abe3d7c13ab16d7ec769a67ec34b956cbb96fb4;hb=6bc4556ebd7f48f52f9a446e53d1705d8fd79b27;hp=5907ba7ab8985a077840b633742087cb91058dc7;hpb=5a03daf47f3383250652c15f38f976f6157b4641;p=dwm.git diff --git a/screen.c b/screen.c index 5907ba7..8abe3d7 100644 --- a/screen.c +++ b/screen.c @@ -190,6 +190,28 @@ restack(void) { while(XCheckMaskEvent(dpy, EnterWindowMask, &ev)); } +void +setlayout(Arg *arg) { + unsigned int i; + + if(arg->i == -1) { + for(i = 0; i < nlayouts && lt != &layout[i]; i++); + if(i == nlayouts - 1) + lt = &layout[0]; + else + lt = &layout[++i]; + } + else { + if(arg->i < 0 || arg->i >= nlayouts) + return; + lt = &layout[arg->i]; + } + if(sel) + lt->arrange(); + else + drawstatus(); +} + void settags(Client *c, Client *trans) { char prop[512]; @@ -252,21 +274,6 @@ toggletag(Arg *arg) { lt->arrange(); } -void -togglelayout(Arg *arg) { - unsigned int i; - - for(i = 0; i < nlayouts && lt != &layout[i]; i++); - if(i == nlayouts - 1) - lt = &layout[0]; - else - lt = &layout[++i]; - if(sel) - lt->arrange(); - else - drawstatus(); -} - void toggleversatile(Arg *arg) { if(!sel || lt->arrange == versatile)