evdev 2.7.0

This commit is contained in:
Peter Hutterer 2012-03-07 20:45:18 +10:00
parent e2ff0e6263
commit d6159fc6d2
4 changed files with 9 additions and 74 deletions

1
.gitignore vendored
View File

@ -10,3 +10,4 @@ xf86-input-evdev-20100823.tar.bz2
/xf86-input-evdev-20111110.tar.bz2
/xf86-input-evdev-20120103.tar.bz2
/xf86-input-evdev-20120118.tar.bz2
/xf86-input-evdev-2.7.0.tar.bz2

View File

@ -1,65 +0,0 @@
From 7959e63ecff07a4e0c3e2463b1697739a250a9ec Mon Sep 17 00:00:00 2001
From: Peter Hutterer <peter.hutterer@who-t.net>
Date: Wed, 25 Jan 2012 16:03:34 +1000
Subject: [PATCH] Only force REL_X/Y if no ABS_X/Y exists
5c5b2c8db851df7921cedd888222a6630a007fd8 added forced x/y axes if a device
has any axes of the same mode. This was too broad a brush, some devices have
a relative wheel but absolute x/y axes and would now get misdetected as
purely relative device.
Only force relative axes if a device no rel x/y _and_ no abs x/y.
Reproducible: virtual machine with QEMU USB Tablet will stop working
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
---
src/evdev.c | 18 ++++++++++--------
1 files changed, 10 insertions(+), 8 deletions(-)
diff --git a/src/evdev.c b/src/evdev.c
index 32fe38b..a6f9a59 100644
--- a/src/evdev.c
+++ b/src/evdev.c
@@ -2125,6 +2125,13 @@ EvdevProbe(InputInfoPtr pInfo)
}
}
+ for (i = 0; i < ABS_MAX; i++) {
+ if (EvdevBitIsSet(pEvdev->abs_bitmask, i)) {
+ has_abs_axes = TRUE;
+ break;
+ }
+ }
+
if (has_rel_axes) {
if (EvdevBitIsSet(pEvdev->rel_bitmask, REL_WHEEL) ||
EvdevBitIsSet(pEvdev->rel_bitmask, REL_HWHEEL) ||
@@ -2146,7 +2153,9 @@ EvdevProbe(InputInfoPtr pInfo)
if (EvdevBitIsSet(pEvdev->rel_bitmask, REL_X) &&
EvdevBitIsSet(pEvdev->rel_bitmask, REL_Y)) {
xf86IDrvMsg(pInfo, X_PROBED, "Found x and y relative axes\n");
- } else
+ } else if (!has_abs_axes ||
+ !EvdevBitIsSet(pEvdev->abs_bitmask, ABS_X) ||
+ !EvdevBitIsSet(pEvdev->abs_bitmask, ABS_Y))
EvdevForceXY(pInfo, Relative);
} else {
xf86IDrvMsg(pInfo, X_INFO, "Relative axes present but ignored.\n");
@@ -2154,13 +2163,6 @@ EvdevProbe(InputInfoPtr pInfo)
}
}
- for (i = 0; i < ABS_MAX; i++) {
- if (EvdevBitIsSet(pEvdev->abs_bitmask, i)) {
- has_abs_axes = TRUE;
- break;
- }
- }
-
#ifdef MULTITOUCH
for (i = ABS_MT_SLOT; i < ABS_MAX; i++) {
if (EvdevBitIsSet(pEvdev->abs_bitmask, i)) {
--
1.7.7.5

View File

@ -1 +1 @@
5db9c9258a2085c5216ff570a2e6c826 xf86-input-evdev-20120118.tar.bz2
4449b2e94900e98d2f41c2f46dd0397e xf86-input-evdev-2.7.0.tar.bz2

View File

@ -2,13 +2,13 @@
%global moduledir %(pkg-config xorg-server --variable=moduledir )
%global driverdir %{moduledir}/input
%global gitdate 20120118
%global gitversion 9d9c9870c
#global gitdate 20120118
#global gitversion 9d9c9870c
Summary: Xorg X11 evdev input driver
Name: xorg-x11-drv-evdev
Version: 2.6.99.901
Release: 9%{?gitdate:.%{gitdate}git%{gitversion}}%{dist}
Version: 2.7.0
Release: 1%{?gitdate:.%{gitdate}git%{gitversion}}%{dist}
URL: http://www.x.org
License: MIT
Group: User Interface/X Hardware Support
@ -21,9 +21,6 @@ Source2: commitid
Source0: ftp://ftp.x.org/pub/individual/driver/%{tarball}-%{version}.tar.bz2
%endif
# Bug 784391 - 2.6.99.901-5 breaks mouse in F16 KVM guest
Patch01: 0001-Only-force-REL_X-Y-if-no-ABS_X-Y-exists.patch
ExcludeArch: s390 s390x
BuildRequires: autoconf automake libtool
@ -41,7 +38,6 @@ X.Org X11 evdev input driver.
%prep
%setup -q -n %{tarball}-%{?gitdate:%{gitdate}}%{!?gitdate:%{version}}
%patch01 -p1
%build
autoreconf -v --install || exit 1
@ -83,6 +79,9 @@ X.Org X11 evdev input driver development files.
%changelog
* Wed Mar 07 2012 Peter Hutterer <peter.hutterer@redhat.com> 2.7.0-1
- evdev 2.7.0
* Sat Feb 11 2012 Peter Hutterer <peter.hutterer@redhat.com> - 2.6.99.901-9.20120118git9d9c9870c
- ABI rebuild