Optimizing the key lookup to the X11 function key. It is still possible to
remap other keys.
This commit is contained in:
		
							parent
							
								
									927d8fb459
								
							
						
					
					
						commit
						2b6521f5d2
					
				|  | @ -88,6 +88,12 @@ static Shortcut shortcuts[] = { | ||||||
|  * position for a key. |  * position for a key. | ||||||
|  */ |  */ | ||||||
| 
 | 
 | ||||||
|  | /*
 | ||||||
|  |  * If you want something else but the function keys of X11 (0xFF00 - 0xFFFF) | ||||||
|  |  * mapped below, add them to this array. | ||||||
|  |  */ | ||||||
|  | static KeySym mappedkeys[] = { -1 }; | ||||||
|  | 
 | ||||||
| /* key, mask, output, keypad, cursor, crlf */ | /* key, mask, output, keypad, cursor, crlf */ | ||||||
| static Key key[] = { | static Key key[] = { | ||||||
| 	/* keysym             mask         string         keypad cursor crlf */ | 	/* keysym             mask         string         keypad cursor crlf */ | ||||||
|  |  | ||||||
							
								
								
									
										14
									
								
								st.c
								
								
								
								
							
							
						
						
									
										14
									
								
								st.c
								
								
								
								
							|  | @ -2711,6 +2711,20 @@ char* | ||||||
| kmap(KeySym k, uint state) { | kmap(KeySym k, uint state) { | ||||||
| 	uint mask; | 	uint mask; | ||||||
| 	Key *kp; | 	Key *kp; | ||||||
|  | 	int i; | ||||||
|  | 
 | ||||||
|  | 	/* Check for mapped keys out of X11 function keys. */ | ||||||
|  | 	for(i = 0; i < LEN(mappedkeys); i++) { | ||||||
|  | 		if(mappedkeys[i] == k) { | ||||||
|  | 			fprintf(stderr, "mapped function key.\n"); | ||||||
|  | 			break; | ||||||
|  | 		} | ||||||
|  | 	} | ||||||
|  | 	if(i == LEN(mappedkeys)) { | ||||||
|  | 		if((k & 0xFFFF) < 0xFF00) | ||||||
|  | 			return NULL; | ||||||
|  | 	} | ||||||
|  | 	fprintf(stderr, "Function key.\n"); | ||||||
| 
 | 
 | ||||||
| 	for(kp = key; kp < key + LEN(key); kp++) { | 	for(kp = key; kp < key + LEN(key); kp++) { | ||||||
| 		mask = kp->mask; | 		mask = kp->mask; | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue