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 <[email protected]>
Signed-off-by: Peter Hutterer <[email protected]>
---
 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);
         }
-- 
1.7.7.6

_______________________________________________
[email protected]: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel

Reply via email to