diff options
-rw-r--r-- | dwm.h | 2 | ||||
-rw-r--r-- | event.c | 2 | ||||
-rw-r--r-- | tag.c | 14 |
3 files changed, 18 insertions, 0 deletions
diff --git a/dwm.h b/dwm.h index bcdb4e3..0b6b21f 100644 --- a/dwm.h +++ b/dwm.h @@ -143,6 +143,8 @@ extern void replacetag(Arg *arg); extern void settags(Client *c); extern void togglemode(Arg *arg); extern void view(Arg *arg); +extern void viewnext(Arg *arg); +extern void viewprev(Arg *arg); /* util.c */ extern void *emallocz(unsigned int size); diff --git a/event.c b/event.c index 17be71d..2cebc9e 100644 --- a/event.c +++ b/event.c @@ -32,8 +32,10 @@ static Key key[] = { { MODKEY, XK_2, view, { .i = Tnet } }, { MODKEY, XK_3, view, { .i = Twork } }, { MODKEY, XK_4, view, { .i = Tmisc} }, + { MODKEY, XK_h, viewprev, { 0 } }, { MODKEY, XK_j, focusnext, { 0 } }, { MODKEY, XK_k, focusprev, { 0 } }, + { MODKEY, XK_l, viewnext, { 0 } }, { MODKEY, XK_m, togglemax, { 0 } }, { MODKEY, XK_space, togglemode, { 0 } }, { MODKEY, XK_Return, zoom, { 0 } }, diff --git a/tag.c b/tag.c index c42a760..6b7e184 100644 --- a/tag.c +++ b/tag.c @@ -216,3 +216,17 @@ view(Arg *arg) arrange(NULL); drawall(); } + +void +viewnext(Arg *arg) +{ + arg->i = (tsel < TLast-1) ? tsel+1 : 0; + view(arg); +} + +void +viewprev(Arg *arg) +{ + arg->i = (tsel > 0) ? tsel-1 : TLast-1; + view(arg); +} |