[xorg-x11-drv-synaptics/f17] Reset touch state on DEVICE_OFF (#814972)
Peter Hutterer
whot at fedoraproject.org
Tue Apr 24 05:46:13 UTC 2012
commit 08383e6cc8bee5671c809979d3286b5e9f6839ba
Author: Peter Hutterer <peter.hutterer at who-t.net>
Date: Tue Apr 24 15:48:26 2012 +1000
Reset touch state on DEVICE_OFF (#814972)
0001-Reset-touch-state-on-DeviceOff.patch | 47 +++++++++++++++++++++++++++++
xorg-x11-drv-synaptics.spec | 8 ++++-
2 files changed, 54 insertions(+), 1 deletions(-)
---
diff --git a/0001-Reset-touch-state-on-DeviceOff.patch b/0001-Reset-touch-state-on-DeviceOff.patch
new file mode 100644
index 0000000..7ad8748
--- /dev/null
+++ b/0001-Reset-touch-state-on-DeviceOff.patch
@@ -0,0 +1,47 @@
+From 8ef982c5403e88e6823d09cdcd38af4c3050936c Mon Sep 17 00:00:00 2001
+From: Peter Hutterer <peter.hutterer at who-t.net>
+Date: Tue, 24 Apr 2012 15:31:36 +1000
+Subject: [PATCH] Reset touch state on DeviceOff
+
+Don't leave touches lingering around during suspend.
+https://bugzilla.redhat.com/show_bug.cgi?id=814972
+
+Test case:
+1) leave finger on touchpad
+2) xinput set-prop "SynPS/2 Synaptics TouchPad" "Device Enabled" 0
+3) lift fingers
+4) xinput set-prop "SynPS/2 Synaptics TouchPad" "Device Enabled" 1
+
+Signed-off-by: Peter Hutterer <peter.hutterer at who-t.net>
+---
+ src/eventcomm.c | 1 +
+ src/synaptics.c | 1 +
+ 2 files changed, 2 insertions(+)
+
+diff --git a/src/eventcomm.c b/src/eventcomm.c
+index 9d1233c..5707e38 100644
+--- a/src/eventcomm.c
++++ b/src/eventcomm.c
+@@ -128,6 +128,7 @@ UninitializeTouch(InputInfoPtr pInfo)
+
+ mtdev_close(proto_data->mtdev);
+ proto_data->mtdev = NULL;
++ proto_data->num_touches = 0;
+ }
+
+ static void
+diff --git a/src/synaptics.c b/src/synaptics.c
+index 853bfa8..d2fe960 100644
+--- a/src/synaptics.c
++++ b/src/synaptics.c
+@@ -1086,6 +1086,7 @@ DeviceOff(DeviceIntPtr dev)
+ if (pInfo->fd != -1) {
+ TimerCancel(priv->timer);
+ xf86RemoveEnabledDevice(pInfo);
++ SynapticsResetTouchHwState(priv->hwState);
+ if (priv->proto_ops->DeviceOffHook &&
+ !priv->proto_ops->DeviceOffHook(pInfo))
+ rc = !Success;
+--
+1.7.10
+
diff --git a/xorg-x11-drv-synaptics.spec b/xorg-x11-drv-synaptics.spec
index 84fbab3..0fe1d26 100644
--- a/xorg-x11-drv-synaptics.spec
+++ b/xorg-x11-drv-synaptics.spec
@@ -8,7 +8,7 @@
Name: xorg-x11-drv-synaptics
Summary: Xorg X11 Synaptics touchpad input driver
Version: 1.5.99.903
-Release: 3%{?gitdate:.%{gitdate}git%{gitversion}}%{dist}
+Release: 4%{?gitdate:.%{gitdate}git%{gitversion}}%{dist}
URL: http://www.x.org
License: MIT
Group: User Interface/X Hardware Support
@@ -22,6 +22,8 @@ Source1: 50-synaptics.conf
Source2: make-git-snapshot.sh
Source3: 70-touchpad-quirks.rules
+Patch01: 0001-Reset-touch-state-on-DeviceOff.patch
+
ExcludeArch: s390 s390x %{?rhel:ppc ppc64}
BuildRequires: libtool pkgconfig
@@ -79,6 +81,7 @@ Features:
%prep
%setup -q -n %{tarball}-%{?gitdate:%{gitdate}}%{!?gitdate:%{version}}
+%patch01 -p1
%build
autoreconf -v --install --force || exit 1
@@ -135,6 +138,9 @@ Development files for the Synaptics TouchPad for X.Org.
%changelog
+* Tue Apr 24 2012 Peter Hutterer <peter.hutterer at redhat.com> 1.5.99.903-4.20120419git11d892964
+- Reset touch state on DEVICE_OFF (#814972)
+
* Thu Apr 19 2012 Peter Hutterer <peter.hutterer at redhat.com> 1.5.99.903-3.20120419git11d892964
- Update .conf file for softbuttons
More information about the scm-commits
mailing list