XQuartz: Setup the modifier map in the quartz thread
This avoids possible doing it twice which could result in incorrect keycodes for alt due to our loss of information about its side. Signed-off-by: Jeremy Huddleston <jeremyhu@freedesktop.org>
This commit is contained in:
parent
44f9c3d16c
commit
6008cc1164
|
@ -260,6 +260,7 @@ static void DarwinBuildModifierMaps(darwinKeyboardInfo *info) {
|
|||
break;
|
||||
|
||||
case XK_Mode_switch:
|
||||
ErrorF("DarwinBuildModifierMaps: XK_Mode_switch encountered, unable to determine side.\n");
|
||||
info->modifierKeycodes[NX_MODIFIERKEY_ALTERNATE][0] = i;
|
||||
#ifdef NX_MODIFIERKEY_RALTERNATE
|
||||
info->modifierKeycodes[NX_MODIFIERKEY_RALTERNATE][0] = i;
|
||||
|
@ -388,7 +389,6 @@ void DarwinKeyboardReloadHandler(void) {
|
|||
|
||||
pthread_mutex_lock(&keyInfo_mutex); {
|
||||
/* Initialize our keySyms */
|
||||
DarwinBuildModifierMaps(&keyInfo);
|
||||
keySyms.map = keyInfo.keyMap;
|
||||
keySyms.mapWidth = GLYPHS_PER_KEY;
|
||||
keySyms.minKeyCode = MIN_KEYCODE;
|
||||
|
@ -808,5 +808,7 @@ Bool QuartzReadSystemKeymap(darwinKeyboardInfo *info) {
|
|||
}
|
||||
}
|
||||
|
||||
DarwinBuildModifierMaps(info);
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue
Block a user