[wiki] [sites] [dwm][patch][focusadjacenttag] Update to 6.3 || Adrian Amaglio

From: <git_AT_suckless.org>
Date: Mon, 14 Feb 2022 08:47:47 +0100

commit bf39e7f13ea68587b5370c922ccd5e097630e3cc
Author: Adrian Amaglio <adrian_AT_amaglio.fr>
Date: Wed Feb 9 20:48:07 2022 +0100

    [dwm][patch][focusadjacenttag] Update to 6.3

diff --git a/dwm.suckless.org/patches/focusadjacenttag/dwm-focusadjacenttag-6.3.diff b/dwm.suckless.org/patches/focusadjacenttag/dwm-focusadjacenttag-6.3.diff
new file mode 100644
index 00000000..142b57e7
--- /dev/null
+++ b/dwm.suckless.org/patches/focusadjacenttag/dwm-focusadjacenttag-6.3.diff
_AT_@ -0,0 +1,115 @@
+diff -up a/config.def.h b/config.def.h
+--- a/config.def.h 2014-06-23 18:04:29.536917000 +0200
++++ b/config.def.h 2014-06-24 08:15:51.857173332 +0200
+_AT_@ -74,6 +74,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_Left, viewtoleft, {0} },
++ { MODKEY, XK_Right, viewtoright, {0} },
++ { MODKEY|ShiftMask, XK_Left, tagtoleft, {0} },
++ { MODKEY|ShiftMask, XK_Right, tagtoright, {0} },
+ TAGKEYS( XK_1, 0)
+ TAGKEYS( XK_2, 1)
+ TAGKEYS( XK_3, 2)
+diff -up a/dwm.1 b/dwm.1
+--- a/dwm.1 2014-06-23 18:04:29.532917821 +0200
++++ b/dwm.1 2014-06-23 21:52:54.095867809 +0200
+_AT_@ -71,6 +71,18 @@ Send focused window to previous screen,
+ .B Mod1\-Shift\-.
+ Send focused window to next screen, if any.
+ .TP
++.B Mod1\-Right
++Focus tag on the right, if any.
++.TP
++.B Mod1\-Left
++Focus tag on the left, if any.
++.TP
++.B Mod1\-Shift\-Right
++Send focused window to tag on the right, if any.
++.TP
++.B Mod1\-Shift\-Left
++Send focused window to tag on the left, if any.
++.TP
+ .B Mod1\-b
+ Toggles bar on and off.
+ .TP
+diff -up a/dwm.c b/dwm.c
+--- a/dwm.c 2014-06-23 18:04:29.532917821 +0200
++++ b/dwm.c 2014-06-24 08:17:40.921714154 +0200
+_AT_@ -226,6 +226,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 tagtoleft(const Arg *arg);
++static void tagtoright(const Arg *arg);
+ static void tile(Monitor *);
+ static void togglebar(const Arg *arg);
+ static void togglefloating(const Arg *arg);
+_AT_@ -245,6 +247,8 @@ static void updatewindowtype(Client *c);
+ static void updatewindowtype(Client *c);
+ static void updatewmhints(Client *c);
+ static void view(const Arg *arg);
++static void viewtoleft(const Arg *arg);
++static void viewtoright(const Arg *arg);
+ static Client *wintoclient(Window w);
+ static Monitor *wintomon(Window w);
+ static int xerror(Display *dpy, XErrorEvent *ee);
+_AT_@ -1690,6 +1694,28 @@ tagmon(const Arg *arg) {
+ sendmon(selmon->sel, dirtomon(arg->i));
+ }
+
++void
++tagtoleft(const Arg *arg) {
++ if(selmon->sel != NULL
++ && __builtin_popcount(selmon->tagset[selmon->seltags] & TAGMASK) == 1
++ && selmon->tagset[selmon->seltags] > 1) {
++ selmon->sel->tags >>= 1;
++ focus(NULL);
++ arrange(selmon);
++ }
++}
++
++void
++tagtoright(const Arg *arg) {
++ if(selmon->sel != NULL
++ && __builtin_popcount(selmon->tagset[selmon->seltags] & TAGMASK) == 1
++ && selmon->tagset[selmon->seltags] & (TAGMASK >> 1)) {
++ selmon->sel->tags <<= 1;
++ focus(NULL);
++ arrange(selmon);
++ }
++}
++
+ void
+ tile(Monitor *m)
+ {
+_AT_@ -2052,6 +2078,28 @@ view(const Arg *arg) {
+ arrange(selmon);
+ }
+
++void
++viewtoleft(const Arg *arg) {
++ if(__builtin_popcount(selmon->tagset[selmon->seltags] & TAGMASK) == 1
++ && selmon->tagset[selmon->seltags] > 1) {
++ selmon->seltags ^= 1; /* toggle sel tagset */
++ selmon->tagset[selmon->seltags] = selmon->tagset[selmon->seltags ^ 1] >> 1;
++ focus(NULL);
++ arrange(selmon);
++ }
++}
++
++void
++viewtoright(const Arg *arg) {
++ if(__builtin_popcount(selmon->tagset[selmon->seltags] & TAGMASK) == 1
++ && selmon->tagset[selmon->seltags] & (TAGMASK >> 1)) {
++ selmon->seltags ^= 1; /* toggle sel tagset */
++ selmon->tagset[selmon->seltags] = selmon->tagset[selmon->seltags ^ 1] << 1;
++ focus(NULL);
++ arrange(selmon);
++ }
++}
++
+ Client *
+ wintoclient(Window w)
+ {
diff --git a/dwm.suckless.org/patches/focusadjacenttag/index.md b/dwm.suckless.org/patches/focusadjacenttag/index.md
index 5e441e6d..ea921a39 100644
--- a/dwm.suckless.org/patches/focusadjacenttag/index.md
+++ b/dwm.suckless.org/patches/focusadjacenttag/index.md
_AT_@ -18,9 +18,11 @@ Default key bindings
 
 Download
 --------
+* [dwm-focusadjacenttag-6.3.diff](dwm-focusadjacenttag-6.3.diff)
 * [dwm-focusadjacenttag-6.0.diff](dwm-focusadjacenttag-6.0.diff)
   (Unclean patch, Author emailed about this issue already)
 
 Authors
 -------
+* Adrian Amaglio - 6.3 patch and config place fix
 * Fabio Banfi - `<fbanfi90 at gmail dot com>`
Received on Mon Feb 14 2022 - 08:47:47 CET

This archive was generated by hypermail 2.3.0 : Mon Feb 14 2022 - 08:48:49 CET