Hello community,

here is the log from the commit of package libinput for openSUSE:Factory 
checked in at 2015-08-07 00:19:42
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libinput (Old)
 and      /work/SRC/openSUSE:Factory/.libinput.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "libinput"

Changes:
--------
--- /work/SRC/openSUSE:Factory/libinput/libinput.changes        2015-07-19 
11:45:33.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.libinput.new/libinput.changes   2015-08-07 
00:19:44.000000000 +0200
@@ -1,0 +2,34 @@
+Tue Aug  4 16:35:20 UTC 2015 - zai...@opensuse.org
+
+- Update to version 0.21.0:
+  * A new addition to the API is the configuration option to toggle
+    disable-while-typing. It's still enabled by default, but can
+    now be disabled for the use-cases where it is problematic
+    (games, for example). The API is the usual quartett of
+    configuration options:
+    - libinput_device_config_dwt_is_available
+    - libinput_device_config_dwt_set_enabled
+    - libinput_device_config_dwt_get_enabled
+    - libinput_device_config_dwt_get_default_enabled
+  * The second addition to the API is the ability to get the time
+    in microseconds from an event:
+    - libinput_event_gesture_get_time_usec
+    - libinput_event_keyboard_get_time_usec
+    - libinput_event_pointer_get_time_usec
+    - libinput_event_touch_get_time_usec
+  * libinput switched internally to use µs for all timestamps which
+    will help those devices that have a sampling frequency of more
+    than 1000Hz.
+  * Thumb detection, added for 0.20, has seen fine-tuning to reduce
+    the number of misdetection. Likewise, the gesture code has seen
+    a bunch of changes to tune the reliability of gesture
+    detection, especially on semi-mt touchpads.
+  * Scrolling is now more reactive too, with reduced thresholds
+    before scrolling kicks in.
+  * Merged a bunch of device-specific device handling to
+    work around quirks and deficiencies in some touchpad hardware.
+- Add
+  libinput-touchpad-serial-synaptics-needto-fake-new-touches.patch
+  following upstreams advice for kernel 4.1.
+
+-------------------------------------------------------------------

Old:
----
  libinput-0.20.0.tar.xz
  libinput-0.20.0.tar.xz.sig

New:
----
  libinput-0.21.0.tar.xz
  libinput-0.21.0.tar.xz.sig
  libinput-touchpad-serial-synaptics-needto-fake-new-touches.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ libinput.spec ++++++
--- /var/tmp/diff_new_pack.t5zH2l/_old  2015-08-07 00:19:45.000000000 +0200
+++ /var/tmp/diff_new_pack.t5zH2l/_new  2015-08-07 00:19:45.000000000 +0200
@@ -18,8 +18,8 @@
 
 Name:           libinput
 %define lname  libinput10
-%define rversion 0.20.0
-Version:        0.20
+%define rversion 0.21.0
+Version:        0.21
 Release:        0
 Summary:        Input device and event processing library
 License:        MIT
@@ -33,6 +33,7 @@
 Source2:        
http://freedesktop.org/software/libinput/%name-%rversion.tar.xz.sig
 Source3:        baselibs.conf
 Source4:        %name.keyring
+Patch1:         
libinput-touchpad-serial-synaptics-needto-fake-new-touches.patch
 #git#BuildRequires:  autoconf >= 2.64
 #git#BuildRequires:  automake >= 1.11
 #git#BuildRequires:  libtool >= 2.2
@@ -99,6 +100,7 @@
 
 %prep
 %setup -qn %name-%rversion
+%patch -P 1 -p1
 
 %build
 if [ ! -e configure ]; then

++++++ libinput-0.20.0.tar.xz -> libinput-0.21.0.tar.xz ++++++
++++ 12947 lines of diff (skipped)

++++++ libinput-touchpad-serial-synaptics-needto-fake-new-touches.patch ++++++
From: Peter Hutterer <peter.hutte...@who-t.net>
References: 
http://lists.freedesktop.org/archives/wayland-devel/2015-August/023782.html

On the 4.1 kernels synaptics pretends to have 3 slots (the serial fw only does
2). This was added to avoid cursor jumps but has since been reverted for 4.2
(kernel commit dbf3c37086, 4.1.3 is still buggy). In some cases a TRIPLETAP
may be triggered without slot 2 ever activating.

While there are still those kernels out there, work around this bug by opening
a new touch point where none exists if the fake finger count exceeds the slot
count.

Reported-by: Jan Alexander Steffens <jan.steffens at gmail.com>
Signed-off-by: Peter Hutterer <peter.hutterer at who-t.net>
Tested-by: Jan Alexander Steffens <jan.steffens at gmail.com>
Reviewed-by: Hans de Goede <hdegoede at redhat.com>
---
Changes to v2:
- split out the handling instead of having a tmp state variable, see Hans'
  comments from v2

Mainly sending this to the list again so I have a link to point people to.
If you're on 4.1.x add this patch to your distribution package.

 src/evdev-mt-touchpad.c | 22 ++++++++++++++++------
 1 file changed, 16 insertions(+), 6 deletions(-)

diff --git a/src/evdev-mt-touchpad.c b/src/evdev-mt-touchpad.c
index a683d9a..5ef03d5 100644
--- a/src/evdev-mt-touchpad.c
+++ b/src/evdev-mt-touchpad.c
@@ -369,13 +369,23 @@ tp_restore_synaptics_touches(struct tp_dispatch *tp,
        for (i = 0; i < tp->num_slots; i++) {
                struct tp_touch *t = tp_get_touch(tp, i);
 
-               if (t->state != TOUCH_END)
+               switch(t->state) {
+               case TOUCH_HOVERING:
+               case TOUCH_BEGIN:
+               case TOUCH_UPDATE:
                        continue;
-
-               /* new touch, move it through begin to update immediately */
-               tp_new_touch(tp, t, time);
-               tp_begin_touch(tp, t, time);
-               t->state = TOUCH_UPDATE;
+               case TOUCH_NONE:
+                       /* new touch, move it through to begin immediately */
+                       tp_new_touch(tp, t, time);
+                       tp_begin_touch(tp, t, time);
+                       break;
+               case TOUCH_END:
+                       /* touch just ended, we need need to restore it to 
update */
+                       tp_new_touch(tp, t, time);
+                       tp_begin_touch(tp, t, time);
+                       t->state = TOUCH_UPDATE;
+                       break;
+               }
        }
 }
 
-- 
2.4.3

Reply via email to