Add 14th bit to XK_SWITCH_MOD bitmask - st - Personal fork of st
 (HTM) git clone git://git.drkhsh.at/st.git
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) README
 (DIR) LICENSE
       ---
 (DIR) commit 2ec571a30c0c3b1a17f6b3631c80d573582f59a1
 (DIR) parent 4536f46cfff50c66a115755def0155d8e246b02f
 (HTM) Author: Petar Kapriš <petarkapris@firemail.cc>
       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_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.
       
       Diffstat:
         M x.c                                 |       2 +-
       
       1 file changed, 1 insertion(+), 1 deletion(-)
       ---
 (DIR) 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 *);