aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPetar Kapriš <petarkapris@firemail.cc>2021-07-18 00:14:00 +0200
committersinanmohd <pcmsinan@gmail.com>2023-01-12 08:20:21 +0530
commit3884b30dbde84f49b270265d76d4f0cac73791bd (patch)
treeeb1cae31965a400a0397420b92f68cf5950cd49e
parent163c39c9f46ab5895c32dbc3237bc13856b0b6db (diff)
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_Levels 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.
-rw-r--r--x.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/x.c b/x.c
index 12ab41a..82a7704 100644
--- a/x.c
+++ b/x.c
@@ -62,7 +62,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 *);