SHA256
1
0
forked from pool/libinput

Accepting request 320432 from home:Zaitor

New rel from upstream.

OBS-URL: https://build.opensuse.org/request/show/320432
OBS-URL: https://build.opensuse.org/package/show/X11:Wayland/libinput?expand=0&rev=41
This commit is contained in:
Jan Engelhardt 2015-08-04 17:19:30 +00:00 committed by Git OBS Bridge
parent 49715a87c3
commit 1b4109b720
7 changed files with 106 additions and 5 deletions

BIN
libinput-0.20.0.tar.xz (Stored with Git LFS)

Binary file not shown.

Binary file not shown.

BIN
libinput-0.21.0.tar.xz (Stored with Git LFS) Normal file

Binary file not shown.

BIN
libinput-0.21.0.tar.xz.sig Normal file

Binary file not shown.

View File

@ -0,0 +1,61 @@
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

View File

@ -1,3 +1,41 @@
-------------------------------------------------------------------
Tue Aug 4 16:35:20 UTC 2015 - zaitor@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.
* We've also merged a bunch of device-specific device handling to
work around quirks and deficiencies in some touchpad hardware.
* Note that if your distribution is on kernel 4.1.x, you should
add this patch here to your distribution's package unless
kernel dbf3c37086 is in your tree already.
http://lists.freedesktop.org/archives/wayland-devel/2015-August/023782.html
- Add
libinput-touchpad-serial-synaptics-needto-fake-new-touches.patch
following upstreams advice.
-------------------------------------------------------------------
Sat Jul 18 08:28:06 UTC 2015 - tittiatcoke@gmail.com

View File

@ -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 @@ Source: http://freedesktop.org/software/libinput/%name-%rversion.tar.xz
Source2: http://freedesktop.org/software/libinput/%name-%rversion.tar.xz.sig
Source3: baselibs.conf
Source4: %name.keyring
Patch0: 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 @@ to develop applications that require libinput.
%prep
%setup -qn %name-%rversion
%patch0 -p1
%build
if [ ! -e configure ]; then