summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeremy Huddleston <jeremyhu@apple.com>2010-02-10 15:52:14 -0800
committerJeremy Huddleston <jeremyhu@apple.com>2010-03-11 22:27:38 -0800
commit5172253bae3b9867118c6717434e73c173acd5e9 (patch)
treee4e1bd52317d051a4894e922dcf3b90fcc29b9a6
parentb117bc7a441bec8f61610fb384d747112f73d236 (diff)
XQuartz: Use an empty xkb keymap by default
Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
-rw-r--r--hw/xquartz/darwin.c6
-rw-r--r--hw/xquartz/quartzKeyboard.c16
2 files changed, 11 insertions, 11 deletions
diff --git a/hw/xquartz/darwin.c b/hw/xquartz/darwin.c
index 3feacdc05..066f5a596 100644
--- a/hw/xquartz/darwin.c
+++ b/hw/xquartz/darwin.c
@@ -45,6 +45,7 @@
#include "site.h"
#include "globals.h"
#include "dix.h"
+#include "xkbsrv.h"
#include <X11/extensions/XI.h>
#include <X11/extensions/XIproto.h>
@@ -461,6 +462,11 @@ int DarwinParseModifierList(const char *constmodifiers, int separatelr)
*/
void InitInput( int argc, char **argv )
{
+ XkbRMLVOSet rmlvo = { .rules = "base", .model = "empty", .layout = "empty",
+ .variant = NULL, .options = NULL };
+ /* We need to really have rules... or something... */
+ XkbSetRulesDflts(&rmlvo);
+
darwinKeyboard = AddInputDevice(serverClient, DarwinKeybdProc, TRUE);
RegisterKeyboardDevice( darwinKeyboard );
darwinKeyboard->name = strdup("keyboard");
diff --git a/hw/xquartz/quartzKeyboard.c b/hw/xquartz/quartzKeyboard.c
index 3b4eac31c..7e36a9aa3 100644
--- a/hw/xquartz/quartzKeyboard.c
+++ b/hw/xquartz/quartzKeyboard.c
@@ -301,9 +301,6 @@ void DarwinKeyboardInit(DeviceIntPtr pDev) {
// for a kIOHIDParamConnectType connection.
assert(darwinParamConnect = NXOpenEventStatus());
- /* We need to really have rules... or something... */
- //XkbSetRulesDflts("base", "pc105", "us", NULL, NULL);
-
InitKeyboardDeviceStruct(pDev, NULL, DarwinKeyboardBell, DarwinChangeKeyboardControl);
DarwinKeyboardReloadHandler();
@@ -775,12 +772,9 @@ Bool QuartzReadSystemKeymap(darwinKeyboardInfo *info) {
#endif
}
- // There seems to be an issue with this in 1.5+, shift-space is not
- // producing space, it's sending NoSymbol... ?
- //if (k[3] == k[2]) k[3] = NoSymbol;
- //if (k[1] == k[0]) k[1] = NoSymbol;
- //if (k[0] == k[2] && k[1] == k[3]) k[2] = k[3] = NoSymbol;
- //if (k[3] == k[0] && k[2] == k[1] && k[2] == NoSymbol) k[3] = NoSymbol;
+ if (k[3] == k[2]) k[3] = NoSymbol;
+ if (k[1] == k[0]) k[1] = NoSymbol;
+ if (k[0] == k[2] && k[1] == k[3]) k[2] = k[3] = NoSymbol;
}
/* Fix up some things that are normally missing.. */
@@ -791,7 +785,7 @@ Bool QuartzReadSystemKeymap(darwinKeyboardInfo *info) {
if (k[0] == NoSymbol && k[1] == NoSymbol
&& k[2] == NoSymbol && k[3] == NoSymbol)
- k[0] = k[1] = k[2] = k[3] = known_keys[i].keysym;
+ k[0] = known_keys[i].keysym;
}
}
@@ -804,7 +798,7 @@ Bool QuartzReadSystemKeymap(darwinKeyboardInfo *info) {
k = info->keyMap + known_numeric_keys[i].keycode * GLYPHS_PER_KEY;
if (k[0] == known_numeric_keys[i].normal)
- k[0] = k[1] = k[2] = k[3] = known_numeric_keys[i].keypad;
+ k[0] = known_numeric_keys[i].keypad;
}
}