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.
This commit is contained in:
		
				
					committed by
					
						 Hiltjo Posthuma
						Hiltjo Posthuma
					
				
			
			
				
	
			
			
			
						parent
						
							4536f46cff
						
					
				
				
					commit
					2ec571a30c
				
			
							
								
								
									
										2
									
								
								x.c
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								x.c
									
									
									
									
									
								
							| @@ -48,7 +48,7 @@ typedef struct { | |||||||
| /* X modifiers */ | /* X modifiers */ | ||||||
| #define XK_ANY_MOD    UINT_MAX | #define XK_ANY_MOD    UINT_MAX | ||||||
| #define XK_NO_MOD     0 | #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 */ | /* function definitions used in config.h */ | ||||||
| static void clipcopy(const Arg *); | static void clipcopy(const Arg *); | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user