[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

xserver-xorg-input-synaptics: Changes to 'debian-unstable'



 ChangeLog                      |  401 +++++++++++++++++++++++++++++++++++++----
 configure.ac                   |    9 
 debian/changelog               |   10 -
 debian/control                 |    2 
 debian/copyright               |    2 
 include/synaptics-properties.h |    2 
 man/synaptics.man              |    3 
 src/eventcomm.c                |  130 +++++++------
 src/properties.c               |    1 
 src/ps2comm.c                  |    3 
 src/synaptics.c                |  183 +++++-------------
 src/synapticsstr.h             |    8 
 tools/synclient.c              |    1 
 tools/syndaemon.c              |   50 +++--
 14 files changed, 560 insertions(+), 245 deletions(-)

New commits:
commit fad23e9958a5048d54402e0c7e348d86282c6e25
Author: Andreas Boll <andreas.boll.dev@gmail.com>
Date:   Fri Nov 18 10:57:29 2016 +0100

    Bump changelogs

diff --git a/ChangeLog b/ChangeLog
index 1aeefd6..515090a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+commit 3261e07c923c449f08a96a8439c97479b7ff899c
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Fri Nov 18 13:00:09 2016 +1000
+
+    synaptics 1.9.0
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+
 commit a7d76f4275a88d98b18eed29a1ee94a70e7fa367
 Author: Peter Hutterer <peter.hutterer@who-t.net>
 Date:   Sun Oct 9 19:27:47 2016 +1000
diff --git a/debian/changelog b/debian/changelog
index df5868f..685a0cc 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,7 +1,7 @@
-xserver-xorg-input-synaptics (1.8.99.2-1) UNRELEASED; urgency=medium
+xserver-xorg-input-synaptics (1.9.0-1) UNRELEASED; urgency=medium
 
   [ Andreas Boll ]
-  * New upstream snapshot.
+  * New upstream release.
   * Use https URL in debian/copyright.
   * Bump Standards-Version to 3.9.8, no changes needed.
 

commit 3261e07c923c449f08a96a8439c97479b7ff899c
Author: Peter Hutterer <peter.hutterer@who-t.net>
Date:   Fri Nov 18 13:00:09 2016 +1000

    synaptics 1.9.0
    
    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>

diff --git a/configure.ac b/configure.ac
index 970dd5f..6d814d5 100644
--- a/configure.ac
+++ b/configure.ac
@@ -23,7 +23,7 @@
 # Initialize Autoconf
 AC_PREREQ([2.60])
 AC_INIT([xf86-input-synaptics],
-        [1.8.99.2],
+        [1.9.0],
         [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],
         [xf86-input-synaptics])
 AC_CONFIG_SRCDIR([Makefile.am])

commit 75eb73d6104e0d67f19cb435b42deb73a7be92d2
Author: Andreas Boll <andreas.boll.dev@gmail.com>
Date:   Thu Oct 13 15:39:37 2016 +0200

    Bump Standards-Version to 3.9.8, no changes needed.

diff --git a/debian/changelog b/debian/changelog
index 1c56d1d..df5868f 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -3,6 +3,7 @@ xserver-xorg-input-synaptics (1.8.99.2-1) UNRELEASED; urgency=medium
   [ Andreas Boll ]
   * New upstream snapshot.
   * Use https URL in debian/copyright.
+  * Bump Standards-Version to 3.9.8, no changes needed.
 
   [ Julien Cristau ]
   * Use https URL in debian/watch.
diff --git a/debian/control b/debian/control
index 74659a8..e365680 100644
--- a/debian/control
+++ b/debian/control
@@ -16,7 +16,7 @@ Build-Depends:
  quilt,
  xutils-dev (>= 1:7.5+4),
  libxtst-dev,
-Standards-Version: 3.9.5
+Standards-Version: 3.9.8
 Vcs-Git: https://anonscm.debian.org/git/pkg-xorg/driver/xserver-xorg-input-synaptics.git
 Vcs-Browser: https://anonscm.debian.org/git/pkg-xorg/driver/xserver-xorg-input-synaptics.git
 

commit 5216a55bcc5103264a1c46eb9b6ef0226a14b811
Author: Andreas Boll <andreas.boll.dev@gmail.com>
Date:   Thu Oct 13 15:39:07 2016 +0200

    Use https URL in debian/copyright.

diff --git a/debian/changelog b/debian/changelog
index bef953b..1c56d1d 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -2,6 +2,7 @@ xserver-xorg-input-synaptics (1.8.99.2-1) UNRELEASED; urgency=medium
 
   [ Andreas Boll ]
   * New upstream snapshot.
+  * Use https URL in debian/copyright.
 
   [ Julien Cristau ]
   * Use https URL in debian/watch.
diff --git a/debian/copyright b/debian/copyright
index 219b077..a0aaa58 100644
--- a/debian/copyright
+++ b/debian/copyright
@@ -4,7 +4,7 @@ Tue,  2 Mar 2004 11:42:05 +0100.
 It was downloaded from
 git://anongit.freedesktop.org/git/xorg/driver/xf86-input-synaptics.
 Release tarballs are available at
-http://xorg.freedesktop.org/releases/individual/driver/
+https://xorg.freedesktop.org/releases/individual/driver/
 
 Copyright (c) 1997 C. Scott Ananian
 Copyright (c) 1998-2000 Bruce Kalk

commit 19e2a5bbdf4fd9273ff6d4ed9037d2b12e08b9b6
Author: Andreas Boll <andreas.boll.dev@gmail.com>
Date:   Thu Oct 13 15:31:55 2016 +0200

    Bump changelogs

diff --git a/ChangeLog b/ChangeLog
index 7903df4..1aeefd6 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,31 +1,141 @@
-commit af7d8a15278a968d919bf539628281bf713f747b
+commit a7d76f4275a88d98b18eed29a1ee94a70e7fa367
 Author: Peter Hutterer <peter.hutterer@who-t.net>
-Date:   Thu Oct 29 12:10:09 2015 +1000
+Date:   Sun Oct 9 19:27:47 2016 +1000
 
-    synaptics 1.8.3
+    synaptics 1.8.99.2
     
     Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
 
-commit 3e7508ac087028f8f8e116f5279dad1ebcdc58e6
-Author: Gabriele Mazzotta <gabriele.mzt@gmail.com>
-Date:   Thu Aug 14 20:03:42 2014 +0200
+commit 35b9472a189c88415fed137fb4c62a5081caaea5
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Thu Sep 15 13:47:09 2016 +1000
 
-    Use cumulative relative touch movements while scrolling
+    Remove unused fraction calculations
+    
+    hw.x and the motion history are integers so our deltas are always integers.
+    It's a bit pointless to split them into the fractional and integral part.
+    
+    obsolete since defc1d008e5674306a or so
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+
+commit 486322116d70365c2e2a1d9f45830057fa03153e
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Wed Aug 17 11:32:12 2016 +1000
+
+    eventcomm: don't ever probe if a device is set
+    
+    If opening the fd fails we still need to fail the device. This is particularly
+    the case when a device disappears before we can open it - the current code
+    wouldn't exit but instead switch to auto-probe touchpad devices on the system.
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Hans de Goede <hdegoede@redhat.com>
+
+commit cd9f9799235aefff1ec1a0af9ec6b45969119659
+Author: Anton Lindqvist <anton.lindqvist@gmail.com>
+Date:   Fri Aug 5 10:21:59 2016 +0200
+
+    syndaemon: enable touchpad when pressing a modifier combo
+    
+    When ignoring modifiers, ensure the touchpad is enabled once a modifier
+    key is pressed disregarding any previous key press that caused the
+    touchpad to be disabled.
+    
+    Signed-off-by: Anton Lindqvist <anton.lindqvist@gmail.com>
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+
+commit 248c5936a0151d0766a95457330c7d3ef9335b94
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Thu Jun 2 10:05:02 2016 +1000
+
+    Support XINPUT ABI version 23
+    
+    Use input_lock/input_unlock calls instead of SIGIO functions
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+
+commit 59e5db025307404fbfbc82f2fb3fe91d6a3005d7
+Author: Stefan Dirsch <sndirsch@suse.de>
+Date:   Thu May 19 17:35:57 2016 +0200
+
+    conf: rename to 70-synaptics.conf
+    
+    Bump up the synaptics driver to 70, so it get's preferred over libinput, which
+    was dropped down to 60. The synaptics driver is more of a leaf package
+    than libinput (which covers a multitude of device types) and can be removed by
+    default. When specifically installed by the user, the synaptics driver should
+    override the system default.
+    
+    Similar to what was done for wacom configuration file.
+    
+    https://bugzilla.suse.com/show_bug.cgi?id=979554
+    
+    Signed-off-by: Stefan Dirsch <sndirsch@suse.de>
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+
+commit 979fbec84197cd2c8ea3ffdd8e7726e8a617328b
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Fri Apr 29 10:51:17 2016 +1000
+
+    Revert MaxDoubleTapTime back to 180
+    
+    Fallout from 90c6d7fc60f3db1bd9db1c7702062fcaef3b3352 where it got changed to
+    100ms. This is too short for triple-tap-and-drag gestures so revert it to the
+    previous value.
+    
+    https://bugs.freedesktop.org/show_bug.cgi?id=95171
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+
+commit 2a1a17244f067b2ae893ea01d737e135586b151c
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Fri Apr 29 08:48:19 2016 +1000
+
+    synaptics 1.8.99.1
     
-    Signed-off-by: Gabriele Mazzotta <gabriele.mzt@gmail.com>
-    Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
     Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-    (cherry picked from commit ec0901e5f81d9cad6cc8bbdcb5ea075009c13de5)
 
-commit 6f8d4bac14ac8f3fd2714f0a8a9e37c5136a4013
+commit f1f58fffbf482de74bc7907e0af69feb9fe88a45
 Author: Peter Hutterer <peter.hutterer@who-t.net>
-Date:   Fri Mar 27 11:26:55 2015 +1000
+Date:   Wed Apr 27 09:29:27 2016 +1000
 
-    synaptics 1.8.2
+    eventcomm: fix typo checking for two-finger scrolling
     
     Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
 
-commit 15caf2b53407379f8e677d48a022f4b46b97d83a
+commit 0a4cf80a00663ff3ce8e76baf0940782576efe13
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Thu Mar 26 16:28:56 2015 +1000
+
+    Drop touch events from the driver
+    
+    This was a bad idea. No-one seems to use this and it gives us little benefits.
+    To even get this feature a number of other features need to be turned off
+    (like two-finger scrolling and tapping). Many of these are enabled by default,
+    if they are disabled a client stack with full touchpad gesture support could
+    in theory support true touchpad gestures. This has never happened.
+    
+    Drop the touch events from the synaptics driver. This allows us to switch the
+    touchpad fully over to look like a relative device, thus also removing the
+    bug that changes the touchpad speed whenever a monitor is added/removed in.
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Hans de Goede <hdegoede@redhat.com>
+
+commit 7aa327603fb2a8af58c8df6f4a4dd46e8294050e
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Wed Jun 17 15:31:08 2015 +1000
+
+    eventcomm: ignore key repeat events
+    
+    Usually doesn't happen, but the evtest output in
+    https://bugs.freedesktop.org/show_bug.cgi?id=90392
+    actually has repeat events for the button. Ignore them if they happen.
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+
+commit fc9f490a2c87e6f87b0f483cd6bf5f526dddbb8d
 Author: Peter Hutterer <peter.hutterer@who-t.net>
 Date:   Tue Mar 24 15:41:39 2015 +1000
 
@@ -35,9 +145,8 @@ Date:   Tue Mar 24 15:41:39 2015 +1000
     
     Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
     Reviewed-by: Hans de Goede <hdegoede@redhat.com>
-    (cherry picked from commit fc9f490a2c87e6f87b0f483cd6bf5f526dddbb8d)
 
-commit ef8daaf696584f7c1d3e9f192de18b5b9f923bdc
+commit 30866b97be6939b895327b930154ef758eed7ff8
 Author: Peter Hutterer <peter.hutterer@who-t.net>
 Date:   Mon Mar 23 11:38:15 2015 +1000
 
@@ -49,9 +158,47 @@ Date:   Mon Mar 23 11:38:15 2015 +1000
     
     Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
     Reviewed-by: Hans de Goede <hdegoede@redhat.com>
-    (cherry picked from commit 30866b97be6939b895327b930154ef758eed7ff8)
 
-commit 90c6d7fc60f3db1bd9db1c7702062fcaef3b3352
+commit 5378a020a003cbdfa565d43c9e01997b570059c9
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Tue Mar 17 16:06:41 2015 +1000
+
+    Revert "Support the new Lenovo X1 Carbon 3rd trackpoint buttons"
+    
+    This reverts commit 064445364b4775b25ba49c2250b22b169f291147.
+    
+    The Lenovo *50 series, including the X1 Carbon 3rd always require multiple
+    kernel patches to enable the touchpad buttons. This patch in synaptics only
+    addresses the re-routing of the top buttons.
+    
+    The final iteration of the kernel patches also route the trackpoint buttons
+    through the trackpoint device, rendering this patch unnecessary. These patches
+    are queued for 4.0.
+    
+    See kernel patch series up to commit cdd9dc195916ef5644cfac079094c3c1d1616e4c
+    Author: Benjamin Tissoires <benjamin.tissoires@redhat.com>
+    Date:   Sun Mar 8 22:35:41 2015 -0700
+    
+        Input: synaptics - re-route tracksticks buttons on the Lenovo 2015 series
+    
+    Currently in Dmitry's for-linus branch.
+    
+    Distributions running older kernels or the kernel stable series which has
+    partial backports of the above patch series are encouraged to leave the
+    0644453 commit in and undo this revert.
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Hans de Goede <hdegoede@redhat.com>
+
+commit 00db769067fa0703f96284bd50ea384efd47e2de
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Fri Mar 6 11:06:41 2015 +1000
+
+    conf: add Lenovo T450s and W451 to rules
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+
+commit 37d34f0356cc556dd8a49ec5d1ed64d49417a9b2
 Author: Gabriele Mazzotta <gabriele.mzt@gmail.com>
 Date:   Thu Jan 15 22:04:17 2015 +0100
 
@@ -70,9 +217,38 @@ Date:   Thu Jan 15 22:04:17 2015 +0100
     
     Signed-off-by: Gabriele Mazzotta <gabriele.mzt@gmail.com>
     Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-    (cherry picked from commit 37d34f0356cc556dd8a49ec5d1ed64d49417a9b2)
 
-commit 649b77f0ce617fd1ec073b281636e304e80b56c0
+commit 064445364b4775b25ba49c2250b22b169f291147
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Thu Jan 29 11:25:26 2015 +1000
+
+    Support the new Lenovo X1 Carbon 3rd trackpoint buttons
+    
+    This device has the trackpoint buttons wired up to the touchpad to send BTN_0,
+    BTN_1 and BTN_2 for left, right, middle. This conflicts with previous
+    touchpads that used those event codes for dedicated scroll buttons.
+    
+    Add an option HasTrackpointButtons that can be set via a xorg.conf.d
+    snippets. This option is not intended as a user-set option, rather
+    we expect distributions to ship some conglomerate of udev/hal rules with
+    xorg.conf snippets that take effect.
+    
+    If the option is set, we look at the three affected buttons at the beginning
+    of HandleState and send button events immediately for them. The HW state is
+    reset to neutral and other processing continues. This saves us from having to
+    synchronize these buttons with software buttons (also present on this device),
+    tapping, etc.
+    
+    Since the buttons are physically different and (mentally) associated with the
+    trackpoint device we also don't need to worry about having finger motion event
+    correctly synced up with the button presses - it's acceptable to send the
+    presses before the motion events.
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Hans de Goede <hdegoede@redhat.com>
+    Tested-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
+
+commit a357647d3fb918b94efbda98138fb0240a949ef2
 Author: Gabriele Mazzotta <gabriele.mzt@gmail.com>
 Date:   Thu Jan 15 22:04:16 2015 +0100
 
@@ -82,17 +258,81 @@ Date:   Thu Jan 15 22:04:16 2015 +0100
     
     Signed-off-by: Gabriele Mazzotta <gabriele.mzt@gmail.com>
     Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-    (cherry picked from commit a357647d3fb918b94efbda98138fb0240a949ef2)
 
-commit d50c4bab8ae2836a0f38b29a5d22be2e950e4d08
+commit 383355fa5f536205759f10efa99eaec4e5089376
+Author: Gabriele Mazzotta <gabriele.mzt@gmail.com>
+Date:   Fri Jan 9 17:01:42 2015 +0100
+
+    Remove FastTap leftovers
+    
+    FastTap was removed with d14ea867ad5d ("Purge fast-taps option"),
+    remove all of what remained.
+    
+    Signed-off-by: Gabriele Mazzotta <gabriele.mzt@gmail.com>
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+
+commit a05894d169be42f03d21fb8287da902d8c24c566
+Author: Gabriele Mazzotta <gabriele.mzt@gmail.com>
+Date:   Wed Jan 7 14:12:33 2015 +0100
+
+    Don't assume that touch devices report per finger width and pressure
+    
+    The palm detection relies on both the width and the pressure.
+    a897147be04 ("Use ABS_MT events for the palm detection when supported")
+    assumed that all the touch devices can report both ABS_MT_TOUCH_MAJOR
+    and ABS_MT_PRESSURE, but this is not necessarily true. This assumption
+    could hence break the palm detection when at least one of the mentioned
+    events is not declared but both ABS_TOOL_WIDTH and ABS_PRESSURE are
+    reported.
+    
+    Signed-off-by: Gabriele Mazzotta <gabriele.mzt@gmail.com>
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+
+commit a897147be04d74ed452cda166fd4e01f9615ff72
+Author: Gabriele Mazzotta <gabriele.mzt@gmail.com>
+Date:   Tue Sep 16 17:20:15 2014 +0200
+
+    Use ABS_MT events for the palm detection when supported
+    
+    Use ABS_MT_TOUCH_MAJOR and ABS_MT_PRESSURE instead of ABS_TOOL_WIDTH
+    and ABS_PRESSURE when supported so that the pressure and the width of
+    all the fingers is taken into account for the palm detection.
+    
+    This also fixes the palm detection for those touchpads for which the
+    kernel only sends ABS_MT_TOUCH_MAJOR and not ABS_TOOL_WIDTH.
+    
+    Signed-off-by: Gabriele Mazzotta <gabriele.mzt@gmail.com>
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+
+commit 41b2312c006fca1f24e1a366174d3203a63fa04a
 Author: Peter Hutterer <peter.hutterer@who-t.net>
-Date:   Thu Sep 18 07:40:13 2014 +1000
+Date:   Tue Sep 16 08:52:56 2014 +1000
 
-    synaptics 1.8.1
+    Limit the movement to 20 mm per event
+    
+    Touchpads are limited by a fixed sampling rate (usually 80Hz). Some finger
+    changes may happen too fast for this sampling rate, resulting in two distinct
+    event sequences:
+    * finger 1 up and finger 2 down in the same EV_SYN frame. Synaptics sees one
+      finger down before and after and the changed coordinates
+    * finger 1 up and finger 2 down _between_ two EV_SYN frames. Synaptics sees one
+      touchpoint move from f1 position to f2 position.
+    
+    That move causes a large cursor jump. The former could be solved (with
+    difficulty) by adding fake EV_SYN handling after releasing touchpoints but
+    that won't fix the latter case.
+    
+    So as a solution for now limit the finger movement to 20mm per event.
+    Tests on a T440 and an x220 showed that this is just above what a reasonable
+    finger movement would trigger. If a movement is greater than that limit, reset
+    it to 0/0.
+    
+    On devices without resolution, use 0.25 of the touchpad's diagonal instead.
     
     Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Hans de Goede <hdegoede@redhat.com>
 
-commit bdf6a6b2e2603142e62ae5968c65e6e26f57e51d
+commit 049611bd7f04e285909c55807478306cce83385f
 Author: Peter Hutterer <peter.hutterer@who-t.net>
 Date:   Tue Sep 16 10:44:40 2014 +1000
 
@@ -102,9 +342,8 @@ Date:   Tue Sep 16 10:44:40 2014 +1000
     just general weirdness.
     
     Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-    (cherry picked from commit 049611bd7f04e285909c55807478306cce83385f)
 
-commit 2dd60417450af4ac4f9938e09b06707dd91bddfb
+commit afbbcfa10eb3a2295823720907f35bb59972dd82
 Author: Peter Hutterer <peter.hutterer@who-t.net>
 Date:   Fri Sep 5 15:14:47 2014 +1000
 
@@ -116,9 +355,8 @@ Date:   Fri Sep 5 15:14:47 2014 +1000
     
     Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
     Reviewed-by: Keith Packard <keithp@keithp.com>
-    (cherry picked from commit afbbcfa10eb3a2295823720907f35bb59972dd82)
 
-commit 9de611219bebd9b101b98bb79cc0173115ee1833
+commit d239f831f17ccf5468f5dc6b2f199a9c1f6e35af
 Author: Peter Hutterer <peter.hutterer@who-t.net>
 Date:   Fri Sep 5 14:24:29 2014 +1000
 
@@ -128,9 +366,44 @@ Date:   Fri Sep 5 14:24:29 2014 +1000
     
     Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
     Reviewed-by: Keith Packard <keithp@keithp.com>
-    (cherry picked from commit d239f831f17ccf5468f5dc6b2f199a9c1f6e35af)
 
-commit 36d7ee1c9d60752666a94ee4755b3a1d0f339164
+commit 4d3d761799436e80fbcf0d99797eed35e68c90d2
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Fri Sep 5 14:15:46 2014 +1000
+
+    Shut up a coverity warning
+    
+    xf86-input-synaptics-1.8.0/src/synaptics.c:498: var_compare_op: Comparing
+    "end_str" to null implies that "end_str" might be null.
+    
+    end_str can't be null, so no need for this check and no need to get Coverity
+    all confused.
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Keith Packard <keithp@keithp.com>
+
+commit 536e17c83e565ddba9c7c5a4cd613edf8378e9aa
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Fri Sep 5 14:13:08 2014 +1000
+
+    Mark some switch case fallthroughs with comments
+    
+    Just to make it explicit
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Keith Packard <keithp@keithp.com>
+
+commit ec0901e5f81d9cad6cc8bbdcb5ea075009c13de5
+Author: Gabriele Mazzotta <gabriele.mzt@gmail.com>
+Date:   Thu Aug 14 20:03:42 2014 +0200
+
+    Use cumulative relative touch movements while scrolling
+    
+    Signed-off-by: Gabriele Mazzotta <gabriele.mzt@gmail.com>
+    Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+
+commit 90d19302306f49722e210227b2fb5161e6f51880
 Author: Peter Hutterer <peter.hutterer@who-t.net>
 Date:   Thu Aug 28 14:13:38 2014 +1000
 
@@ -160,9 +433,8 @@ Date:   Thu Aug 28 14:13:38 2014 +1000
     
     Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
     Reviewed-by: Hans de Goede <hdegoede@redhat.com>
-    (cherry picked from commit 90d19302306f49722e210227b2fb5161e6f51880)
 
-commit 475e0d3668097f4deb9448c8765dd12b3f15534f
+commit 96e60a4ea242d2decf109835981ae186cc36f642
 Author: Peter Hutterer <peter.hutterer@who-t.net>
 Date:   Fri Aug 29 07:57:41 2014 +1000
 
@@ -181,9 +453,18 @@ Date:   Fri Aug 29 07:57:41 2014 +1000
     See http://lists.freedesktop.org/archives/xorg-devel/2014-July/043070.html
     
     Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-    (cherry picked from commit 96e60a4ea242d2decf109835981ae186cc36f642)
 
-commit ae77fdfc8e57e612e8aa0e9b45bbea478a82c30b
+commit 68d22ecf145bb9073121fd3a9fc1fdd0f880e48b
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Thu Aug 28 16:50:18 2014 +1000
+
+    Silence two compiler warnings
+    
+    Potentially uninitialized, false positive in both cases.
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+
+commit 7d0ff39519e4d3760722b914883bee276035061c
 Author: Gabriele Mazzotta <gabriele.mzt@gmail.com>
 Date:   Sun Jul 27 12:58:18 2014 +0200
 
@@ -198,9 +479,29 @@ Date:   Sun Jul 27 12:58:18 2014 +0200
     
     Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
     Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-    (cherry picked from commit 7d0ff39519e4d3760722b914883bee276035061c)
 
-commit cbf0ca508a14201d2c25f96dd6f38cea2cb1954b
+commit a36edf8307ab9b5bffca103dd875623a66012c0b
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Thu May 15 08:34:55 2014 +1000
+
+    Use libevdev's per-device logging functions instead of the global handler
+    
+    Per-device logging functions don't interfere with other drivers if they also
+    use libevdev, so use those instead the global log handler if available. If not
+    available, drop libevdev logging, I don't want to maintain the ifdef mess and
+    the logging doesn't give us _that_ much benefit.
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+
+commit c1457c0f71e30c194180164320759849fa09bf9b
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Thu May 29 14:44:43 2014 +1000
+
+    synaptics 1.8.99
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+
+commit 730101223432f60397c61f74a5e6789b3ee34ecd
 Author: Peter Hutterer <peter.hutterer@who-t.net>
 Date:   Wed Aug 6 12:04:14 2014 +1000
 
@@ -220,7 +521,23 @@ Date:   Wed Aug 6 12:04:14 2014 +1000
     
     Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
     Reviewed-by: Hans de Goede <hdegoede@redhat.com>
-    (cherry picked from commit 730101223432f60397c61f74a5e6789b3ee34ecd)
+
+commit ddd8844a47bfa28974e40fc9aec9b17656415a6c
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Mon May 19 08:06:46 2014 +1000
+
+    eventcomm: Drop requirement for a grab during init
+    
+    When we required a grab on the device, this was a shortcut so we didn't have
+    to query the device only to realise we can't read events off it anyway. Now
+    that we don't actually grab the device by default, this is unnecessary.
+    
+    Something else may have a temporary grab on the device during init, in which
+    case we just continue as usual and read events if and when they become
+    available.
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Hans de Goede <hdegoede@redhat.com>
 
 commit 3a4cc96590ca0e0ff526a5e5406f29a402bddd1a
 Author: Peter Hutterer <peter.hutterer@who-t.net>
diff --git a/debian/changelog b/debian/changelog
index ec2e7a7..bef953b 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,9 +1,13 @@
-xserver-xorg-input-synaptics (1.8.3-3) UNRELEASED; urgency=medium
+xserver-xorg-input-synaptics (1.8.99.2-1) UNRELEASED; urgency=medium
 
+  [ Andreas Boll ]
+  * New upstream snapshot.
+
+  [ Julien Cristau ]
   * Use https URL in debian/watch.
   * Use https for Vcs-* control fields.
 
- -- Julien Cristau <jcristau@debian.org>  Sat, 24 Sep 2016 16:00:56 +0200
+ -- Andreas Boll <andreas.boll.dev@gmail.com>  Thu, 13 Oct 2016 15:31:35 +0200
 
 xserver-xorg-input-synaptics (1.8.3-2) unstable; urgency=medium
 

commit a7d76f4275a88d98b18eed29a1ee94a70e7fa367
Author: Peter Hutterer <peter.hutterer@who-t.net>
Date:   Sun Oct 9 19:27:47 2016 +1000

    synaptics 1.8.99.2
    
    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>

diff --git a/configure.ac b/configure.ac
index b3d0545..970dd5f 100644
--- a/configure.ac
+++ b/configure.ac
@@ -23,7 +23,7 @@
 # Initialize Autoconf
 AC_PREREQ([2.60])
 AC_INIT([xf86-input-synaptics],
-        [1.8.99.1],
+        [1.8.99.2],
         [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],
         [xf86-input-synaptics])
 AC_CONFIG_SRCDIR([Makefile.am])

commit 35b9472a189c88415fed137fb4c62a5081caaea5
Author: Peter Hutterer <peter.hutterer@who-t.net>
Date:   Thu Sep 15 13:47:09 2016 +1000

    Remove unused fraction calculations
    
    hw.x and the motion history are integers so our deltas are always integers.
    It's a bit pointless to split them into the fractional and integral part.
    
    obsolete since defc1d008e5674306a or so
    
    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>

diff --git a/src/synaptics.c b/src/synaptics.c
index bdc9605..c7ba9ad 100644
--- a/src/synaptics.c
+++ b/src/synaptics.c
@@ -2198,28 +2198,8 @@ static void
 get_delta(SynapticsPrivate *priv, const struct SynapticsHwState *hw,
           enum EdgeType edge, double *dx, double *dy)
 {
-    double integral;
-    double tmpf;
-
     *dx = hw->x - HIST(0).x;
     *dy = hw->y - HIST(0).y;
-
-    /* report edge speed as synthetic motion. Of course, it would be
-     * cooler to report floats than to buffer, but anyway. */
-
-    /* FIXME: When these values go NaN, bad things happen. Root cause is unknown
-     * thus far though. */
-    if (isnan(priv->frac_x))
-        priv->frac_x = 0;
-    if (isnan(priv->frac_y))
-        priv->frac_y = 0;
-
-    tmpf = *dx + priv->frac_x;
-    priv->frac_x = modf(tmpf, &integral);
-    *dx = integral;
-    tmpf = *dy + priv->frac_y;
-    priv->frac_y = modf(tmpf, &integral);
-    *dy = integral;
 }
 
 /* Vector length, but not sqrt'ed, we only need it for comparison */
diff --git a/src/synapticsstr.h b/src/synapticsstr.h
index 905b78b..33524e5 100644
--- a/src/synapticsstr.h
+++ b/src/synapticsstr.h
@@ -288,7 +288,6 @@ struct _SynapticsPrivateRec {
     Bool circ_scroll_on;        /* Keeps track of currently active scroll modes */
     Bool circ_scroll_vert;      /* True: Generate vertical scroll events
                                    False: Generate horizontal events */
-    double frac_x, frac_y;      /* absolute -> relative fraction */
     enum MidButtonEmulation mid_emu_state;      /* emulated 3rd button */
     int repeatButtons;          /* buttons for repeat */
     int nextRepeat;             /* Time when to trigger next auto repeat event */

commit 486322116d70365c2e2a1d9f45830057fa03153e
Author: Peter Hutterer <peter.hutterer@who-t.net>
Date:   Wed Aug 17 11:32:12 2016 +1000

    eventcomm: don't ever probe if a device is set
    
    If opening the fd fails we still need to fail the device. This is particularly
    the case when a device disappears before we can open it - the current code
    wouldn't exit but instead switch to auto-probe touchpad devices on the system.
    
    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    Reviewed-by: Hans de Goede <hdegoede@redhat.com>

diff --git a/src/eventcomm.c b/src/eventcomm.c
index 9c9a036..f65d532 100644
--- a/src/eventcomm.c
+++ b/src/eventcomm.c
@@ -1009,13 +1009,13 @@ EventAutoDevProbe(InputInfoPtr pInfo, const char *device)
 
             if (!(pInfo->flags & XI86_SERVER_FD))
                 SYSCALL(close(fd));
-
-            /* if a device is set and not a touchpad (or already grabbed),
-             * we must return FALSE.  Otherwise, we'll add a device that
-             * wasn't requested for and repeat
-             * f5687a6741a19ef3081e7fd83ac55f6df8bcd5c2. */
-            return touchpad_found;
         }
+
+        /* if a device is set and not a touchpad (or already grabbed),
+         * we must return FALSE.  Otherwise, we'll add a device that
+         * wasn't requested for and repeat
+         * f5687a6741a19ef3081e7fd83ac55f6df8bcd5c2. */
+        return touchpad_found;
     }
 
     i = scandir(DEV_INPUT_EVENT, &namelist, EventDevOnly, alphasort);

commit cd9f9799235aefff1ec1a0af9ec6b45969119659
Author: Anton Lindqvist <anton.lindqvist@gmail.com>
Date:   Fri Aug 5 10:21:59 2016 +0200

    syndaemon: enable touchpad when pressing a modifier combo
    
    When ignoring modifiers, ensure the touchpad is enabled once a modifier
    key is pressed disregarding any previous key press that caused the
    touchpad to be disabled.
    
    Signed-off-by: Anton Lindqvist <anton.lindqvist@gmail.com>
    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>

diff --git a/tools/syndaemon.c b/tools/syndaemon.c
index 29e75f5..f716827 100644
--- a/tools/syndaemon.c
+++ b/tools/syndaemon.c
@@ -47,6 +47,12 @@
 
 #include "synaptics-properties.h"
 
+enum KeyboardActivity {
+    ActivityNew,
+    ActivityNone,
+    ActivityReset
+};
+
 enum TouchpadState {
     TouchpadOn = 0,
     TouchpadOff = 1,
@@ -181,29 +187,29 @@ install_signal_handler(void)
     }
 }
 
-/**
- * Return non-zero if the keyboard state has changed since the last call.
- */
-static int
+static enum KeyboardActivity
 keyboard_activity(Display * display)
 {
     static unsigned char old_key_state[KEYMAP_SIZE];
     unsigned char key_state[KEYMAP_SIZE];
     int i;
-    int ret = 0;
+    int ret = ActivityNone;
 
     XQueryKeymap(display, (char *) key_state);
 
     for (i = 0; i < KEYMAP_SIZE; i++) {
         if ((key_state[i] & ~old_key_state[i]) & keyboard_mask[i]) {
-            ret = 1;
+            ret = ActivityNew;
             break;
         }
     }
     if (ignore_modifier_combos) {
         for (i = 0; i < KEYMAP_SIZE; i++) {
             if (key_state[i] & ~keyboard_mask[i]) {
-                ret = 0;
+                if (old_key_state[i] & ~keyboard_mask[i])
+                    ret = ActivityNone;
+                else
+                    ret = ActivityReset;
                 break;
             }
         }
@@ -232,8 +238,17 @@ main_loop(Display * display, double idle_time, int poll_delay)
 
     for (;;) {
         current_time = get_time();
-        if (keyboard_activity(display))
-            last_activity = current_time;
+        switch (keyboard_activity(display)) {
+            case ActivityNew:
+                last_activity = current_time;
+                break;
+            case ActivityNone:
+                /* NOP */;
+                break;
+            case ActivityReset:
+                last_activity = 0.0;
+                break;
+        }
 
         /* If system times goes backwards, touchpad can get locked. Make
          * sure our last activity wasn't in the future and reset if it was. */
@@ -423,6 +438,7 @@ record_main_loop(Display * display, double idle_time)
         fd_set read_fds;
         int ret;
         int disable_event = 0;
+        int modifier_event = 0;
         struct timeval timeout;
 
         FD_ZERO(&read_fds);
@@ -454,9 +470,14 @@ record_main_loop(Display * display, double idle_time)
                 disable_event = 1;
             }
 
-            if (cbres.non_modifier_event &&
-                !(ignore_modifier_combos && is_modifier_pressed(&cbres))) {
-                disable_event = 1;
+            if (cbres.non_modifier_event) {
+                if (ignore_modifier_combos && is_modifier_pressed(&cbres)) {
+                    modifier_event = 1;
+                } else {
+                    disable_event = 1;
+                }
+            } else if (ignore_modifier_keys) {
+                modifier_event = 1;
             }
         }
 
@@ -468,10 +489,13 @@ record_main_loop(Display * display, double idle_time)
             toggle_touchpad(False);
         }
 
-        if (ret == 0 && pad_disabled) { /* timeout => enable event */
+        if (modifier_event && pad_disabled) {
             toggle_touchpad(True);
         }
 
+        if (ret == 0 && pad_disabled) { /* timeout => enable event */
+            toggle_touchpad(True);
+        }
     }                           /* end while(1) */
 
     XFreeModifiermap(cbres.modifiers);

commit 248c5936a0151d0766a95457330c7d3ef9335b94
Author: Peter Hutterer <peter.hutterer@who-t.net>
Date:   Thu Jun 2 10:05:02 2016 +1000

    Support XINPUT ABI version 23
    
    Use input_lock/input_unlock calls instead of SIGIO functions
    
    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>

diff --git a/src/synaptics.c b/src/synaptics.c
index 70b7f3b..bdc9605 100644
--- a/src/synaptics.c
+++ b/src/synaptics.c
@@ -1601,9 +1601,11 @@ timerFunc(OsTimerPtr timer, CARD32 now, pointer arg)
     SynapticsPrivate *priv = (SynapticsPrivate *) (pInfo->private);
     struct SynapticsHwState *hw = priv->local_hw_state;
     int delay;
-    int sigstate;
-
-    sigstate = xf86BlockSIGIO();
+#if !HAVE_THREADED_INPUT
+    int sigstate = xf86BlockSIGIO();
+#else
+    input_lock();
+#endif
 
     priv->hwState->millis += now - priv->timer_time;
     SynapticsCopyHwState(hw, priv->hwState);
@@ -1613,7 +1615,11 @@ timerFunc(OsTimerPtr timer, CARD32 now, pointer arg)
     priv->timer_time = now;
     priv->timer = TimerSet(priv->timer, 0, delay, timerFunc, pInfo);
 
+#if !HAVE_THREADED_INPUT
     xf86UnblockSIGIO(sigstate);
+#else
+    input_unlock();
+#endif
 
     return 0;
 }
diff --git a/src/synapticsstr.h b/src/synapticsstr.h
index f8ab14e..905b78b 100644
--- a/src/synapticsstr.h
+++ b/src/synapticsstr.h
@@ -36,6 +36,10 @@
 #define NO_DRIVER_SCALING 1
 #endif
 
+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 23
+#define HAVE_THREADED_INPUT 1
+#endif
+
 #ifdef DBG
 #undef DBG
 #endif

commit 59e5db025307404fbfbc82f2fb3fe91d6a3005d7
Author: Stefan Dirsch <sndirsch@suse.de>
Date:   Thu May 19 17:35:57 2016 +0200

    conf: rename to 70-synaptics.conf
    
    Bump up the synaptics driver to 70, so it get's preferred over libinput, which
    was dropped down to 60. The synaptics driver is more of a leaf package
    than libinput (which covers a multitude of device types) and can be removed by
    default. When specifically installed by the user, the synaptics driver should
    override the system default.
    
    Similar to what was done for wacom configuration file.
    
    https://bugzilla.suse.com/show_bug.cgi?id=979554
    
    Signed-off-by: Stefan Dirsch <sndirsch@suse.de>
    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>

diff --git a/conf/50-synaptics.conf b/conf/50-synaptics.conf
deleted file mode 100644


Reply to: