aboutsummaryrefslogtreecommitdiff
path: root/src/evdev.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/evdev.c')
-rw-r--r--src/evdev.c24
1 files changed, 17 insertions, 7 deletions
diff --git a/src/evdev.c b/src/evdev.c
index f128a81..1ea74c0 100644
--- a/src/evdev.c
+++ b/src/evdev.c
@@ -117,9 +117,13 @@ EvdevReadInput(InputInfoPtr pInfo)
case EV_SYN:
if (ev.code == SYN_REPORT) {
- EvdevAxesSyn (pInfo);
- /* EvdevBtnSyn (pInfo); */
- /* EvdevKeySyn (pInfo); */
+ EvdevAxesSynRep (pInfo);
+ /* EvdevBtnSynRep (pInfo); */
+ /* EvdevKeySynRep (pInfo); */
+ } else if (ev.code == SYN_CONFIG) {
+ EvdevAxesSynCfg (pInfo);
+ /* EvdevBtnSynCfg (pInfo); */
+ /* EvdevKeySynCfg (pInfo); */
}
break;
}
@@ -200,6 +204,7 @@ EvdevProc(DeviceIntPtr device, int what)
RemoveEnabledDevice (pInfo->fd);
xf86RemoveSIGIOHandler (pInfo->fd);
close (pInfo->fd);
+ pInfo->fd = -1;
if (pEvdev->state.axes)
EvdevAxesOff (device);
@@ -227,6 +232,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
@@ -297,9 +303,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);
@@ -470,7 +480,7 @@ static XF86ModuleVersionInfo EvdevVersionRec =
MODULEVENDORSTRING,
MODINFOSTRING1,
MODINFOSTRING2,
- 0, /* Missing from SDK: XORG_VERSION_CURRENT, */
+ XORG_VERSION_CURRENT,
1, 1, 0,
ABI_CLASS_XINPUT,
ABI_XINPUT_VERSION,