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
2 changed files with 20 additions and 0 deletions
|
@ -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 a new issue