evdev 2.8.1

This commit is contained in:
Peter Hutterer 2013-07-11 13:32:22 +10:00
parent 30f528a97a
commit 98e03eda3a
4 changed files with 7 additions and 101 deletions

1
.gitignore vendored
View File

@ -16,3 +16,4 @@ xf86-input-evdev-20100823.tar.bz2
/xf86-input-evdev-2.7.3.tar.bz2
/xf86-input-evdev-20130214.tar.bz2
/xf86-input-evdev-2.8.0.tar.bz2
/xf86-input-evdev-2.8.1.tar.bz2

View File

@ -1,95 +0,0 @@
From 4116cb799a8cb16c6b721ec545e875f67721bb94 Mon Sep 17 00:00:00 2001
From: Peter Hutterer <peter.hutterer@who-t.net>
Date: Tue, 2 Apr 2013 14:12:26 +1000
Subject: [PATCH evdev] Add option TypeName (#62831)
evdev tries to assign the right XI 1.x type-name based on various device
capabilities. In some cases, that fails. e.g. the Mionix Naos 5000 mouse
looks like a keyboard. And we assign a keyboard type in that case since
there are plenty of keyboards that also advertise some axes or others.
Add a new option TypeName to allow for system-wide configuration of such
devices in a quirks file.
This can also be used to address #55867
X.Org Bug 62831 <http://bugs.freedesktop.org/show_bug.cgi?id=62831>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
---
man/evdev.man | 6 ++++++
src/evdev.c | 13 +++++++++++++
src/evdev.h | 2 ++
3 files changed, 21 insertions(+)
diff --git a/man/evdev.man b/man/evdev.man
index 2709d7a..220dd13 100644
--- a/man/evdev.man
+++ b/man/evdev.man
@@ -220,6 +220,12 @@ is mapped to the negative Y axis motion and button number
.I N2
is mapped to the positive Y axis motion. Default: "4 5". Property:
"Evdev Wheel Emulation Axes".
+.TP 7
+.BI "Option \*qTypeName\*q \*q"type"\*q
+Specify the X Input 1.x type (see XListInputDevices(__libmansuffix__)).
+There is rarely a need to use this option, evdev will guess the device type
+based on the device's capabilities. This option is provided for devices that
+need quirks.
.SH SUPPORTED PROPERTIES
The following properties are provided by the
diff --git a/src/evdev.c b/src/evdev.c
index 235db71..08c5384 100644
--- a/src/evdev.c
+++ b/src/evdev.c
@@ -2554,6 +2554,9 @@ EvdevUnInit(InputDriverPtr drv, InputInfoPtr pInfo, int flags)
/* Release string allocated in EvdevOpenDevice. */
free(pEvdev->device);
pEvdev->device = NULL;
+
+ free(pEvdev->type_name);
+ pEvdev->type_name = NULL;
}
xf86DeleteInput(pInfo, flags);
}
@@ -2585,6 +2588,8 @@ EvdevAlloc(void)
pEvdev->rel_axis_map[0] = 0;
pEvdev->rel_axis_map[1] = 1;
+ pEvdev->type_name = NULL;
+
return pEvdev;
}
@@ -2629,6 +2634,14 @@ EvdevPreInit(InputDriverPtr drv, InputInfoPtr pInfo, int flags)
goto error;
}
+ /* Overwrite type_name with custom-defined one (#62831).
+ Note: pInfo->type_name isn't freed so we need to manually do this
+ */
+ pEvdev->type_name = xf86SetStrOption(pInfo->options,
+ "TypeName",
+ pInfo->type_name);
+ pInfo->type_name = pEvdev->type_name;
+
EvdevAddDevice(pInfo);
if (pEvdev->flags & EVDEV_BUTTON_EVENTS)
diff --git a/src/evdev.h b/src/evdev.h
index 63c3bfa..6ae389c 100644
--- a/src/evdev.h
+++ b/src/evdev.h
@@ -251,6 +251,8 @@ typedef struct {
EventQueueRec queue[EVDEV_MAXQUEUE];
enum fkeymode fkeymode;
+
+ char *type_name;
} EvdevRec, *EvdevPtr;
/* Event posting functions */
--
1.8.1.4

View File

@ -1 +1 @@
e9bef0779d364cb588aa93a0ee6736c8 xf86-input-evdev-2.8.0.tar.bz2
cc1f59e22edfbc69daecf01e43a8dba3 xf86-input-evdev-2.8.1.tar.bz2

View File

@ -7,8 +7,8 @@
Summary: Xorg X11 evdev input driver
Name: xorg-x11-drv-evdev
Version: 2.8.0
Release: 3%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist}
Version: 2.8.1
Release: 1%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist}
URL: http://www.x.org
License: MIT
Group: User Interface/X Hardware Support
@ -21,8 +21,6 @@ Source2: commitid
Source0: ftp://ftp.x.org/pub/individual/driver/%{tarball}-%{version}.tar.bz2
%endif
Patch01: 0001-Add-option-TypeName-62831.patch
ExcludeArch: s390 s390x
BuildRequires: autoconf automake libtool
@ -40,7 +38,6 @@ X.Org X11 evdev input driver.
%prep
%setup -q -n %{tarball}-%{?gitdate:%{gitdate}}%{!?gitdate:%{version}}
%patch01 -p1
%build
autoreconf --force -v --install || exit 1
@ -82,6 +79,9 @@ X.Org X11 evdev input driver development files.
%changelog
* Thu Jul 11 2013 Peter Hutterer <peter.hutterer@redhat.com> 2.8.1-1
- evdev 2.8.1
* Mon Apr 15 2013 Peter Hutterer <peter.hutterer@redhat.com> 2.8.0-3
- With the patch file