diff options
author | Ian Romanick <idr@us.ibm.com> | 2007-08-23 18:19:17 -0700 |
---|---|---|
committer | Ian Romanick <idr@us.ibm.com> | 2007-08-23 18:19:17 -0700 |
commit | 8b6b40b7271acd81a9548f502c18f46f3b640640 (patch) | |
tree | 1462cb63501a8bdd8845d7c62e038b6a86b78fd5 /hw/kdrive/ephyr/ephyrinit.c | |
parent | ab7a6d860d4a275a810a64b1ba7b13726ed10575 (diff) | |
parent | 3305d17195e3a0a5555300555bd7703312fa489f (diff) | |
download | xserver-pci-rework.tar.gz |
Merge branch 'master' of git+ssh://git.freedesktop.org/git/xorg/xserver into pci-reworkpci-rework
Conflicts:
hw/xfree86/common/xf86.h
hw/xfree86/common/xf86Init.c
hw/xfree86/common/xf86pciBus.c
hw/xfree86/int10/generic.c
hw/xfree86/int10/helper_exec.c
hw/xfree86/loader/xf86sym.c
hw/xfree86/os-support/bus/Pci.c
hw/xfree86/os-support/bus/Pci.h
hw/xfree86/os-support/bus/linuxPci.c
hw/xfree86/os-support/linux/int10/linux.c
Diffstat (limited to 'hw/kdrive/ephyr/ephyrinit.c')
-rw-r--r-- | hw/kdrive/ephyr/ephyrinit.c | 35 |
1 files changed, 24 insertions, 11 deletions
diff --git a/hw/kdrive/ephyr/ephyrinit.c b/hw/kdrive/ephyr/ephyrinit.c index 45e2d3067..a76da03b4 100644 --- a/hw/kdrive/ephyr/ephyrinit.c +++ b/hw/kdrive/ephyr/ephyrinit.c @@ -30,6 +30,8 @@ extern Window EphyrPreExistingHostWin; extern Bool EphyrWantGrayScale; +extern Bool kdHasPointer; +extern Bool kdHasKbd; void InitCard (char *name) @@ -54,19 +56,30 @@ InitInput (int argc, char **argv) KdKeyboardInfo *ki; KdPointerInfo *pi; - ki = KdNewKeyboard(); - if (!ki) - FatalError("Couldn't create Xephyr keyboard\n"); - ki->driver = &EphyrKeyboardDriver; KdAddKeyboardDriver(&EphyrKeyboardDriver); - KdAddKeyboard(ki); - - pi = KdNewPointer(); - if (!pi) - FatalError("Couldn't create Xephyr pointer\n"); - pi->driver = &EphyrMouseDriver; +#ifdef linux + KdAddKeyboardDriver(&LinuxEvdevKeyboardDriver); +#endif KdAddPointerDriver(&EphyrMouseDriver); - KdAddPointer(pi); +#ifdef linux + KdAddPointerDriver(&LinuxEvdevMouseDriver); +#endif + + if (!kdHasKbd) { + ki = KdNewKeyboard(); + if (!ki) + FatalError("Couldn't create Xephyr keyboard\n"); + ki->driver = &EphyrKeyboardDriver; + KdAddKeyboard(ki); + } + + if (!kdHasPointer) { + pi = KdNewPointer(); + if (!pi) + FatalError("Couldn't create Xephyr pointer\n"); + pi->driver = &EphyrMouseDriver; + KdAddPointer(pi); + } KdInitInput(); } |