commit 930aa5bd9159bbba355a8900aa1a623441c0b0cb
Author: Petr Vaněk <[email protected]>
Date:   Sat Jan 28 15:26:26 2017 +0100

    [dwm] update pwkl patch for dwm-6.1

diff --git a/dwm.suckless.org/patches/dwm-pwkl-6.1.diff 
b/dwm.suckless.org/patches/dwm-pwkl-6.1.diff
new file mode 100644
index 0000000..ed8257b
--- /dev/null
+++ b/dwm.suckless.org/patches/dwm-pwkl-6.1.diff
@@ -0,0 +1,62 @@
+diff --git a/dwm.c b/dwm.c
+index 0362114..8807f54 100644
+--- a/dwm.c
++++ b/dwm.c
+@@ -36,6 +36,7 @@
+ #include <X11/Xlib.h>
+ #include <X11/Xproto.h>
+ #include <X11/Xutil.h>
++#include <X11/XKBlib.h>
+ #ifdef XINERAMA
+ #include <X11/extensions/Xinerama.h>
+ #endif /* XINERAMA */
+@@ -97,6 +98,7 @@ struct Client {
+       Client *snext;
+       Monitor *mon;
+       Window win;
++      unsigned char kbdgrp;
+ };
+ 
+ typedef struct {
+@@ -804,6 +806,7 @@ focus(Client *c)
+                       selmon = c->mon;
+               if (c->isurgent)
+                       clearurgent(c);
++              XkbLockGroup(dpy, XkbUseCoreKbd, c->kbdgrp);
+               detachstack(c);
+               attachstack(c);
+               grabbuttons(c, 1);
+@@ -1035,6 +1038,7 @@ manage(Window w, XWindowAttributes *wa)
+       Client *c, *t = NULL;
+       Window trans = None;
+       XWindowChanges wc;
++      XkbStateRec kbd_state;
+ 
+       c = ecalloc(1, sizeof(Client));
+       c->win = w;
+@@ -1085,6 +1089,8 @@ manage(Window w, XWindowAttributes *wa)
+       if (c->mon == selmon)
+               unfocus(selmon->sel, 0);
+       c->mon->sel = c;
++      XkbGetState(dpy, XkbUseCoreKbd, &kbd_state);
++      c->kbdgrp = kbd_state.group;
+       arrange(c->mon);
+       XMapWindow(dpy, c->win);
+       focus(NULL);
+@@ -1742,6 +1748,7 @@ toggleview(const Arg *arg)
+ void
+ unfocus(Client *c, int setfocus)
+ {
++      XkbStateRec kbd_state;
+       if (!c)
+               return;
+       grabbuttons(c, 0);
+@@ -1750,6 +1757,8 @@ unfocus(Client *c, int setfocus)
+               XSetInputFocus(dpy, root, RevertToPointerRoot, CurrentTime);
+               XDeleteProperty(dpy, root, netatom[NetActiveWindow]);
+       }
++      XkbGetState(dpy, XkbUseCoreKbd, &kbd_state);
++      c->kbdgrp = kbd_state.group;
+ }
+ 
+ void
diff --git a/dwm.suckless.org/patches/pwkl.md b/dwm.suckless.org/patches/pwkl.md
index 60e32ae..64573ea 100644
--- a/dwm.suckless.org/patches/pwkl.md
+++ b/dwm.suckless.org/patches/pwkl.md
@@ -16,6 +16,7 @@ this: [see ml](http://lists.suckless.org/dev/1010/6195.html).
 Download
 --------
 * [dwm-pwkl-5.9.diff](dwm-pwkl-5.9.diff) (1.4K) (20101013)
+* [dwm-pwkl-6.1.diff](dwm-pwkl-6.1.diff) (1.5K) (20170128)
 
 Author
 ------


Reply via email to