- buttonmapping.patch: Don't check for IsXExtensionDevice, only skip button

mappings for core devices instead (#502129).
This commit is contained in:
Peter Hutterer 2009-08-26 04:33:47 +00:00
parent 9ace15bb12
commit 8e4b3c60a0
2 changed files with 42 additions and 1 deletions

34
buttonmapping.patch Normal file
View File

@ -0,0 +1,34 @@
From 77e4a88e1a4abd72f036eb6fda208cb36faff162 Mon Sep 17 00:00:00 2001
From: Peter Hutterer <peter.hutterer@who-t.net>
Date: Wed, 26 Aug 2009 09:48:06 +1000
Subject: [PATCH] Skip button mappings only for core devices.
Since server 1.4, devices are unlikely to be marked as IsXExtensionPointer.
More common is IsXExtensionKeyboard or IsXExtensionPointer.
However, with many pointer devices also having keys (e.g. most wireless
combos) a check for IsXExtensionPointer is unreliable.
In gsd-mouse-manager, skip the XInput button mapping only if the device is a
core device. Otherwise, test for buttons.
---
plugins/mouse/gsd-mouse-manager.c | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/plugins/mouse/gsd-mouse-manager.c b/plugins/mouse/gsd-mouse-manager.c
index 30e649d..7fae963 100644
--- a/plugins/mouse/gsd-mouse-manager.c
+++ b/plugins/mouse/gsd-mouse-manager.c
@@ -283,7 +283,8 @@ set_xinput_devices_left_handed (gboolean left_handed)
for (i = 0; i < n_devices; i++) {
XDevice *device = NULL;
- if ((device_info[i].use != IsXExtensionPointer) ||
+ if ((device_info[i].use == IsXPointer) ||
+ (device_info[i].use == IsXKeyboard) ||
(!xinput_device_has_buttons (&device_info[i])))
continue;
--
1.6.3.rc1.2.g0164.dirty

View File

@ -1,6 +1,6 @@
Name: gnome-settings-daemon
Version: 2.27.91
Release: 1%{?dist}
Release: 2%{?dist}
Summary: The daemon sharing settings from GNOME to GTK+/KDE applications
Group: System Environment/Daemons
@ -36,6 +36,8 @@ BuildRequires: fontconfig-devel
Patch12: gnome-settings-daemon-2.26.1-fix-touchpad.patch
# http://bugzilla.gnome.org/show_bug.cgi?id=524499
Patch13: locate-pointer-process.patch
# http://bugzilla.gnome.org/show_bug.cgi?id=593112
Patch14: buttonmapping.patch
%description
A daemon to share settings from GNOME to other applications. It also
@ -57,6 +59,7 @@ developing applications that use %{name}.
%patch12 -p1 -b .lefthand-touchpad
%patch13 -p1 -b .locate-pointer
%patch14 -p1 -b .buttonmap
autoreconf -i -f
@ -170,6 +173,10 @@ fi
%{_libdir}/pkgconfig/gnome-settings-daemon.pc
%changelog
* Wed Aug 26 2009 Peter Hutterer <peter.hutterer@redhat.com> 2.27.91-2
- buttonmapping.patch: Don't check for IsXExtensionDevice, only skip button
mappings for core devices instead (#502129).
* Mon Aug 24 2009 Bastien Nocera <bnocera@redhat.com> 2.27.91-1
- Update to 2.27.91