Add 14th bit to XK_SWITCH_MOD bitmask - st - simple terminal | |
git clone git://git.suckless.org/st | |
Log | |
Files | |
Refs | |
README | |
LICENSE | |
--- | |
commit 2ec571a30c0c3b1a17f6b3631c80d573582f59a1 | |
parent 4536f46cfff50c66a115755def0155d8e246b02f | |
Author: Petar Kapriš <[email protected]> | |
Date: Sun, 18 Jul 2021 00:14:00 +0200 | |
Add 14th bit to XK_SWITCH_MOD bitmask | |
The bits of uint signal in an XKeyEvent which concern the key group (keyboard | |
layout) are bits 13 and 14, as documented here: | |
https://www.x.org/releases/X11R7.7/doc/libX11/XKB/xkblib.html#Groups_and_Shift_… | |
In the older version, only bit 13 was marked as part of XK_SWITCH_MOD, this | |
causes issues for users who have more than two keymaps. the 14th bit is not | |
in ignoremod, key sequences are not caught by match(), if they switch to a third | |
or fourth keyboard. | |
Diffstat: | |
M x.c | 2 +- | |
1 file changed, 1 insertion(+), 1 deletion(-) | |
--- | |
diff --git a/x.c b/x.c | |
@@ -48,7 +48,7 @@ typedef struct { | |
/* X modifiers */ | |
#define XK_ANY_MOD UINT_MAX | |
#define XK_NO_MOD 0 | |
-#define XK_SWITCH_MOD (1<<13) | |
+#define XK_SWITCH_MOD (1<<13|1<<14) | |
/* function definitions used in config.h */ | |
static void clipcopy(const Arg *); |