Hello community,
here is the log from the commit of package xf86-input-evdev for openSUSE:Factory checked in at 2017-01-23 11:22:05
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/xf86-input-evdev (Old)
and /work/SRC/openSUSE:Factory/.xf86-input-evdev.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "xf86-input-evdev"
Changes:
--------
--- /work/SRC/openSUSE:Factory/xf86-input-evdev/xf86-input-evdev.changes 2016-10-06 12:29:31.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.xf86-input-evdev.new/xf86-input-evdev.changes 2017-01-23 11:22:06.623877778 +0100
@@ -1,0 +2,9 @@
+Thu Jan 19 13:09:53 UTC 2017 - sndirsch@suse.com
+
+- update to version 2.10.5
+ * Two fixes, one new feature for the evdev driver. The new
+ feature is the ability to change the emulated middle button
+ number (e.g. useful on devices with physical middle button
+ as well).
+
+-------------------------------------------------------------------
Old:
----
xf86-input-evdev-2.10.4.tar.bz2
xf86-input-evdev-2.10.4.tar.bz2.sig
New:
----
xf86-input-evdev-2.10.5.tar.bz2
xf86-input-evdev-2.10.5.tar.bz2.sig
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ xf86-input-evdev.spec ++++++
--- /var/tmp/diff_new_pack.7DOmnK/_old 2017-01-23 11:22:07.079813050 +0100
+++ /var/tmp/diff_new_pack.7DOmnK/_new 2017-01-23 11:22:07.083812482 +0100
@@ -1,7 +1,7 @@
#
# spec file for package xf86-input-evdev
#
-# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -17,7 +17,7 @@
Name: xf86-input-evdev
-Version: 2.10.4
+Version: 2.10.5
Release: 0
Summary: Generic Linux input driver for the Xorg X server
License: MIT
++++++ xf86-input-evdev-2.10.4.tar.bz2 -> xf86-input-evdev-2.10.5.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xf86-input-evdev-2.10.4/ChangeLog new/xf86-input-evdev-2.10.5/ChangeLog
--- old/xf86-input-evdev-2.10.4/ChangeLog 2016-10-01 09:54:15.000000000 +0200
+++ new/xf86-input-evdev-2.10.5/ChangeLog 2017-01-18 04:15:33.000000000 +0100
@@ -1,3 +1,66 @@
+commit 1dd61111adea1d137877ca1a9642e1552a152355
+Author: Peter Hutterer
+Date: Wed Jan 18 13:14:29 2017 +1000
+
+ evdev 2.10.5
+
+ Signed-off-by: Peter Hutterer
+
+commit 231061d004ee4e924bb736adc428287367d2001c
+Author: Alexander Volkov
+Date: Mon Dec 26 17:39:32 2016 +0300
+
+ Don't send pointer events in addition to touch events
+
+ Updating abs_vals for touch events since d24431a1863c49aa9edcabf535ffa64bfa87053c
+ leads to posting Motion events with updated coordinates to the X server,
+ which in turn resends them to clients.
+
+ Don't queue Motion events for touch events, the X server should
+ synthesize them itself.
+
+ Signed-off-by: Alexander Volkov
+ Reviewed-by: Peter Hutterer
+ Signed-off-by: Peter Hutterer
+
+commit 425ed6017a42937f69c1e8450ea8f3c6c6c20928
+Author: David Strobach
+Date: Thu Nov 17 20:47:31 2016 +0100
+
+ Middle emulation - make the emulated button number configurable
+
+ Sometimes it may be desirable to remap physical middle button
+ to something else and use emulation instead. The emulation is
+ however hardcoded to emulate physical button 2, so the emulated
+ button gets remapped together with the physical one. This patch
+ adds the Emulate3Button configuration option to allow for user
+ selection of the emulated button number and a configuration
+ like this:
+
+ Section "InputClass"
+ Identifier "Middle button emulation config"
+ MatchProduct ".... some device ..."
+ MatchDriver "evdev"
+ Option "Emulate3Buttons" "on"
+ Option "Emulate3Button" "9"
+ EndSection
+
+ Signed-off-by: Peter Hutterer
+
+commit 7251e42dfbac11eb1619b0a3881ee463b6d76c95
+Author: Peter Hutterer
+Date: Fri Oct 21 09:42:23 2016 +1000
+
+ Fix off-by-one error counting axes
+
+ We stopped counting one too early, but still initialized that axis later,
+ leading to a bug macro to trigger.
+
+ https://bugs.freedesktop.org/show_bug.cgi?id=97956
+
+ Signed-off-by: Peter Hutterer
+ Reviewed-by: Hans de Goede
+
commit 551db5b86e2a19e027e57571b8e5405dacb8bd67
Author: Peter Hutterer
Date: Sat Oct 1 17:48:30 2016 +1000
@@ -1390,25 +1453,25 @@
(1000, 1000). The third touch begins after the first two end, and is at
(500, 500).
- ABS_MT_SLOT 0 /* Set touch slot */
- ABS_MT_TRACKING_ID 0 /* New touch with ID 0 in slot 0 */
- ABS_MT_POSITION_X 500 /* Initial X position */
- ABS_MT_POSITION_Y 500 /* Initial Y position */
- ABS_MT_SLOT 1 /* Set touch slot */
- ABS_MT_TRACKING_ID 1 /* New touch with ID 1 in slot 1 */
- ABS_MT_POSITION_X 1000 /* Initial X position */
- ABS_MT_POSITION_Y 1000 /* Initial Y position */
- SYNC /* End of frame */
- ABS_MT_SLOT 0 /* Go back to slot 0 */
- ABS_MT_TRACKING_ID -1 /* Touch in slot 0 ended */
- ABS_MT_SLOT 1 /* Go to slot 1 */
- ABS_MT_TRACKING_ID -1 /* Touch in slot 1 ended */
- SYNC /* End of frame */
- ABS_MT_SLOT 0 /* Go back to slot 0 */
- ABS_MT_TRACKING_ID 2 /* New touch in slot 0 with ID 2 */
- SYNC /* End of frame */
- ABS_MT_TRACKING_ID -1 /* Touch in last slot (0) ended */
- SYNC /* End of frame */
+ ABS_MT_SLOT 0 /* Set touch slot */
+ ABS_MT_TRACKING_ID 0 /* New touch with ID 0 in slot 0 */
+ ABS_MT_POSITION_X 500 /* Initial X position */
+ ABS_MT_POSITION_Y 500 /* Initial Y position */
+ ABS_MT_SLOT 1 /* Set touch slot */
+ ABS_MT_TRACKING_ID 1 /* New touch with ID 1 in slot 1 */
+ ABS_MT_POSITION_X 1000 /* Initial X position */
+ ABS_MT_POSITION_Y 1000 /* Initial Y position */
+ SYNC /* End of frame */
+ ABS_MT_SLOT 0 /* Go back to slot 0 */
+ ABS_MT_TRACKING_ID -1 /* Touch in slot 0 ended */
+ ABS_MT_SLOT 1 /* Go to slot 1 */
+ ABS_MT_TRACKING_ID -1 /* Touch in slot 1 ended */
+ SYNC /* End of frame */
+ ABS_MT_SLOT 0 /* Go back to slot 0 */
+ ABS_MT_TRACKING_ID 2 /* New touch in slot 0 with ID 2 */
+ SYNC /* End of frame */
+ ABS_MT_TRACKING_ID -1 /* Touch in last slot (0) ended */
+ SYNC /* End of frame */
Note that touch 2 has the same X and Y position as touch 0. This is
implied because no new value was emitted for slot 0. In fact, Linux will
@@ -1890,7 +1953,7 @@
Merge branch 'smooth-scrolling'
Conflicts:
- src/evdev.c
+ src/evdev.c
Signed-off-by: Peter Hutterer
@@ -4042,7 +4105,7 @@
Coverity Prevent: NO_EFFECT in EvdevWheelEmuSetProperty:
Event unsigned_compare: Comparing unsigned less than zero is never true. "pEvdev->emulateWheel.timeout < 0UL"
- 342 if (pEvdev->emulateWheel.timeout < 0)
+ 342 if (pEvdev->emulateWheel.timeout < 0)
Signed-off-by: Peter Hutterer
@@ -6459,7 +6522,7 @@
Conflicts:
- src/evdev.h
+ src/evdev.h
commit 294355842ba9fb3cb3bbd7bfd60c9ca3ce704475
Author: Zephaniah E. Hull
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xf86-input-evdev-2.10.4/Makefile.in new/xf86-input-evdev-2.10.5/Makefile.in
--- old/xf86-input-evdev-2.10.4/Makefile.in 2016-10-01 09:49:20.000000000 +0200
+++ new/xf86-input-evdev-2.10.5/Makefile.in 2017-01-18 04:15:30.000000000 +0100
@@ -210,8 +210,7 @@
DIST_SUBDIRS = $(SUBDIRS)
am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/config.h.in \
$(srcdir)/xorg-evdev.pc.in COPYING ChangeLog INSTALL README \
- compile config.guess config.sub depcomp install-sh ltmain.sh \
- missing
+ compile config.guess config.sub install-sh ltmain.sh missing
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
distdir = $(PACKAGE)-$(VERSION)
top_distdir = $(distdir)
@@ -691,7 +690,7 @@
! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \
|| chmod -R a+r "$(distdir)"
dist-gzip: distdir
- tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
+ tardir=$(distdir) && $(am__tar) | eval GZIP= gzip $(GZIP_ENV) -c >$(distdir).tar.gz
$(am__post_remove_distdir)
dist-bzip2: distdir
tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2
@@ -716,7 +715,7 @@
@echo WARNING: "Support for shar distribution archives is" \
"deprecated." >&2
@echo WARNING: "It will be removed altogether in Automake 2.0" >&2
- shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
+ shar $(distdir) | eval GZIP= gzip $(GZIP_ENV) -c >$(distdir).shar.gz
$(am__post_remove_distdir)
dist-zip: distdir
@@ -734,7 +733,7 @@
distcheck: dist
case '$(DIST_ARCHIVES)' in \
*.tar.gz*) \
- GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\
+ eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).tar.gz | $(am__untar) ;;\
*.tar.bz2*) \
bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\
*.tar.lz*) \
@@ -744,7 +743,7 @@
*.tar.Z*) \
uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
*.shar.gz*) \
- GZIP=$(GZIP_ENV) gzip -dc $(distdir).shar.gz | unshar ;;\
+ eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).shar.gz | unshar ;;\
*.zip*) \
unzip $(distdir).zip ;;\
esac
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xf86-input-evdev-2.10.4/aclocal.m4 new/xf86-input-evdev-2.10.5/aclocal.m4
--- old/xf86-input-evdev-2.10.4/aclocal.m4 2016-10-01 09:49:19.000000000 +0200
+++ new/xf86-input-evdev-2.10.5/aclocal.m4 2017-01-18 04:15:29.000000000 +0100
@@ -9053,7 +9053,7 @@
m4_ifndef([_LT_PROG_CXX], [AC_DEFUN([_LT_PROG_CXX])])
dnl pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*-
-dnl serial 11 (pkg-config-0.29)
+dnl serial 11 (pkg-config-0.29.1)
dnl
dnl Copyright © 2004 Scott James Remnant .
dnl Copyright © 2012-2015 Dan Nicholson
@@ -9095,7 +9095,7 @@
dnl See the "Since" comment for each macro you use to see what version
dnl of the macros you require.
m4_defun([PKG_PREREQ],
-[m4_define([PKG_MACROS_VERSION], [0.29])
+[m4_define([PKG_MACROS_VERSION], [0.29.1])
m4_if(m4_version_compare(PKG_MACROS_VERSION, [$1]), -1,
[m4_fatal([pkg.m4 version $1 or higher is required but ]PKG_MACROS_VERSION[ found])])
])dnl PKG_PREREQ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xf86-input-evdev-2.10.4/compile new/xf86-input-evdev-2.10.5/compile
--- old/xf86-input-evdev-2.10.4/compile 2014-11-26 00:23:52.000000000 +0100
+++ new/xf86-input-evdev-2.10.5/compile 2017-01-18 04:15:30.000000000 +0100
@@ -3,7 +3,7 @@
scriptversion=2012-10-14.11; # UTC
-# Copyright (C) 1999-2013 Free Software Foundation, Inc.
+# Copyright (C) 1999-2014 Free Software Foundation, Inc.
# Written by Tom Tromey .
#
# This program is free software; you can redistribute it and/or modify
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xf86-input-evdev-2.10.4/config.guess new/xf86-input-evdev-2.10.5/config.guess
--- old/xf86-input-evdev-2.10.4/config.guess 2014-11-26 00:23:52.000000000 +0100
+++ new/xf86-input-evdev-2.10.5/config.guess 2017-01-18 04:15:30.000000000 +0100
@@ -1,8 +1,8 @@
#! /bin/sh
# Attempt to guess a canonical system name.
-# Copyright 1992-2014 Free Software Foundation, Inc.
+# Copyright 1992-2015 Free Software Foundation, Inc.
-timestamp='2014-03-23'
+timestamp='2015-01-01'
# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
@@ -24,12 +24,12 @@
# program. This Exception is an additional permission under section 7
# of the GNU General Public License, version 3 ("GPLv3").
#
-# Originally written by Per Bothner.
+# Originally written by Per Bothner; maintained since 2000 by Ben Elliston.
#
# You can get the latest version of this script from:
# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess...
#
-# Please send patches with a ChangeLog entry to config-patches@gnu.org.
+# Please send patches to .
me=`echo "$0" | sed -e 's,.*/,,'`
@@ -50,7 +50,7 @@
GNU config.guess ($timestamp)
Originally written by Per Bothner.
-Copyright 1992-2014 Free Software Foundation, Inc.
+Copyright 1992-2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@@ -579,8 +579,9 @@
else
IBM_ARCH=powerpc
fi
- if [ -x /usr/bin/oslevel ] ; then
- IBM_REV=`/usr/bin/oslevel`
+ if [ -x /usr/bin/lslpp ] ; then
+ IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc |
+ awk -F: '{ print $3 }' | sed s/[0-9]*$/0/`
else
IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
fi
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xf86-input-evdev-2.10.4/config.sub new/xf86-input-evdev-2.10.5/config.sub
--- old/xf86-input-evdev-2.10.4/config.sub 2014-11-26 00:23:52.000000000 +0100
+++ new/xf86-input-evdev-2.10.5/config.sub 2017-01-18 04:15:30.000000000 +0100
@@ -1,8 +1,8 @@
#! /bin/sh
# Configuration validation subroutine script.
-# Copyright 1992-2014 Free Software Foundation, Inc.
+# Copyright 1992-2015 Free Software Foundation, Inc.
-timestamp='2014-07-28'
+timestamp='2015-01-01'
# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
@@ -25,7 +25,7 @@
# of the GNU General Public License, version 3 ("GPLv3").
-# Please send patches with a ChangeLog entry to config-patches@gnu.org.
+# Please send patches to .
#
# Configuration subroutine to validate and canonicalize a configuration type.
# Supply the specified configuration type as an argument.
@@ -68,7 +68,7 @@
version="\
GNU config.sub ($timestamp)
-Copyright 1992-2014 Free Software Foundation, Inc.
+Copyright 1992-2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@@ -260,7 +260,7 @@
| c4x | c8051 | clipper \
| d10v | d30v | dlx | dsp16xx \
| epiphany \
- | fido | fr30 | frv \
+ | fido | fr30 | frv | ft32 \
| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
| hexagon \
| i370 | i860 | i960 | ia64 \
@@ -302,6 +302,7 @@
| pdp10 | pdp11 | pj | pjl \
| powerpc | powerpc64 | powerpc64le | powerpcle \
| pyramid \
+ | riscv32 | riscv64 \
| rl78 | rx \
| score \
| sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
@@ -312,6 +313,7 @@
| tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \
| ubicom32 \
| v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \
+ | visium \
| we32k \
| x86 | xc16x | xstormy16 | xtensa \
| z8k | z80)
@@ -326,6 +328,9 @@
c6x)
basic_machine=tic6x-unknown
;;
+ leon|leon[3-9])
+ basic_machine=sparc-$basic_machine
+ ;;
m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip)
basic_machine=$basic_machine-unknown
os=-none
@@ -436,6 +441,7 @@
| ubicom32-* \
| v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \
| vax-* \
+ | visium-* \
| we32k-* \
| x86-* | x86_64-* | xc16x-* | xps100-* \
| xstormy16-* | xtensa*-* \
@@ -773,6 +779,9 @@
basic_machine=m68k-isi
os=-sysv
;;
+ leon-*|leon[3-9]-*)
+ basic_machine=sparc-`echo $basic_machine | sed 's/-.*//'`
+ ;;
m68knommu)
basic_machine=m68k-unknown
os=-linux
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xf86-input-evdev-2.10.4/configure new/xf86-input-evdev-2.10.5/configure
--- old/xf86-input-evdev-2.10.4/configure 2016-10-01 09:49:20.000000000 +0200
+++ new/xf86-input-evdev-2.10.5/configure 2017-01-18 04:15:30.000000000 +0100
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for xf86-input-evdev 2.10.4.
+# Generated by GNU Autoconf 2.69 for xf86-input-evdev 2.10.5.
#
# Report bugs to https://bugs.freedesktop.org/enter_bug.cgi?product=xorg.
#
@@ -591,8 +591,8 @@
# Identity of this package.
PACKAGE_NAME='xf86-input-evdev'
PACKAGE_TARNAME='xf86-input-evdev'
-PACKAGE_VERSION='2.10.4'
-PACKAGE_STRING='xf86-input-evdev 2.10.4'
+PACKAGE_VERSION='2.10.5'
+PACKAGE_STRING='xf86-input-evdev 2.10.5'
PACKAGE_BUGREPORT='https://bugs.freedesktop.org/enter_bug.cgi?product=xorg'
PACKAGE_URL=''
@@ -1364,7 +1364,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-evdev 2.10.4 to adapt to many kinds of systems.
+\`configure' configures xf86-input-evdev 2.10.5 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1435,7 +1435,7 @@
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of xf86-input-evdev 2.10.4:";;
+ short | recursive ) echo "Configuration of xf86-input-evdev 2.10.5:";;
esac
cat <<\_ACEOF
@@ -1574,7 +1574,7 @@
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-xf86-input-evdev configure 2.10.4
+xf86-input-evdev configure 2.10.5
generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc.
@@ -1898,7 +1898,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-evdev $as_me 2.10.4, which was
+It was created by xf86-input-evdev $as_me 2.10.5, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@
@@ -2766,7 +2766,7 @@
# Define the identity of the package.
PACKAGE='xf86-input-evdev'
- VERSION='2.10.4'
+ VERSION='2.10.5'
cat >>confdefs.h <<_ACEOF
@@ -19227,7 +19227,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-evdev $as_me 2.10.4, which was
+This file was extended by xf86-input-evdev $as_me 2.10.5, which was
generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -19293,7 +19293,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-evdev config.status 2.10.4
+xf86-input-evdev config.status 2.10.5
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-evdev-2.10.4/configure.ac new/xf86-input-evdev-2.10.5/configure.ac
--- old/xf86-input-evdev-2.10.4/configure.ac 2016-10-01 09:49:07.000000000 +0200
+++ new/xf86-input-evdev-2.10.5/configure.ac 2017-01-18 04:14:01.000000000 +0100
@@ -23,7 +23,7 @@
# Initialize Autoconf
AC_PREREQ([2.60])
AC_INIT([xf86-input-evdev],
- [2.10.4],
+ [2.10.5],
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],
[xf86-input-evdev])
AC_CONFIG_SRCDIR([Makefile.am])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xf86-input-evdev-2.10.4/depcomp new/xf86-input-evdev-2.10.5/depcomp
--- old/xf86-input-evdev-2.10.4/depcomp 2014-11-26 00:23:52.000000000 +0100
+++ new/xf86-input-evdev-2.10.5/depcomp 2017-01-18 04:15:31.000000000 +0100
@@ -3,7 +3,7 @@
scriptversion=2013-05-30.07; # UTC
-# Copyright (C) 1999-2013 Free Software Foundation, Inc.
+# Copyright (C) 1999-2014 Free Software Foundation, Inc.
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xf86-input-evdev-2.10.4/include/evdev-properties.h new/xf86-input-evdev-2.10.5/include/evdev-properties.h
--- old/xf86-input-evdev-2.10.4/include/evdev-properties.h 2016-01-13 07:44:52.000000000 +0100
+++ new/xf86-input-evdev-2.10.5/include/evdev-properties.h 2016-11-21 05:59:44.000000000 +0100
@@ -33,6 +33,8 @@
#define EVDEV_PROP_MIDBUTTON "Evdev Middle Button Emulation"
/* CARD32 */
#define EVDEV_PROP_MIDBUTTON_TIMEOUT "Evdev Middle Button Timeout"
+/* CARD8 */
+#define EVDEV_PROP_MIDBUTTON_BUTTON "Evdev Middle Button Button"
/* Wheel emulation */
/* BOOL */
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xf86-input-evdev-2.10.4/install-sh new/xf86-input-evdev-2.10.5/install-sh
--- old/xf86-input-evdev-2.10.4/install-sh 2014-11-26 00:23:52.000000000 +0100
+++ new/xf86-input-evdev-2.10.5/install-sh 2017-01-18 04:15:30.000000000 +0100
@@ -1,7 +1,7 @@
#!/bin/sh
# install - install a program, script, or datafile
-scriptversion=2011-11-20.07; # UTC
+scriptversion=2013-12-25.23; # UTC
# This originates from X11R5 (mit/util/scripts/install.sh), which was
# later released in X11R6 (xc/config/util/install.sh) with the
@@ -41,19 +41,15 @@
# This script is compatible with the BSD install script, but was written
# from scratch.
+tab=' '
nl='
'
-IFS=" "" $nl"
+IFS=" $tab$nl"
-# set DOITPROG to echo to test this script
+# Set DOITPROG to "echo" to test this script.
-# Don't use :- since 4.3BSD and earlier shells don't like it.
doit=${DOITPROG-}
-if test -z "$doit"; then
- doit_exec=exec
-else
- doit_exec=$doit
-fi
+doit_exec=${doit:-exec}
# Put in absolute file names if you don't have them in your path;
# or use environment vars.
@@ -68,17 +64,6 @@
rmprog=${RMPROG-rm}
stripprog=${STRIPPROG-strip}
-posix_glob='?'
-initialize_posix_glob='
- test "$posix_glob" != "?" || {
- if (set -f) 2>/dev/null; then
- posix_glob=
- else
- posix_glob=:
- fi
- }
-'
-
posix_mkdir=
# Desired mode of installed file.
@@ -97,7 +82,7 @@
dst_arg=
copy_on_change=false
-no_target_directory=
+is_target_a_directory=possibly
usage="\
Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
@@ -137,46 +122,57 @@
-d) dir_arg=true;;
-g) chgrpcmd="$chgrpprog $2"
- shift;;
+ shift;;
--help) echo "$usage"; exit $?;;
-m) mode=$2
- case $mode in
- *' '* | *' '* | *'
-'* | *'*'* | *'?'* | *'['*)
- echo "$0: invalid mode: $mode" >&2
- exit 1;;
- esac
- shift;;
+ case $mode in
+ *' '* | *"$tab"* | *"$nl"* | *'*'* | *'?'* | *'['*)
+ echo "$0: invalid mode: $mode" >&2
+ exit 1;;
+ esac
+ shift;;
-o) chowncmd="$chownprog $2"
- shift;;
+ shift;;
-s) stripcmd=$stripprog;;
- -t) dst_arg=$2
- # Protect names problematic for 'test' and other utilities.
- case $dst_arg in
- -* | [=\(\)!]) dst_arg=./$dst_arg;;
- esac
- shift;;
+ -t)
+ is_target_a_directory=always
+ dst_arg=$2
+ # Protect names problematic for 'test' and other utilities.
+ case $dst_arg in
+ -* | [=\(\)!]) dst_arg=./$dst_arg;;
+ esac
+ shift;;
- -T) no_target_directory=true;;
+ -T) is_target_a_directory=never;;
--version) echo "$0 $scriptversion"; exit $?;;
- --) shift
- break;;
+ --) shift
+ break;;
- -*) echo "$0: invalid option: $1" >&2
- exit 1;;
+ -*) echo "$0: invalid option: $1" >&2
+ exit 1;;
*) break;;
esac
shift
done
+# We allow the use of options -d and -T together, by making -d
+# take the precedence; this is for compatibility with GNU install.
+
+if test -n "$dir_arg"; then
+ if test -n "$dst_arg"; then
+ echo "$0: target directory not allowed when installing a directory." >&2
+ exit 1
+ fi
+fi
+
if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then
# When -d is used, all remaining arguments are directories to create.
# When -t is used, the destination is already specified.
@@ -208,6 +204,15 @@
fi
if test -z "$dir_arg"; then
+ if test $# -gt 1 || test "$is_target_a_directory" = always; then
+ if test ! -d "$dst_arg"; then
+ echo "$0: $dst_arg: Is not a directory." >&2
+ exit 1
+ fi
+ fi
+fi
+
+if test -z "$dir_arg"; then
do_exit='(exit $ret); exit $ret'
trap "ret=129; $do_exit" 1
trap "ret=130; $do_exit" 2
@@ -223,16 +228,16 @@
*[0-7])
if test -z "$stripcmd"; then
- u_plus_rw=
+ u_plus_rw=
else
- u_plus_rw='% 200'
+ u_plus_rw='% 200'
fi
cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;;
*)
if test -z "$stripcmd"; then
- u_plus_rw=
+ u_plus_rw=
else
- u_plus_rw=,u+rw
+ u_plus_rw=,u+rw
fi
cp_umask=$mode$u_plus_rw;;
esac
@@ -269,41 +274,15 @@
# If destination is a directory, append the input filename; won't work
# if double slashes aren't ignored.
if test -d "$dst"; then
- if test -n "$no_target_directory"; then
- echo "$0: $dst_arg: Is a directory" >&2
- exit 1
+ if test "$is_target_a_directory" = never; then
+ echo "$0: $dst_arg: Is a directory" >&2
+ exit 1
fi
dstdir=$dst
dst=$dstdir/`basename "$src"`
dstdir_status=0
else
- # Prefer dirname, but fall back on a substitute if dirname fails.
- dstdir=`
- (dirname "$dst") 2>/dev/null ||
- expr X"$dst" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$dst" : 'X\(//\)[^/]' \| \
- X"$dst" : 'X\(//\)$' \| \
- X"$dst" : 'X\(/\)' \| . 2>/dev/null ||
- echo X"$dst" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
- s//\1/
- q
- }
- /^X\(\/\/\)[^/].*/{
- s//\1/
- q
- }
- /^X\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'
- `
-
+ dstdir=`dirname "$dst"`
test -d "$dstdir"
dstdir_status=$?
fi
@@ -314,74 +293,74 @@
if test $dstdir_status != 0; then
case $posix_mkdir in
'')
- # Create intermediate dirs using mode 755 as modified by the umask.
- # This is like FreeBSD 'install' as of 1997-10-28.
- umask=`umask`
- case $stripcmd.$umask in
- # Optimize common cases.
- *[2367][2367]) mkdir_umask=$umask;;
- .*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;;
-
- *[0-7])
- mkdir_umask=`expr $umask + 22 \
- - $umask % 100 % 40 + $umask % 20 \
- - $umask % 10 % 4 + $umask % 2
- `;;
- *) mkdir_umask=$umask,go-w;;
- esac
-
- # With -d, create the new directory with the user-specified mode.
- # Otherwise, rely on $mkdir_umask.
- if test -n "$dir_arg"; then
- mkdir_mode=-m$mode
- else
- mkdir_mode=
- fi
-
- posix_mkdir=false
- case $umask in
- *[123567][0-7][0-7])
- # POSIX mkdir -p sets u+wx bits regardless of umask, which
- # is incompatible with FreeBSD 'install' when (umask & 300) != 0.
- ;;
- *)
- tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
- trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0
-
- if (umask $mkdir_umask &&
- exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1
- then
- if test -z "$dir_arg" || {
- # Check for POSIX incompatibilities with -m.
- # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
- # other-writable bit of parent directory when it shouldn't.
- # FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
- ls_ld_tmpdir=`ls -ld "$tmpdir"`
- case $ls_ld_tmpdir in
- d????-?r-*) different_mode=700;;
- d????-?--*) different_mode=755;;
- *) false;;
- esac &&
- $mkdirprog -m$different_mode -p -- "$tmpdir" && {
- ls_ld_tmpdir_1=`ls -ld "$tmpdir"`
- test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
- }
- }
- then posix_mkdir=:
- fi
- rmdir "$tmpdir/d" "$tmpdir"
- else
- # Remove any dirs left behind by ancient mkdir implementations.
- rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null
- fi
- trap '' 0;;
- esac;;
+ # Create intermediate dirs using mode 755 as modified by the umask.
+ # This is like FreeBSD 'install' as of 1997-10-28.
+ umask=`umask`
+ case $stripcmd.$umask in
+ # Optimize common cases.
+ *[2367][2367]) mkdir_umask=$umask;;
+ .*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;;
+
+ *[0-7])
+ mkdir_umask=`expr $umask + 22 \
+ - $umask % 100 % 40 + $umask % 20 \
+ - $umask % 10 % 4 + $umask % 2
+ `;;
+ *) mkdir_umask=$umask,go-w;;
+ esac
+
+ # With -d, create the new directory with the user-specified mode.
+ # Otherwise, rely on $mkdir_umask.
+ if test -n "$dir_arg"; then
+ mkdir_mode=-m$mode
+ else
+ mkdir_mode=
+ fi
+
+ posix_mkdir=false
+ case $umask in
+ *[123567][0-7][0-7])
+ # POSIX mkdir -p sets u+wx bits regardless of umask, which
+ # is incompatible with FreeBSD 'install' when (umask & 300) != 0.
+ ;;
+ *)
+ tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
+ trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0
+
+ if (umask $mkdir_umask &&
+ exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1
+ then
+ if test -z "$dir_arg" || {
+ # Check for POSIX incompatibilities with -m.
+ # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
+ # other-writable bit of parent directory when it shouldn't.
+ # FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
+ ls_ld_tmpdir=`ls -ld "$tmpdir"`
+ case $ls_ld_tmpdir in
+ d????-?r-*) different_mode=700;;
+ d????-?--*) different_mode=755;;
+ *) false;;
+ esac &&
+ $mkdirprog -m$different_mode -p -- "$tmpdir" && {
+ ls_ld_tmpdir_1=`ls -ld "$tmpdir"`
+ test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
+ }
+ }
+ then posix_mkdir=:
+ fi
+ rmdir "$tmpdir/d" "$tmpdir"
+ else
+ # Remove any dirs left behind by ancient mkdir implementations.
+ rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null
+ fi
+ trap '' 0;;
+ esac;;
esac
if
$posix_mkdir && (
- umask $mkdir_umask &&
- $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir"
+ umask $mkdir_umask &&
+ $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir"
)
then :
else
@@ -391,53 +370,51 @@
# directory the slow way, step by step, checking for races as we go.
case $dstdir in
- /*) prefix='/';;
- [-=\(\)!]*) prefix='./';;
- *) prefix='';;
+ /*) prefix='/';;
+ [-=\(\)!]*) prefix='./';;
+ *) prefix='';;
esac
- eval "$initialize_posix_glob"
-
oIFS=$IFS
IFS=/
- $posix_glob set -f
+ set -f
set fnord $dstdir
shift
- $posix_glob set +f
+ set +f
IFS=$oIFS
prefixes=
for d
do
- test X"$d" = X && continue
+ test X"$d" = X && continue
- prefix=$prefix$d
- if test -d "$prefix"; then
- prefixes=
- else
- if $posix_mkdir; then
- (umask=$mkdir_umask &&
- $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break
- # Don't fail if two instances are running concurrently.
- test -d "$prefix" || exit 1
- else
- case $prefix in
- *\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;;
- *) qprefix=$prefix;;
- esac
- prefixes="$prefixes '$qprefix'"
- fi
- fi
- prefix=$prefix/
+ prefix=$prefix$d
+ if test -d "$prefix"; then
+ prefixes=
+ else
+ if $posix_mkdir; then
+ (umask=$mkdir_umask &&
+ $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break
+ # Don't fail if two instances are running concurrently.
+ test -d "$prefix" || exit 1
+ else
+ case $prefix in
+ *\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;;
+ *) qprefix=$prefix;;
+ esac
+ prefixes="$prefixes '$qprefix'"
+ fi
+ fi
+ prefix=$prefix/
done
if test -n "$prefixes"; then
- # Don't fail if two instances are running concurrently.
- (umask $mkdir_umask &&
- eval "\$doit_exec \$mkdirprog $prefixes") ||
- test -d "$dstdir" || exit 1
- obsolete_mkdir_used=true
+ # Don't fail if two instances are running concurrently.
+ (umask $mkdir_umask &&
+ eval "\$doit_exec \$mkdirprog $prefixes") ||
+ test -d "$dstdir" || exit 1
+ obsolete_mkdir_used=true
fi
fi
fi
@@ -472,15 +449,12 @@
# If -C, don't bother to copy if it wouldn't change the file.
if $copy_on_change &&
- old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` &&
- new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` &&
-
- eval "$initialize_posix_glob" &&
- $posix_glob set -f &&
+ old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` &&
+ new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` &&
+ set -f &&
set X $old && old=:$2:$4:$5:$6 &&
set X $new && new=:$2:$4:$5:$6 &&
- $posix_glob set +f &&
-
+ set +f &&
test "$old" = "$new" &&
$cmpprog "$dst" "$dsttmp" >/dev/null 2>&1
then
@@ -493,24 +467,24 @@
# to itself, or perhaps because mv is so ancient that it does not
# support -f.
{
- # Now remove or move aside any old file at destination location.
- # We try this two ways since rm can't unlink itself on some
- # systems and the destination file might be busy for other
- # reasons. In this case, the final cleanup might fail but the new
- # file should still install successfully.
- {
- test ! -f "$dst" ||
- $doit $rmcmd -f "$dst" 2>/dev/null ||
- { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null &&
- { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; }
- } ||
- { echo "$0: cannot unlink or rename $dst" >&2
- (exit 1); exit 1
- }
- } &&
+ # Now remove or move aside any old file at destination location.
+ # We try this two ways since rm can't unlink itself on some
+ # systems and the destination file might be busy for other
+ # reasons. In this case, the final cleanup might fail but the new
+ # file should still install successfully.
+ {
+ test ! -f "$dst" ||
+ $doit $rmcmd -f "$dst" 2>/dev/null ||
+ { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null &&
+ { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; }
+ } ||
+ { echo "$0: cannot unlink or rename $dst" >&2
+ (exit 1); exit 1
+ }
+ } &&
- # Now rename the file to the real destination.
- $doit $mvcmd "$dsttmp" "$dst"
+ # Now rename the file to the real destination.
+ $doit $mvcmd "$dsttmp" "$dst"
}
fi || exit 1
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xf86-input-evdev-2.10.4/man/evdev.man new/xf86-input-evdev-2.10.5/man/evdev.man
--- old/xf86-input-evdev-2.10.4/man/evdev.man 2016-05-12 07:28:14.000000000 +0200
+++ new/xf86-input-evdev-2.10.5/man/evdev.man 2016-11-21 05:59:44.000000000 +0100
@@ -94,6 +94,11 @@
if two buttons where pressed "simultaneously" when 3 button emulation is
enabled. Default: 50. Property: "Evdev Middle Button Timeout".
.TP 7
+.BI "Option \*qEmulate3Button\*q \*q" integer \*q
+Specifies the physical button number to be emitted if middle button emulation
+is triggered.
+Default: 2. Property: "Evdev Middle Button Button".
+.TP 7
.BI "Option \*qEmulateWheel\*q \*q" boolean \*q
Enable/disable "wheel" emulation. Wheel emulation means emulating button
press/release events when the mouse is moved while a specific real button
@@ -283,6 +288,9 @@
.BI "Evdev Middle Button Timeout"
1 16-bit positive value.
.TP 7
+.BI "Evdev Middle Button Button"
+1 8-bit value, allowed range 0-32, 0 disables the button.
+.TP 7
.BI "Evdev Wheel Emulation"
1 boolean value (8 bit, 0 or 1).
.TP 7
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xf86-input-evdev-2.10.4/missing new/xf86-input-evdev-2.10.5/missing
--- old/xf86-input-evdev-2.10.4/missing 2014-11-26 00:23:52.000000000 +0100
+++ new/xf86-input-evdev-2.10.5/missing 2017-01-18 04:15:30.000000000 +0100
@@ -3,7 +3,7 @@
scriptversion=2013-10-28.13; # UTC
-# Copyright (C) 1996-2013 Free Software Foundation, Inc.
+# Copyright (C) 1996-2014 Free Software Foundation, Inc.
# Originally written by Fran,cois Pinard , 1996.
# This program is free software; you can redistribute it and/or modify
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xf86-input-evdev-2.10.4/src/emuMB.c new/xf86-input-evdev-2.10.5/src/emuMB.c
--- old/xf86-input-evdev-2.10.4/src/emuMB.c 2016-09-06 05:51:21.000000000 +0200
+++ new/xf86-input-evdev-2.10.5/src/emuMB.c 2016-11-21 05:59:44.000000000 +0100
@@ -45,6 +45,7 @@
static Atom prop_mbemu = 0; /* Middle button emulation on/off property */
static Atom prop_mbtimeout = 0; /* Middle button timeout property */
+static Atom prop_mbbuton = 0; /* Middle button target button property */
/*
* Lets create a simple finite-state machine for 3 button emulation:
*
@@ -185,6 +186,7 @@
{
EvdevPtr pEvdev = pInfo->private;
int id;
+ int mapped_id;
#if HAVE_THREADED_INPUT
input_lock();
@@ -194,7 +196,10 @@
pEvdev->emulateMB.pending = FALSE;
if ((id = stateTab[pEvdev->emulateMB.state][4][0]) != 0) {
- EvdevPostButtonEvent(pInfo, abs(id),
+ mapped_id = abs(id);
+ if (mapped_id == 2)
+ mapped_id = pEvdev->emulateMB.button;
+ EvdevPostButtonEvent(pInfo, mapped_id,
(id >= 0) ? BUTTON_PRESS : BUTTON_RELEASE);
pEvdev->emulateMB.state =
stateTab[pEvdev->emulateMB.state][4][2];
@@ -226,6 +231,7 @@
{
EvdevPtr pEvdev = pInfo->private;
int id;
+ int mapped_id;
int *btstate;
int ret = FALSE;
@@ -244,7 +250,10 @@
if ((id = stateTab[pEvdev->emulateMB.state][*btstate][0]) != 0)
{
- EvdevQueueButtonEvent(pInfo, abs(id), (id >= 0));
+ mapped_id = abs(id);
+ if (mapped_id == 2)
+ mapped_id = pEvdev->emulateMB.button;
+ EvdevQueueButtonEvent(pInfo, mapped_id, (id >= 0));
ret = TRUE;
}
if ((id = stateTab[pEvdev->emulateMB.state][*btstate][1]) != 0)
@@ -301,12 +310,23 @@
EvdevMBEmuPreInit(InputInfoPtr pInfo)
{
EvdevPtr pEvdev = (EvdevPtr)pInfo->private;
+ int bt;
pEvdev->emulateMB.enabled = xf86SetBoolOption(pInfo->options,
"Emulate3Buttons",
FALSE);
pEvdev->emulateMB.timeout = xf86SetIntOption(pInfo->options,
"Emulate3Timeout", 50);
+ bt = xf86SetIntOption(pInfo->options, "Emulate3Button", 2);
+ if (bt < 0 || bt > EVDEV_MAXBUTTONS) {
+ xf86IDrvMsg(pInfo, X_WARNING, "Invalid Emulate3Button value: %d\n",
+ bt);
+ xf86IDrvMsg(pInfo, X_WARNING, "Middle button emulation disabled.\n");
+
+ pEvdev->emulateMB.enabled = FALSE;
+ }
+
+ pEvdev->emulateMB.button = bt;
}
void
@@ -338,6 +358,7 @@
{
InputInfoPtr pInfo = dev->public.devicePrivate;
EvdevPtr pEvdev = pInfo->private;
+ int bt;
if (atom == prop_mbemu)
{
@@ -353,6 +374,18 @@
if (!checkonly)
pEvdev->emulateMB.timeout = *((CARD32*)val->data);
+ } else if (atom == prop_mbbuton)
+ {
+ if (val->format != 8 || val->size != 1 || val->type != XA_INTEGER)
+ return BadMatch;
+
+ bt = *((CARD8*)val->data);
+
+ if (bt < 0 || bt > EVDEV_MAXBUTTONS)
+ return BadValue;
+
+ if (!checkonly)
+ pEvdev->emulateMB.button = bt;
}
return Success;
@@ -390,5 +423,15 @@
return;
XISetDevicePropertyDeletable(dev, prop_mbtimeout, FALSE);
+ prop_mbbuton = MakeAtom(EVDEV_PROP_MIDBUTTON_BUTTON,
+ strlen(EVDEV_PROP_MIDBUTTON_BUTTON),
+ TRUE);
+ rc = XIChangeDeviceProperty(dev, prop_mbbuton, XA_INTEGER, 8, PropModeReplace, 1,
+ &pEvdev->emulateMB.button, FALSE);
+
+ if (rc != Success)
+ return;
+ XISetDevicePropertyDeletable(dev, prop_mbbuton, FALSE);
+
XIRegisterPropertyHandler(dev, EvdevMBEmuSetProperty, NULL, NULL);
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xf86-input-evdev-2.10.4/src/evdev.c new/xf86-input-evdev-2.10.5/src/evdev.c
--- old/xf86-input-evdev-2.10.4/src/evdev.c 2016-06-02 01:41:25.000000000 +0200
+++ new/xf86-input-evdev-2.10.5/src/evdev.c 2017-01-03 02:26:00.000000000 +0100
@@ -784,7 +784,6 @@
if (ev->code >= ABS_MT_SLOT) {
EvdevProcessTouchEvent(pInfo, ev);
- pEvdev->abs_queued = 1;
} else if (!pEvdev->mt_mask) {
map = pEvdev->abs_axis_map[ev->code];
@@ -1238,7 +1237,7 @@
return;
/* Absolute multitouch axes: adjust mapping and axes counts. */
- for (axis = ABS_MT_SLOT; axis < ABS_MAX; axis++)
+ for (axis = ABS_MT_SLOT; axis <= ABS_MAX; axis++)
{
int j;
Bool skip = FALSE;
@@ -1288,7 +1287,7 @@
goto out;
/* Find number of absolute axis, including MT ones, will decrease later. */
- for (i = 0; i < ABS_MAX; i++)
+ for (i = 0; i <= ABS_MAX; i++)
if (libevdev_has_event_code(pEvdev->dev, EV_ABS, i))
num_axes++;
@@ -1456,7 +1455,7 @@
}
for (i = 0; i < num_touches; i++) {
- for (axis = ABS_MT_TOUCH_MAJOR; axis < ABS_MAX; axis++) {
+ for (axis = ABS_MT_TOUCH_MAJOR; axis <= ABS_MAX; axis++) {
if (pEvdev->abs_axis_map[axis] >= 0) {
int val = pEvdev->mtdev ? 0 : libevdev_get_current_slot(pEvdev->dev);
/* XXX: read initial values from mtdev when it adds support
@@ -1669,7 +1668,7 @@
if (!libevdev_has_event_type(pEvdev->dev, EV_REL))
goto out;
- for (i = 0; i < REL_MAX; i++) {
+ for (i = 0; i <= REL_MAX; i++) {
if (i == REL_WHEEL || i == REL_HWHEEL || i == REL_DIAL)
continue;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xf86-input-evdev-2.10.4/src/evdev.h new/xf86-input-evdev-2.10.5/src/evdev.h
--- old/xf86-input-evdev-2.10.4/src/evdev.h 2016-09-06 05:51:21.000000000 +0200
+++ new/xf86-input-evdev-2.10.5/src/evdev.h 2016-11-21 05:59:44.000000000 +0100
@@ -196,6 +196,7 @@
int state; /* state machine (see bt3emu.c) */
Time expires; /* time of expiry */
Time timeout;
+ uint8_t button; /* phys button to emit */
} emulateMB;
/* Third mouse button emulation */
struct emulate3B {