summaryrefslogtreecommitdiff
path: root/patches/10.dwm-adjacenttag-skipvacant-6.2.diff
diff options
context:
space:
mode:
Diffstat (limited to 'patches/10.dwm-adjacenttag-skipvacant-6.2.diff')
-rw-r--r--patches/10.dwm-adjacenttag-skipvacant-6.2.diff161
1 files changed, 0 insertions, 161 deletions
diff --git a/patches/10.dwm-adjacenttag-skipvacant-6.2.diff b/patches/10.dwm-adjacenttag-skipvacant-6.2.diff
deleted file mode 100644
index 6e39d71..0000000
--- a/patches/10.dwm-adjacenttag-skipvacant-6.2.diff
+++ /dev/null
@@ -1,161 +0,0 @@
-diff -up a/config.def.h b/config.def.h
---- a/config.def.h 2021-10-02 14:22:28.034782413 +0100
-+++ b/config.def.h 2021-10-02 14:22:28.044723532 +0100
-@@ -84,6 +84,10 @@ static Key keys[] = {
- { MODKEY, XK_period, focusmon, {.i = +1 } },
- { MODKEY|ShiftMask, XK_comma, tagmon, {.i = -1 } },
- { MODKEY|ShiftMask, XK_period, tagmon, {.i = +1 } },
-+ { MODKEY, XK_Right, viewnext, {0} },
-+ { MODKEY, XK_Left, viewprev, {0} },
-+ { MODKEY|ShiftMask, XK_Right, tagtonext, {0} },
-+ { MODKEY|ShiftMask, XK_Left, tagtoprev, {0} },
- TAGKEYS( XK_1, 0)
- TAGKEYS( XK_2, 1)
- TAGKEYS( XK_3, 2)
-diff -up a/dwm.c b/dwm.c
---- a/dwm.c 2021-10-02 14:22:28.034782413 +0100
-+++ b/dwm.c 2021-10-02 14:27:54.599845767 +0100
-@@ -183,8 +183,10 @@ static void maprequest(XEvent *e);
- static void monocle(Monitor *m);
- static void motionnotify(XEvent *e);
- static void movemouse(const Arg *arg);
-+static unsigned int nexttag(void);
- static Client *nexttiled(Client *c);
- static void pop(Client *);
-+static unsigned int prevtag(void);
- static void propertynotify(XEvent *e);
- static void quit(const Arg *arg);
- static Monitor *recttomon(int x, int y, int w, int h);
-@@ -208,6 +210,8 @@ static void sigchld(int unused);
- static void spawn(const Arg *arg);
- static void tag(const Arg *arg);
- static void tagmon(const Arg *arg);
-+static void tagtonext(const Arg *arg);
-+static void tagtoprev(const Arg *arg);
- static void tile(Monitor *);
- static void togglebar(const Arg *arg);
- static void togglefloating(const Arg *arg);
-@@ -227,6 +231,8 @@ static void updatetitle(Client *c);
- static void updatewindowtype(Client *c);
- static void updatewmhints(Client *c);
- static void view(const Arg *arg);
-+static void viewnext(const Arg *arg);
-+static void viewprev(const Arg *arg);
- static Client *wintoclient(Window w);
- static Monitor *wintomon(Window w);
- static int xerror(Display *dpy, XErrorEvent *ee);
-@@ -1192,6 +1198,29 @@ movemouse(const Arg *arg)
- }
- }
-
-+unsigned int
-+nexttag(void)
-+{
-+ unsigned int seltag = selmon->tagset[selmon->seltags];
-+ unsigned int usedtags = 0;
-+ Client *c = selmon->clients;
-+
-+ if (!c)
-+ return seltag;
-+
-+ /* skip vacant tags */
-+ do {
-+ usedtags |= c->tags;
-+ c = c->next;
-+ } while (c);
-+
-+ do {
-+ seltag = seltag == (1 << (LENGTH(tags) - 1)) ? 1 : seltag << 1;
-+ } while (!(seltag & usedtags));
-+
-+ return seltag;
-+}
-+
- Client *
- nexttiled(Client *c)
- {
-@@ -1208,6 +1237,28 @@ pop(Client *c)
- arrange(c->mon);
- }
-
-+unsigned int
-+prevtag(void)
-+{
-+ unsigned int seltag = selmon->tagset[selmon->seltags];
-+ unsigned int usedtags = 0;
-+ Client *c = selmon->clients;
-+ if (!c)
-+ return seltag;
-+
-+ /* skip vacant tags */
-+ do {
-+ usedtags |= c->tags;
-+ c = c->next;
-+ } while (c);
-+
-+ do {
-+ seltag = seltag == 1 ? (1 << (LENGTH(tags) - 1)) : seltag >> 1;
-+ } while (!(seltag & usedtags));
-+
-+ return seltag;
-+}
-+
- void
- propertynotify(XEvent *e)
- {
-@@ -1671,6 +1722,36 @@ tagmon(const Arg *arg)
- }
-
- void
-+tagtonext(const Arg *arg)
-+{
-+ unsigned int tmp;
-+
-+ if (selmon->sel == NULL)
-+ return;
-+
-+ if ((tmp = nexttag()) == selmon->tagset[selmon->seltags])
-+ return;
-+
-+ tag(&(const Arg){.ui = tmp });
-+ view(&(const Arg){.ui = tmp });
-+}
-+
-+void
-+tagtoprev(const Arg *arg)
-+{
-+ unsigned int tmp;
-+
-+ if (selmon->sel == NULL)
-+ return;
-+
-+ if ((tmp = prevtag()) == selmon->tagset[selmon->seltags])
-+ return;
-+
-+ tag(&(const Arg){.ui = tmp });
-+ view(&(const Arg){.ui = tmp });
-+}
-+
-+void
- tile(Monitor *m)
- {
- unsigned int i, n, h, mw, my, ty;
-@@ -2044,6 +2125,18 @@ view(const Arg *arg)
- arrange(selmon);
- }
-
-+void
-+viewnext(const Arg *arg)
-+{
-+ view(&(const Arg){.ui = nexttag()});
-+}
-+
-+void
-+viewprev(const Arg *arg)
-+{
-+ view(&(const Arg){.ui = prevtag()});
-+}
-+
- Client *
- wintoclient(Window w)
- {