Hello community,
here is the log from the commit of package xf86-input-libinput for
openSUSE:Factory checked in at 2015-06-09 08:49:11
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/xf86-input-libinput (Old)
and /work/SRC/openSUSE:Factory/.xf86-input-libinput.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "xf86-input-libinput"
Changes:
--------
--- /work/SRC/openSUSE:Factory/xf86-input-libinput/xf86-input-libinput.changes
2015-05-24 19:32:26.000000000 +0200
+++
/work/SRC/openSUSE:Factory/.xf86-input-libinput.new/xf86-input-libinput.changes
2015-06-09 08:50:23.000000000 +0200
@@ -1,0 +2,8 @@
+Sun Jun 7 17:05:39 UTC 2015 - [email protected]
+
+- Update to version 0.11.0:
+ + Only init abs axes if we don't have acceleration.
+ + Use the new unaccelerated valuator ValuatorMask features.
+ + Fix missing scroll methods default/scroll button property.
+
+-------------------------------------------------------------------
Old:
----
xf86-input-libinput-0.10.0.tar.bz2
New:
----
xf86-input-libinput-0.11.0.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ xf86-input-libinput.spec ++++++
--- /var/tmp/diff_new_pack.q1Oy5c/_old 2015-06-09 08:50:24.000000000 +0200
+++ /var/tmp/diff_new_pack.q1Oy5c/_new 2015-06-09 08:50:24.000000000 +0200
@@ -17,7 +17,7 @@
Name: xf86-input-libinput
-Version: 0.10.0
+Version: 0.11.0
Release: 0
Summary: Libinput driver for the Xorg X server
License: MIT
++++++ xf86-input-libinput-0.10.0.tar.bz2 -> xf86-input-libinput-0.11.0.tar.bz2
++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/xf86-input-libinput-0.10.0/ChangeLog
new/xf86-input-libinput-0.11.0/ChangeLog
--- old/xf86-input-libinput-0.10.0/ChangeLog 2015-05-21 02:20:59.000000000
+0200
+++ new/xf86-input-libinput-0.11.0/ChangeLog 2015-06-05 05:41:08.000000000
+0200
@@ -1,3 +1,62 @@
+commit 449b496a3abd2860ada3a27a4d23efc28b87448d
+Author: Peter Hutterer <[email protected]>
+Date: Fri Jun 5 13:40:31 2015 +1000
+
+ xf86-input-libinput 0.11.0
+
+ Signed-off-by: Peter Hutterer <[email protected]>
+
+commit d4e0b5420ff2af2e790f12d10996f93ec6066b4a
+Author: Peter Hutterer <[email protected]>
+Date: Mon Jun 1 11:41:09 2015 +1000
+
+ Fix missing scroll methods default/scroll button property
+
+ Even if no scroll method is enabled by default, we still want those
+ properties.
+
+ Introduced in 8d4e03570c.
+
+ Signed-off-by: Peter Hutterer <[email protected]>
+
+commit 19c91044e44dd31deaeb638a919c64e9a9182448
+Author: Peter Hutterer <[email protected]>
+Date: Tue May 5 14:17:10 2015 +1000
+
+ Use the new unaccelerated valuator ValuatorMask features
+
+ SDL Games like openarena rely on relative input that's handled by the DGA
code
+ in the server. That code casts the driver's input data to int and sends it
to
+ the client. libinput does pointer acceleration for us, so sending any
deltas
+ of less than 1 (likely for slow movements) ends up being 0.
+
+ Use the new ValuatorMask accelerated/unaccelerated values to pass the
+ unaccelerated values along, the server can then decide what to do with it.
+
+ Signed-off-by: Peter Hutterer <[email protected]>
+ Reviewed-by: Hans de Goede <[email protected]>
+
+commit 3d6afca975e5c54d458974ca2e9ada3df209587c
+Author: Peter Hutterer <[email protected]>
+Date: Wed May 20 13:22:45 2015 +1000
+
+ Only init abs axes if we don't have acceleration
+
+ A lot of devices (mainly MS input devices) have abs axes on top of the
+ relative axes. Those axes are usually mute but with the current code we
set up
+ absolute axes for those devices. Relative events are then scaled by the
server
+ which makes the device appear slow.
+
+ As an immediate fix always prefer relative axes and only set up absolute
axes
+ if the device has a calibration matrix but no pointer acceleration.
+ This may mess up other devices where the relative axes are dead, we'll deal
+ with this when it comes.
+
+ https://bugs.freedesktop.org/show_bug.cgi?id=90322
+
+ Signed-off-by: Peter Hutterer <[email protected]>
+ Reviewed-by: Hans de Goede <[email protected]>
+
commit 158e3264cefa9e6ac3e2218027b212237b039ce6
Author: Peter Hutterer <[email protected]>
Date: Thu May 21 09:52:40 2015 +1000
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/xf86-input-libinput-0.10.0/configure
new/xf86-input-libinput-0.11.0/configure
--- old/xf86-input-libinput-0.10.0/configure 2015-05-21 01:52:56.000000000
+0200
+++ new/xf86-input-libinput-0.11.0/configure 2015-06-05 05:40:02.000000000
+0200
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for xf86-input-libinput 0.10.0.
+# Generated by GNU Autoconf 2.69 for xf86-input-libinput 0.11.0.
#
# Report bugs to <https://bugs.freedesktop.org/enter_bug.cgi?product=xorg>.
#
@@ -591,8 +591,8 @@
# Identity of this package.
PACKAGE_NAME='xf86-input-libinput'
PACKAGE_TARNAME='xf86-input-libinput'
-PACKAGE_VERSION='0.10.0'
-PACKAGE_STRING='xf86-input-libinput 0.10.0'
+PACKAGE_VERSION='0.11.0'
+PACKAGE_STRING='xf86-input-libinput 0.11.0'
PACKAGE_BUGREPORT='https://bugs.freedesktop.org/enter_bug.cgi?product=xorg'
PACKAGE_URL=''
@@ -1351,7 +1351,7 @@
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures xf86-input-libinput 0.10.0 to adapt to many kinds of
systems.
+\`configure' configures xf86-input-libinput 0.11.0 to adapt to many kinds of
systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1422,7 +1422,7 @@
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of xf86-input-libinput 0.10.0:";;
+ short | recursive ) echo "Configuration of xf86-input-libinput 0.11.0:";;
esac
cat <<\_ACEOF
@@ -1548,7 +1548,7 @@
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-xf86-input-libinput configure 0.10.0
+xf86-input-libinput configure 0.11.0
generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc.
@@ -1872,7 +1872,7 @@
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by xf86-input-libinput $as_me 0.10.0, which was
+It was created by xf86-input-libinput $as_me 0.11.0, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@
@@ -2740,7 +2740,7 @@
# Define the identity of the package.
PACKAGE='xf86-input-libinput'
- VERSION='0.10.0'
+ VERSION='0.11.0'
cat >>confdefs.h <<_ACEOF
@@ -18527,7 +18527,7 @@
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by xf86-input-libinput $as_me 0.10.0, which was
+This file was extended by xf86-input-libinput $as_me 0.11.0, which was
generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -18593,7 +18593,7 @@
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //;
s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
-xf86-input-libinput config.status 0.10.0
+xf86-input-libinput config.status 0.11.0
configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/xf86-input-libinput-0.10.0/configure.ac
new/xf86-input-libinput-0.11.0/configure.ac
--- old/xf86-input-libinput-0.10.0/configure.ac 2015-05-21 01:52:31.000000000
+0200
+++ new/xf86-input-libinput-0.11.0/configure.ac 2015-06-05 05:39:42.000000000
+0200
@@ -23,7 +23,7 @@
# Initialize Autoconf
AC_PREREQ([2.60])
AC_INIT([xf86-input-libinput],
- [0.10.0],
+ [0.11.0],
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],
[xf86-input-libinput])
AC_CONFIG_SRCDIR([Makefile.am])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/xf86-input-libinput-0.10.0/src/libinput.c
new/xf86-input-libinput-0.11.0/src/libinput.c
--- old/xf86-input-libinput-0.10.0/src/libinput.c 2015-05-21
01:51:43.000000000 +0200
+++ new/xf86-input-libinput-0.11.0/src/libinput.c 2015-06-04
13:26:09.000000000 +0200
@@ -47,6 +47,12 @@
#define XI86_SERVER_FD 0x20
#endif
+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) * 1000 +
GET_ABI_MINOR(ABI_XINPUT_VERSION) > 22000
+#define HAVE_VMASK_UNACCEL 1
+#else
+#undef HAVE_VMASK_UNACCEL
+#endif
+
#define TOUCHPAD_NUM_AXES 4 /* x, y, hscroll, vscroll */
#define TOUCH_MAX_SLOTS 15
#define XORG_KEYCODE_OFFSET 8
@@ -85,7 +91,10 @@
double y_remainder;
} scale;
+ BOOL has_abs;
+
ValuatorMask *valuators;
+ ValuatorMask *valuators_unaccelerated;
struct options {
BOOL tapping;
@@ -526,6 +535,8 @@
SetScrollValuator(dev, 2, SCROLL_TYPE_HORIZONTAL,
driver_data->scroll.hdist, 0);
SetScrollValuator(dev, 3, SCROLL_TYPE_VERTICAL,
driver_data->scroll.vdist, 0);
+ driver_data->has_abs = TRUE;
+
return Success;
}
static void
@@ -636,7 +647,8 @@
if (libinput_device_has_capability(device,
LIBINPUT_DEVICE_CAP_KEYBOARD))
xf86libinput_init_keyboard(pInfo);
if (libinput_device_has_capability(device,
LIBINPUT_DEVICE_CAP_POINTER)) {
- if (libinput_device_config_calibration_has_matrix(device))
+ if (libinput_device_config_calibration_has_matrix(device) &&
+ !libinput_device_config_accel_is_available(device))
xf86libinput_init_pointer_absolute(pInfo);
else
xf86libinput_init_pointer(pInfo);
@@ -695,9 +707,21 @@
y = libinput_event_pointer_get_dy(event);
valuator_mask_zero(mask);
+
+#if HAVE_VMASK_UNACCEL
+ {
+ double ux, uy;
+
+ ux = libinput_event_pointer_get_dx_unaccelerated(event);
+ uy = libinput_event_pointer_get_dy_unaccelerated(event);
+
+ valuator_mask_set_unaccelerated(mask, 0, x, ux);
+ valuator_mask_set_unaccelerated(mask, 1, y, uy);
+ }
+#else
valuator_mask_set_double(mask, 0, x);
valuator_mask_set_double(mask, 1, y);
-
+#endif
xf86PostMotionEventM(dev, Relative, mask);
}
@@ -709,6 +733,13 @@
ValuatorMask *mask = driver_data->valuators;
double x, y;
+ if (!driver_data->has_abs) {
+ xf86IDrvMsg(pInfo, X_ERROR,
+ "Discarding absolute event from relative device. "
+ "Please file a bug\n");
+ return;
+ }
+
x = libinput_event_pointer_get_absolute_x_transformed(event,
TOUCH_AXIS_MAX);
y = libinput_event_pointer_get_absolute_y_transformed(event,
TOUCH_AXIS_MAX);
@@ -1351,6 +1382,10 @@
if (!driver_data->valuators)
goto fail;
+ driver_data->valuators_unaccelerated = valuator_mask_new(2);
+ if (!driver_data->valuators_unaccelerated)
+ goto fail;
+
driver_data->scroll.vdist = 15;
driver_data->scroll.hdist = 15;
@@ -1422,6 +1457,8 @@
fd_pop(&driver_context, pInfo->fd);
if (driver_data->valuators)
valuator_mask_free(&driver_data->valuators);
+ if (driver_data->valuators_unaccelerated)
+ valuator_mask_free(&driver_data->valuators_unaccelerated);
free(path);
free(driver_data);
return BadValue;
@@ -2205,9 +2242,6 @@
return;
scroll_methods =
libinput_device_config_scroll_get_default_method(device);
- if (scroll_methods == LIBINPUT_CONFIG_SCROLL_NO_SCROLL)
- return;
-
if (scroll_methods & LIBINPUT_CONFIG_SCROLL_2FG)
methods[0] = TRUE;
if (scroll_methods & LIBINPUT_CONFIG_SCROLL_EDGE)