[arch-commits] Commit in xf86-input-synaptics/trunk (1 file)

Thomas Bächler thomas at archlinux.org
Thu Mar 15 05:44:17 EDT 2012


    Date: Thursday, March 15, 2012 @ 05:44:17
  Author: thomas
Revision: 153503

Add patch: Fix inverted circular scrolling direction

Added:
  xf86-input-synaptics/trunk/synaptics-Fix-inverted-circular-scrolling-direction.patch

-----------------------------------------------------------+
 synaptics-Fix-inverted-circular-scrolling-direction.patch |   40 ++++++++++++
 1 file changed, 40 insertions(+)

Added: synaptics-Fix-inverted-circular-scrolling-direction.patch
===================================================================
--- synaptics-Fix-inverted-circular-scrolling-direction.patch	                        (rev 0)
+++ synaptics-Fix-inverted-circular-scrolling-direction.patch	2012-03-15 09:44:17 UTC (rev 153503)
@@ -0,0 +1,40 @@
+From patchwork Wed Mar 14 03:27:29 2012
+Content-Type: text/plain; charset="utf-8"
+MIME-Version: 1.0
+Content-Transfer-Encoding: 8bit
+Subject: [synaptics] Fix inverted circular scrolling direction
+Date: Wed, 14 Mar 2012 03:27:29 -0000
+From: Peter Hutterer <peter.hutterer at who-t.net>
+X-Patchwork-Id: 9512
+Message-Id: <20120314032729.GA16614 at yabbi.bne.redhat.com>
+To: "X.Org Devel List" <xorg-devel at lists.freedesktop.org>
+Cc: Thomas =?iso-8859-1?Q?B=E4chler?= <thomas at archlinux.org>
+
+Introduced in 26831a6eeac6762ad4d99532f62ebbab0827de10.
+In said commit, the old-style button events were changed to delta
+accumulation. Alas, for circular scrolling, a positive delta is up whereas
+for everything else a positive delta is down.
+
+Reported-by: Thomas Bächler <thomas at archlinux.org>
+Signed-off-by: Peter Hutterer <peter.hutterer at who-t.net>
+
+---
+src/synaptics.c |    4 ++--
+ 1 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/synaptics.c b/src/synaptics.c
+index fa46f0d..c9609cd 100644
+--- a/src/synaptics.c
++++ b/src/synaptics.c
+@@ -2554,9 +2554,9 @@ HandleScrolling(SynapticsPrivate *priv, struct SynapticsHwState *hw,
+ 	double diff = diffa(priv->scroll.last_a, angle(priv, hw->x, hw->y));
+ 	if (delta >= 0.005 && diff != 0.0) {
+ 	    if (priv->circ_scroll_vert)
+-		priv->scroll.delta_y += diff / delta * para->scroll_dist_vert;
++		priv->scroll.delta_y -= diff / delta * para->scroll_dist_vert;
+ 	    else
+-		priv->scroll.delta_x += diff / delta * para->scroll_dist_horiz;;
++		priv->scroll.delta_x -= diff / delta * para->scroll_dist_horiz;;
+ 	    priv->scroll.last_a = angle(priv, hw->x, hw->y);
+ 	    DBG(priv, 10, "circ scoll delta: %.2f diff %.2f angle %.2f\n", delta, diff, priv->scroll.last_a);
+         }



More information about the arch-commits mailing list