diff options
author | Kaleb Keithley <kaleb@freedesktop.org> | 2004-02-29 20:11:11 +0000 |
---|---|---|
committer | Kaleb Keithley <kaleb@freedesktop.org> | 2004-02-29 20:11:11 +0000 |
commit | f81d63ec5396c8d7f62ddd6ff6bab10b32493264 (patch) | |
tree | dbb6ce805e49bd67853cfd245755dc24cbd28f49 | |
parent | bb93fef9877a885da2c6108410155fa996b19abf (diff) | |
download | xserver-f81d63ec5396c8d7f62ddd6ff6bab10b32493264.tar.gz |
bug #240 Instead of both Meta keys generating Meta_L, and both Alt keys
generating Alt_L, etc, fix the implementation so that you get Meta_L
for the left Meta key and Meta_R for the right Meta key. Ditto for Alt,
Control, and Shift.
-rw-r--r-- | hw/darwin/bundle/Dutch.lproj/Credits.rtf | 15 | ||||
-rw-r--r-- | hw/darwin/bundle/English.lproj/Credits.rtf | 15 | ||||
-rw-r--r-- | hw/darwin/bundle/French.lproj/Credits.rtf | 15 | ||||
-rw-r--r-- | hw/darwin/bundle/German.lproj/Credits.rtf | 15 | ||||
-rw-r--r-- | hw/darwin/bundle/Japanese.lproj/Credits.rtf | 15 | ||||
-rw-r--r-- | hw/darwin/bundle/Portuguese.lproj/Credits.rtf | 15 | ||||
-rw-r--r-- | hw/darwin/bundle/Spanish.lproj/Credits.rtf | 15 | ||||
-rw-r--r-- | hw/darwin/bundle/Swedish.lproj/Credits.rtf | 15 | ||||
-rw-r--r-- | hw/darwin/bundle/ko.lproj/Credits.rtf | 15 | ||||
-rw-r--r-- | hw/darwin/darwinEvents.c | 13 | ||||
-rw-r--r-- | hw/darwin/darwinKeyboard.c | 42 |
11 files changed, 151 insertions, 39 deletions
diff --git a/hw/darwin/bundle/Dutch.lproj/Credits.rtf b/hw/darwin/bundle/Dutch.lproj/Credits.rtf index 7d9a594e6..b8908998e 100644 --- a/hw/darwin/bundle/Dutch.lproj/Credits.rtf +++ b/hw/darwin/bundle/Dutch.lproj/Credits.rtf @@ -5,7 +5,18 @@ \vieww9000\viewh9000\viewkind0 \pard\tx1440\tx2880\tx4320\tx5760\tx7200\qc -\f0\b\fs24 \cf0 Contributors to XFree86 4.4: +\f0\b\fs24 \cf0 Contributors to X.Org Foundation Release: +\f1\b0 \ +\pard\tx1440\tx2880\tx4320\tx5760\tx7200\ql\qnatural +\cf0 Kaleb KEITHLEY\ + +\f2\i Working Left and Right Meta (Command), Alt, Control, and Shift keys +\f1\i0 \ +\pard\tx1440\tx2880\tx4320\tx5760\tx7200\ql\qnatural + +\f0\b \cf0 \ +\pard\tx1440\tx2880\tx4320\tx5760\tx7200\qc +\cf0 Contributors to XFree86 4.4: \f1\b0 \ \pard\tx1440\tx2880\tx4320\tx5760\tx7200\ql\qnatural \cf0 John Harper\ @@ -151,4 +162,4 @@ Dave Zarzycki\ \f1\i0 \ Torrey T. Lyons\ -\f2\i Integration into XFree86 Project for 4.0.2}
\ No newline at end of file +\f2\i Integration into XFree86 Project for 4.0.2} diff --git a/hw/darwin/bundle/English.lproj/Credits.rtf b/hw/darwin/bundle/English.lproj/Credits.rtf index 32c64f026..5043b47f0 100644 --- a/hw/darwin/bundle/English.lproj/Credits.rtf +++ b/hw/darwin/bundle/English.lproj/Credits.rtf @@ -5,7 +5,18 @@ \vieww5160\viewh6300\viewkind0 \pard\tx1440\tx2880\tx4320\tx5760\tx7200\qc -\f0\b\fs24 \cf0 Contributors to XFree86 4.4: +\f0\b\fs24 \cf0 Contributors to X.Org Foundation Release: +\f1\b0 \ +\pard\tx1440\tx2880\tx4320\tx5760\tx7200\ql\qnatural +\cf0 Kaleb KEITHLEY\ + +\f2\i Working Left and Right Meta (Command), Alt, Control, and Shift keys +\f1\i0 \ +\pard\tx1440\tx2880\tx4320\tx5760\tx7200\ql\qnatural + +\f0\b \cf0 \ +\pard\tx1440\tx2880\tx4320\tx5760\tx7200\qc +\cf0 Contributors to XFree86 4.4: \f1\b0 \ \pard\tx1440\tx2880\tx4320\tx5760\tx7200\ql\qnatural \cf0 John Harper\ @@ -151,4 +162,4 @@ Dave Zarzycki\ \f1\i0 \ Torrey T. Lyons\ -\f2\i Integration into XFree86 Project for 4.0.2}
\ No newline at end of file +\f2\i Integration into XFree86 Project for 4.0.2} diff --git a/hw/darwin/bundle/French.lproj/Credits.rtf b/hw/darwin/bundle/French.lproj/Credits.rtf index 66c1bdae0..22f048b31 100644 --- a/hw/darwin/bundle/French.lproj/Credits.rtf +++ b/hw/darwin/bundle/French.lproj/Credits.rtf @@ -5,7 +5,18 @@ \vieww5160\viewh4480\viewkind0 \pard\tx1440\tx2880\tx4320\tx5760\tx7200\qc -\f0\b\fs24 \cf0 Contributors to XFree86 4.4: +\f0\b\fs24 \cf0 Contributors to X.Org Foundation Release: +\f1\b0 \ +\pard\tx1440\tx2880\tx4320\tx5760\tx7200\ql\qnatural +\cf0 Kaleb KEITHLEY\ + +\f2\i Working Left and Right Meta (Command), Alt, Control, and Shift keys +\f1\i0 \ +\pard\tx1440\tx2880\tx4320\tx5760\tx7200\ql\qnatural + +\f0\b \cf0 \ +\pard\tx1440\tx2880\tx4320\tx5760\tx7200\qc +\cf0 Contributors to XFree86 4.4: \f1\b0 \ \pard\tx1440\tx2880\tx4320\tx5760\tx7200\ql\qnatural \cf0 John Harper\ @@ -149,4 +160,4 @@ Dave Zarzycki\ \f1\i0 \ Torrey T. Lyons\ -\f2\i Int\'8egration dans le projet XFree86 pour la version 4.0.2}
\ No newline at end of file +\f2\i Int\'8egration dans le projet XFree86 pour la version 4.0.2} diff --git a/hw/darwin/bundle/German.lproj/Credits.rtf b/hw/darwin/bundle/German.lproj/Credits.rtf index 32c64f026..5043b47f0 100644 --- a/hw/darwin/bundle/German.lproj/Credits.rtf +++ b/hw/darwin/bundle/German.lproj/Credits.rtf @@ -5,7 +5,18 @@ \vieww5160\viewh6300\viewkind0 \pard\tx1440\tx2880\tx4320\tx5760\tx7200\qc -\f0\b\fs24 \cf0 Contributors to XFree86 4.4: +\f0\b\fs24 \cf0 Contributors to X.Org Foundation Release: +\f1\b0 \ +\pard\tx1440\tx2880\tx4320\tx5760\tx7200\ql\qnatural +\cf0 Kaleb KEITHLEY\ + +\f2\i Working Left and Right Meta (Command), Alt, Control, and Shift keys +\f1\i0 \ +\pard\tx1440\tx2880\tx4320\tx5760\tx7200\ql\qnatural + +\f0\b \cf0 \ +\pard\tx1440\tx2880\tx4320\tx5760\tx7200\qc +\cf0 Contributors to XFree86 4.4: \f1\b0 \ \pard\tx1440\tx2880\tx4320\tx5760\tx7200\ql\qnatural \cf0 John Harper\ @@ -151,4 +162,4 @@ Dave Zarzycki\ \f1\i0 \ Torrey T. Lyons\ -\f2\i Integration into XFree86 Project for 4.0.2}
\ No newline at end of file +\f2\i Integration into XFree86 Project for 4.0.2} diff --git a/hw/darwin/bundle/Japanese.lproj/Credits.rtf b/hw/darwin/bundle/Japanese.lproj/Credits.rtf index a7d24c2a6..0288c29a2 100644 --- a/hw/darwin/bundle/Japanese.lproj/Credits.rtf +++ b/hw/darwin/bundle/Japanese.lproj/Credits.rtf @@ -5,7 +5,18 @@ \vieww13980\viewh11160\viewkind0 \pard\tx1440\tx2880\tx4320\tx5760\tx7200\qc -\f0\b\fs24 \cf0 Contributors to XFree86 4.4: +\f0\b\fs24 \cf0 Contributors to X.Org Foundation Release: +\f1\b0 \ +\pard\tx1440\tx2880\tx4320\tx5760\tx7200\ql\qnatural +\cf0 Kaleb KEITHLEY\ + +\f2\i Working Left and Right Meta (Command), Alt, Control, and Shift keys +\f1\i0 \ +\pard\tx1440\tx2880\tx4320\tx5760\tx7200\ql\qnatural + +\f0\b \cf0 \ +\pard\tx1440\tx2880\tx4320\tx5760\tx7200\qc +\cf0 Contributors to XFree86 4.4: \f1\b0 \ \pard\tx1440\tx2880\tx4320\tx5760\tx7200\ql\qnatural \cf0 John Harper @@ -164,4 +175,4 @@ Dave Zarzycki\ \f1 \ Torrey T. Lyons\ XFree86 4.0.2 -\f3 \'83\'76\'83\'8d\'83\'57\'83\'46\'83\'4e\'83\'67\'82\'d6\'82\'cc\'93\'9d\'8d\'87}
\ No newline at end of file +\f3 \'83\'76\'83\'8d\'83\'57\'83\'46\'83\'4e\'83\'67\'82\'d6\'82\'cc\'93\'9d\'8d\'87} diff --git a/hw/darwin/bundle/Portuguese.lproj/Credits.rtf b/hw/darwin/bundle/Portuguese.lproj/Credits.rtf index 56a287ca5..60ad438d3 100644 --- a/hw/darwin/bundle/Portuguese.lproj/Credits.rtf +++ b/hw/darwin/bundle/Portuguese.lproj/Credits.rtf @@ -5,7 +5,18 @@ \vieww5140\viewh4980\viewkind0 \pard\tx1440\tx2880\tx4320\tx5760\tx7200\qc -\f0\b\fs24 \cf0 Contributors to XFree86 4.4: +\f0\b\fs24 \cf0 Contributors to X.Org Foundation Release: +\f1\b0 \ +\pard\tx1440\tx2880\tx4320\tx5760\tx7200\ql\qnatural +\cf0 Kaleb KEITHLEY\ + +\f2\i Working Left and Right Meta (Command), Alt, Control, and Shift keys +\f1\i0 \ +\pard\tx1440\tx2880\tx4320\tx5760\tx7200\ql\qnatural + +\f0\b \cf0 \ +\pard\tx1440\tx2880\tx4320\tx5760\tx7200\qc +\cf0 Contributors to XFree86 4.4: \f1\b0 \ \pard\tx1440\tx2880\tx4320\tx5760\tx7200\ql\qnatural \cf0 John Harper\ @@ -156,4 +167,4 @@ Dave Zarzycki\ \f1\i0 \ Torrey T. Lyons\ -\f2\i Integra\'8d\'8bo dentro do Projeto XFree86 na vers\'8bo 4.0.2}
\ No newline at end of file +\f2\i Integra\'8d\'8bo dentro do Projeto XFree86 na vers\'8bo 4.0.2} diff --git a/hw/darwin/bundle/Spanish.lproj/Credits.rtf b/hw/darwin/bundle/Spanish.lproj/Credits.rtf index 32c64f026..5043b47f0 100644 --- a/hw/darwin/bundle/Spanish.lproj/Credits.rtf +++ b/hw/darwin/bundle/Spanish.lproj/Credits.rtf @@ -5,7 +5,18 @@ \vieww5160\viewh6300\viewkind0 \pard\tx1440\tx2880\tx4320\tx5760\tx7200\qc -\f0\b\fs24 \cf0 Contributors to XFree86 4.4: +\f0\b\fs24 \cf0 Contributors to X.Org Foundation Release: +\f1\b0 \ +\pard\tx1440\tx2880\tx4320\tx5760\tx7200\ql\qnatural +\cf0 Kaleb KEITHLEY\ + +\f2\i Working Left and Right Meta (Command), Alt, Control, and Shift keys +\f1\i0 \ +\pard\tx1440\tx2880\tx4320\tx5760\tx7200\ql\qnatural + +\f0\b \cf0 \ +\pard\tx1440\tx2880\tx4320\tx5760\tx7200\qc +\cf0 Contributors to XFree86 4.4: \f1\b0 \ \pard\tx1440\tx2880\tx4320\tx5760\tx7200\ql\qnatural \cf0 John Harper\ @@ -151,4 +162,4 @@ Dave Zarzycki\ \f1\i0 \ Torrey T. Lyons\ -\f2\i Integration into XFree86 Project for 4.0.2}
\ No newline at end of file +\f2\i Integration into XFree86 Project for 4.0.2} diff --git a/hw/darwin/bundle/Swedish.lproj/Credits.rtf b/hw/darwin/bundle/Swedish.lproj/Credits.rtf index 32c64f026..5043b47f0 100644 --- a/hw/darwin/bundle/Swedish.lproj/Credits.rtf +++ b/hw/darwin/bundle/Swedish.lproj/Credits.rtf @@ -5,7 +5,18 @@ \vieww5160\viewh6300\viewkind0 \pard\tx1440\tx2880\tx4320\tx5760\tx7200\qc -\f0\b\fs24 \cf0 Contributors to XFree86 4.4: +\f0\b\fs24 \cf0 Contributors to X.Org Foundation Release: +\f1\b0 \ +\pard\tx1440\tx2880\tx4320\tx5760\tx7200\ql\qnatural +\cf0 Kaleb KEITHLEY\ + +\f2\i Working Left and Right Meta (Command), Alt, Control, and Shift keys +\f1\i0 \ +\pard\tx1440\tx2880\tx4320\tx5760\tx7200\ql\qnatural + +\f0\b \cf0 \ +\pard\tx1440\tx2880\tx4320\tx5760\tx7200\qc +\cf0 Contributors to XFree86 4.4: \f1\b0 \ \pard\tx1440\tx2880\tx4320\tx5760\tx7200\ql\qnatural \cf0 John Harper\ @@ -151,4 +162,4 @@ Dave Zarzycki\ \f1\i0 \ Torrey T. Lyons\ -\f2\i Integration into XFree86 Project for 4.0.2}
\ No newline at end of file +\f2\i Integration into XFree86 Project for 4.0.2} diff --git a/hw/darwin/bundle/ko.lproj/Credits.rtf b/hw/darwin/bundle/ko.lproj/Credits.rtf index 32c64f026..5043b47f0 100644 --- a/hw/darwin/bundle/ko.lproj/Credits.rtf +++ b/hw/darwin/bundle/ko.lproj/Credits.rtf @@ -5,7 +5,18 @@ \vieww5160\viewh6300\viewkind0 \pard\tx1440\tx2880\tx4320\tx5760\tx7200\qc -\f0\b\fs24 \cf0 Contributors to XFree86 4.4: +\f0\b\fs24 \cf0 Contributors to X.Org Foundation Release: +\f1\b0 \ +\pard\tx1440\tx2880\tx4320\tx5760\tx7200\ql\qnatural +\cf0 Kaleb KEITHLEY\ + +\f2\i Working Left and Right Meta (Command), Alt, Control, and Shift keys +\f1\i0 \ +\pard\tx1440\tx2880\tx4320\tx5760\tx7200\ql\qnatural + +\f0\b \cf0 \ +\pard\tx1440\tx2880\tx4320\tx5760\tx7200\qc +\cf0 Contributors to XFree86 4.4: \f1\b0 \ \pard\tx1440\tx2880\tx4320\tx5760\tx7200\ql\qnatural \cf0 John Harper\ @@ -151,4 +162,4 @@ Dave Zarzycki\ \f1\i0 \ Torrey T. Lyons\ -\f2\i Integration into XFree86 Project for 4.0.2}
\ No newline at end of file +\f2\i Integration into XFree86 Project for 4.0.2} diff --git a/hw/darwin/darwinEvents.c b/hw/darwin/darwinEvents.c index ba1ec8fc2..34cd94195 100644 --- a/hw/darwin/darwinEvents.c +++ b/hw/darwin/darwinEvents.c @@ -3,6 +3,7 @@ */ /* Copyright (c) 2002 Torrey T. Lyons. All Rights Reserved. +Copyright 2004 Kaleb S. KEITHLEY. All Rights Reserved. This file is based on mieq.c by Keith Packard, which contains the following copyright: @@ -108,16 +109,20 @@ static void DarwinUpdateModifiers( DarwinPressModifierMask(xe, NX_ALPHASHIFTMASK); } if (flags & NX_COMMANDMASK) { - DarwinPressModifierMask(xe, NX_COMMANDMASK); + DarwinPressModifierMask(xe, + flags & (NX_DEVICELCMDKEYMASK|NX_DEVICERCMDKEYMASK)); } if (flags & NX_CONTROLMASK) { - DarwinPressModifierMask(xe, NX_CONTROLMASK); + DarwinPressModifierMask(xe, + flags & (NX_DEVICELCTLKEYMASK|NX_DEVICERCTLKEYMASK)); } if (flags & NX_ALTERNATEMASK) { - DarwinPressModifierMask(xe, NX_ALTERNATEMASK); + DarwinPressModifierMask(xe, + flags & (NX_DEVICELALTKEYMASK|NX_DEVICERALTKEYMASK)); } if (flags & NX_SHIFTMASK) { - DarwinPressModifierMask(xe, NX_SHIFTMASK); + DarwinPressModifierMask(xe, + flags & (NX_DEVICELSHIFTKEYMASK|NX_DEVICERSHIFTKEYMASK)); } if (flags & NX_SECONDARYFNMASK) { DarwinPressModifierMask(xe, NX_SECONDARYFNMASK); diff --git a/hw/darwin/darwinKeyboard.c b/hw/darwin/darwinKeyboard.c index 57bf5fa3d..1f9312bbd 100644 --- a/hw/darwin/darwinKeyboard.c +++ b/hw/darwin/darwinKeyboard.c @@ -2,6 +2,7 @@ // // Keyboard support for the Darwin X Server // +// Copyright 2004 Kaleb S. KEITHLEY. All Rights Reserved. // Copyright (c) 2001-2003 Torrey T. Lyons. All Rights Reserved. // Copyright (c) 2003 Apple Computer, Inc. All Rights Reserved. // @@ -684,7 +685,7 @@ DarwinBuildModifierMaps( break; case XK_Shift_R: - info->modifierKeycodes[NX_MODIFIERKEY_SHIFT][1] = i; + info->modifierKeycodes[NX_MODIFIERKEY_RSHIFT][0] = i; info->modMap[MIN_KEYCODE + i] = ShiftMask; break; @@ -694,7 +695,7 @@ DarwinBuildModifierMaps( break; case XK_Control_R: - info->modifierKeycodes[NX_MODIFIERKEY_CONTROL][1] = i; + info->modifierKeycodes[NX_MODIFIERKEY_RCONTROL][0] = i; info->modMap[MIN_KEYCODE + i] = ControlMask; break; @@ -709,7 +710,7 @@ DarwinBuildModifierMaps( break; case XK_Alt_R: - info->modifierKeycodes[NX_MODIFIERKEY_ALTERNATE][1] = i; + info->modifierKeycodes[NX_MODIFIERKEY_RALTERNATE][0] = i; info->modMap[MIN_KEYCODE + i] = Mod1Mask; break; @@ -723,7 +724,7 @@ DarwinBuildModifierMaps( break; case XK_Meta_R: - info->modifierKeycodes[NX_MODIFIERKEY_COMMAND][1] = i; + info->modifierKeycodes[NX_MODIFIERKEY_RCOMMAND][0] = i; info->modMap[MIN_KEYCODE + i] = Mod2Mask; break; @@ -750,11 +751,6 @@ DarwinBuildModifierMaps( break; } } - -#if ALT_IS_MODE_SWITCH - if (k[0] == XK_Alt_L || k[0] == XK_Alt_R) - k[0] = XK_Mode_switch; -#endif } } @@ -844,14 +840,22 @@ int DarwinModifierNXKeycodeToNXKey(unsigned char keycode, int *outSide) int DarwinModifierNXMaskToNXKey(int mask) { switch (mask) { - case NX_ALPHASHIFTMASK: return NX_MODIFIERKEY_ALPHALOCK; - case NX_SHIFTMASK: return NX_MODIFIERKEY_SHIFT; - case NX_CONTROLMASK: return NX_MODIFIERKEY_CONTROL; - case NX_ALTERNATEMASK: return NX_MODIFIERKEY_ALTERNATE; - case NX_COMMANDMASK: return NX_MODIFIERKEY_COMMAND; - case NX_NUMERICPADMASK: return NX_MODIFIERKEY_NUMERICPAD; - case NX_HELPMASK: return NX_MODIFIERKEY_HELP; - case NX_SECONDARYFNMASK: return NX_MODIFIERKEY_SECONDARYFN; + case NX_ALPHASHIFTMASK: return NX_MODIFIERKEY_ALPHALOCK; + case NX_SHIFTMASK: return NX_MODIFIERKEY_SHIFT; + case NX_DEVICELSHIFTKEYMASK: return NX_MODIFIERKEY_SHIFT; + case NX_DEVICERSHIFTKEYMASK: return NX_MODIFIERKEY_RSHIFT; + case NX_CONTROLMASK: return NX_MODIFIERKEY_CONTROL; + case NX_DEVICELCTLKEYMASK: return NX_MODIFIERKEY_CONTROL; + case NX_DEVICERCTLKEYMASK: return NX_MODIFIERKEY_RCONTROL; + case NX_ALTERNATEMASK: return NX_MODIFIERKEY_ALTERNATE; + case NX_DEVICELALTKEYMASK: return NX_MODIFIERKEY_ALTERNATE; + case NX_DEVICERALTKEYMASK: return NX_MODIFIERKEY_RALTERNATE; + case NX_COMMANDMASK: return NX_MODIFIERKEY_COMMAND; + case NX_DEVICELCMDKEYMASK: return NX_MODIFIERKEY_COMMAND; + case NX_DEVICERCMDKEYMASK: return NX_MODIFIERKEY_RCOMMAND; + case NX_NUMERICPADMASK: return NX_MODIFIERKEY_NUMERICPAD; + case NX_HELPMASK: return NX_MODIFIERKEY_HELP; + case NX_SECONDARYFNMASK: return NX_MODIFIERKEY_SECONDARYFN; } return -1; } @@ -865,9 +869,13 @@ int DarwinModifierNXKeyToNXMask(int key) switch (key) { case NX_MODIFIERKEY_ALPHALOCK: return NX_ALPHASHIFTMASK; case NX_MODIFIERKEY_SHIFT: return NX_SHIFTMASK; + case NX_MODIFIERKEY_RSHIFT: return NX_SHIFTMASK; case NX_MODIFIERKEY_CONTROL: return NX_CONTROLMASK; + case NX_MODIFIERKEY_RCONTROL: return NX_CONTROLMASK; case NX_MODIFIERKEY_ALTERNATE: return NX_ALTERNATEMASK; + case NX_MODIFIERKEY_RALTERNATE: return NX_ALTERNATEMASK; case NX_MODIFIERKEY_COMMAND: return NX_COMMANDMASK; + case NX_MODIFIERKEY_RCOMMAND: return NX_COMMANDMASK; case NX_MODIFIERKEY_NUMERICPAD: return NX_NUMERICPADMASK; case NX_MODIFIERKEY_HELP: return NX_HELPMASK; case NX_MODIFIERKEY_SECONDARYFN: return NX_SECONDARYFNMASK; |