aboutsummaryrefslogtreecommitdiff
path: root/src/evdev.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/evdev.c')
-rw-r--r--src/evdev.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/src/evdev.c b/src/evdev.c
index 329a874..ba8f862 100644
--- a/src/evdev.c
+++ b/src/evdev.c
@@ -200,6 +200,7 @@ EvdevProc(DeviceIntPtr device, int what)
RemoveEnabledDevice (pInfo->fd);
xf86RemoveSIGIOHandler (pInfo->fd);
close (pInfo->fd);
+ pInfo->fd = -1;
if (pEvdev->state.axes)
EvdevAxesOff (device);
@@ -230,6 +231,7 @@ EvdevSwitchMode (ClientPtr client, DeviceIntPtr device, int mode)
{
case Absolute:
case Relative:
+ xf86Msg(X_INFO, "%s: Switching mode to %d.\n", pInfo->name, mode);
if (state->abs)
state->mode = mode;
else
@@ -302,9 +304,13 @@ EvdevNew(evdevDriverPtr driver, evdevDevicePtr device)
}
- /* XXX: Note, the order of these is important. */
- EvdevAxesNew (pInfo);
- EvdevBtnNew (pInfo);
+ /* XXX: Note, the order of these is (maybe) still important. */
+ EvdevAxesNew0 (pInfo);
+ EvdevBtnNew0 (pInfo);
+
+ EvdevAxesNew1 (pInfo);
+ EvdevBtnNew1 (pInfo);
+
if (device->state.can_grab)
EvdevKeyNew (pInfo);