summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDonnie Berkholz <dberkholz@gentoo.org>2009-03-10 17:09:08 +0000
committerDonnie Berkholz <dberkholz@gentoo.org>2009-03-10 17:09:08 +0000
commitb489e07c2a98ff30d4debb59bdc675a061144c72 (patch)
treedb424b080468b005508e10bdf5e224279edd6a97 /x11-drivers/xf86-input-evdev
parentInitial commit, ebuild by Svoop & Rambaldi. Taken from the VoiP overlay but H... (diff)
downloadgentoo-2-b489e07c2a98ff30d4debb59bdc675a061144c72.tar.gz
gentoo-2-b489e07c2a98ff30d4debb59bdc675a061144c72.tar.bz2
gentoo-2-b489e07c2a98ff30d4debb59bdc675a061144c72.zip
Fix autorepeat for <=xorg-server-1.5.
(Portage version: 2.1.6.7/cvs/Linux x86_64)
Diffstat (limited to 'x11-drivers/xf86-input-evdev')
-rw-r--r--x11-drivers/xf86-input-evdev/ChangeLog9
-rw-r--r--x11-drivers/xf86-input-evdev/files/2.2.0-Restore-repeat-filtering-for-server-1.5-and-earlier.patch42
-rw-r--r--x11-drivers/xf86-input-evdev/xf86-input-evdev-2.2.0-r1.ebuild36
3 files changed, 86 insertions, 1 deletions
diff --git a/x11-drivers/xf86-input-evdev/ChangeLog b/x11-drivers/xf86-input-evdev/ChangeLog
index e169bc5cceab..e514791ec0dd 100644
--- a/x11-drivers/xf86-input-evdev/ChangeLog
+++ b/x11-drivers/xf86-input-evdev/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for x11-drivers/xf86-input-evdev
# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/x11-drivers/xf86-input-evdev/ChangeLog,v 1.96 2009/03/09 23:00:24 dberkholz Exp $
+# $Header: /var/cvsroot/gentoo-x86/x11-drivers/xf86-input-evdev/ChangeLog,v 1.97 2009/03/10 17:09:08 dberkholz Exp $
+
+*xf86-input-evdev-2.2.0-r1 (10 Mar 2009)
+
+ 10 Mar 2009; Donnie Berkholz <dberkholz@gentoo.org>;
+ +files/2.2.0-Restore-repeat-filtering-for-server-1.5-and-earlier.patch,
+ +xf86-input-evdev-2.2.0-r1.ebuild:
+ Fix autorepeat for <=xorg-server-1.5.
*xf86-input-evdev-2.2.0 (09 Mar 2009)
diff --git a/x11-drivers/xf86-input-evdev/files/2.2.0-Restore-repeat-filtering-for-server-1.5-and-earlier.patch b/x11-drivers/xf86-input-evdev/files/2.2.0-Restore-repeat-filtering-for-server-1.5-and-earlier.patch
new file mode 100644
index 000000000000..01217bfb7d6e
--- /dev/null
+++ b/x11-drivers/xf86-input-evdev/files/2.2.0-Restore-repeat-filtering-for-server-1.5-and-earlier.patch
@@ -0,0 +1,42 @@
+From 7cdb200dbef87d10a455cc4fdc6d29bf3aacc1d8 Mon Sep 17 00:00:00 2001
+From: Peter Hutterer <peter.hutterer@who-t.net>
+Date: Tue, 10 Mar 2009 15:17:53 +1000
+Subject: [PATCH] Restore repeat-filtering for server 1.5 and earlier.
+
+Letting the server deal with key repeats is fine if we have server 1.6. For
+earlier servers, we need to pass on the repeat events (except for modifier
+keys).
+
+Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+Tested-by: Marty Jack <martyj19@comcast.net>
+---
+ src/evdev.c | 13 +++++++++++--
+ 1 files changed, 11 insertions(+), 2 deletions(-)
+
+diff --git a/src/evdev.c b/src/evdev.c
+index 04bce96..bc29ac9 100644
+--- a/src/evdev.c
++++ b/src/evdev.c
+@@ -263,8 +263,17 @@ PostKbdEvent(InputInfoPtr pInfo, struct input_event *ev, int value)
+ static char warned[KEY_CNT];
+
+ /* Filter all repeated events from device.
+- We'll do softrepeat in the server */
+- if (value == 2)
++ We'll do softrepeat in the server, but only since 1.6 */
++ if (value == 2
++#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) <= 2
++ && (ev->code == KEY_LEFTCTRL || ev->code == KEY_RIGHTCTRL ||
++ ev->code == KEY_LEFTSHIFT || ev->code == KEY_RIGHTSHIFT ||
++ ev->code == KEY_LEFTALT || ev->code == KEY_RIGHTALT ||
++ ev->code == KEY_LEFTMETA || ev->code == KEY_RIGHTMETA ||
++ ev->code == KEY_CAPSLOCK || ev->code == KEY_NUMLOCK ||
++ ev->code == KEY_SCROLLLOCK) /* XXX windows keys? */
++#endif
++ )
+ return;
+
+ if (code > 255)
+--
+1.6.1.3
+
diff --git a/x11-drivers/xf86-input-evdev/xf86-input-evdev-2.2.0-r1.ebuild b/x11-drivers/xf86-input-evdev/xf86-input-evdev-2.2.0-r1.ebuild
new file mode 100644
index 000000000000..88c084d1c79a
--- /dev/null
+++ b/x11-drivers/xf86-input-evdev/xf86-input-evdev-2.2.0-r1.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2009 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/x11-drivers/xf86-input-evdev/xf86-input-evdev-2.2.0-r1.ebuild,v 1.1 2009/03/10 17:09:08 dberkholz Exp $
+
+# Must be before x-modular eclass is inherited
+#SNAPSHOT="yes"
+
+inherit x-modular
+
+DESCRIPTION="Generic Linux input driver"
+KEYWORDS="~amd64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
+IUSE="hal"
+RDEPEND=">=x11-base/xorg-server-1.5.3
+ hal? ( >=sys-apps/hal-0.5.10 )"
+DEPEND="${RDEPEND}
+ || ( >=sys-kernel/linux-headers-2.6 >=sys-kernel/mips-headers-2.6 )
+ >=x11-proto/inputproto-1.4
+ x11-proto/randrproto
+ x11-proto/xproto"
+
+PATCHES="${FILESDIR}/${PV}-Restore-repeat-filtering-for-server-1.5-and-earlier.patch"
+
+pkg_postinst() {
+ x-modular_pkg_postinst
+ pkg_info
+}
+
+pkg_info() {
+ if use hal; then
+ elog "If your XKB (keyboard settings) stopped working,"
+ elog "you may uninstall this driver or move your XKB configuration."
+ elog "Download an example from http://dev.gentoo.org/~compnerd/temp/hal-config-examples/"
+ elog "(these will be installed with sys-apps/hal soon),"
+ elog "and drop it into /etc/hal/fdi/policy/"
+ fi
+}