Update to xf86-input-synaptics 1.8.1.
ok matthieu@
This commit is contained in:
parent
6b49aaeac1
commit
ba9b4799b8
@ -1,3 +1,141 @@
|
|||||||
|
commit d50c4bab8ae2836a0f38b29a5d22be2e950e4d08
|
||||||
|
Author: Peter Hutterer <peter.hutterer@who-t.net>
|
||||||
|
Date: Thu Sep 18 07:40:13 2014 +1000
|
||||||
|
|
||||||
|
synaptics 1.8.1
|
||||||
|
|
||||||
|
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
||||||
|
|
||||||
|
commit bdf6a6b2e2603142e62ae5968c65e6e26f57e51d
|
||||||
|
Author: Peter Hutterer <peter.hutterer@who-t.net>
|
||||||
|
Date: Tue Sep 16 10:44:40 2014 +1000
|
||||||
|
|
||||||
|
Prohibit negative or zero x/y resolutions
|
||||||
|
|
||||||
|
Default resolution is 1, don't allow setting 0 to avoid divisions by 0 or
|
||||||
|
just general weirdness.
|
||||||
|
|
||||||
|
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
||||||
|
(cherry picked from commit 049611bd7f04e285909c55807478306cce83385f)
|
||||||
|
|
||||||
|
commit 2dd60417450af4ac4f9938e09b06707dd91bddfb
|
||||||
|
Author: Peter Hutterer <peter.hutterer@who-t.net>
|
||||||
|
Date: Fri Sep 5 15:14:47 2014 +1000
|
||||||
|
|
||||||
|
When resetting, reset the open slots to -1
|
||||||
|
|
||||||
|
open_slots holds the slot index, resetting it to 0 is a bad idea. And make
|
||||||
|
sure that we do reset after DEVICE_INIT. We already do so on DEVICE_CLOSE, but
|
||||||
|
after the first DEVICE_ON the data could still be random.
|
||||||
|
|
||||||
|
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
||||||
|
Reviewed-by: Keith Packard <keithp@keithp.com>
|
||||||
|
(cherry picked from commit afbbcfa10eb3a2295823720907f35bb59972dd82)
|
||||||
|
|
||||||
|
commit 9de611219bebd9b101b98bb79cc0173115ee1833
|
||||||
|
Author: Peter Hutterer <peter.hutterer@who-t.net>
|
||||||
|
Date: Fri Sep 5 14:24:29 2014 +1000
|
||||||
|
|
||||||
|
eventcomm: add missing axis labels to avoid array overrun
|
||||||
|
|
||||||
|
And warn when we run out of labels.
|
||||||
|
|
||||||
|
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
||||||
|
Reviewed-by: Keith Packard <keithp@keithp.com>
|
||||||
|
(cherry picked from commit d239f831f17ccf5468f5dc6b2f199a9c1f6e35af)
|
||||||
|
|
||||||
|
commit 36d7ee1c9d60752666a94ee4755b3a1d0f339164
|
||||||
|
Author: Peter Hutterer <peter.hutterer@who-t.net>
|
||||||
|
Date: Thu Aug 28 14:13:38 2014 +1000
|
||||||
|
|
||||||
|
eventcomm: ensure we're on the same clock as the server
|
||||||
|
|
||||||
|
Default on evdev devices is CLOCK_REALTIME. If that clock falls behind the
|
||||||
|
server's CLOCK_MONOTONIC, motion after a clickpad click may be delayed by the
|
||||||
|
difference in the clocks.
|
||||||
|
|
||||||
|
In detail:
|
||||||
|
When the timer func is triggered, GetTimeInMillis() which is CLOCK_MONOTONIC,
|
||||||
|
is stored as hwState->millis. The eventcomm backend uses struct
|
||||||
|
input_event time (CLOCK_REALTIME).
|
||||||
|
|
||||||
|
When we read events from the device, if the evdev time is less than the server
|
||||||
|
time, the fix for (#48777) sets the current event time to hwState->millis.
|
||||||
|
Until the evdev time overtakes that stored time, all events have the
|
||||||
|
hwState->millis time.
|
||||||
|
|
||||||
|
If during that time a clickpad triggers a physical click,
|
||||||
|
clickpad_click_millis is set to hwState->millis + the ignore-motion timeout.
|
||||||
|
Thus, all motion is ignored until the event time overtakes that stored
|
||||||
|
time.
|
||||||
|
|
||||||
|
The whole issue is further enhanced by us unconditionally setting the timer
|
||||||
|
func if we get any events, which is a separate issue anyway.
|
||||||
|
|
||||||
|
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
|
||||||
|
Author: Peter Hutterer <peter.hutterer@who-t.net>
|
||||||
|
Date: Fri Aug 29 07:57:41 2014 +1000
|
||||||
|
|
||||||
|
Include xorg-server.h to fix build errors on newest glibc
|
||||||
|
|
||||||
|
In file included from /usr/include/string.h:634:0,
|
||||||
|
from /usr/include/xorg/os.h:53,
|
||||||
|
from /usr/include/xorg/misc.h:115,
|
||||||
|
from /usr/include/xorg/xf86str.h:37,
|
||||||
|
from /usr/include/xorg/xf86Xinput.h:54,
|
||||||
|
from synproto.h:36,
|
||||||
|
from synproto.c:24:
|
||||||
|
/usr/include/xorg/os.h:579:1: error: expected identifier or '(' before '__extension__'
|
||||||
|
strndup(const char *str, size_t n);
|
||||||
|
|
||||||
|
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
|
||||||
|
Author: Gabriele Mazzotta <gabriele.mzt@gmail.com>
|
||||||
|
Date: Sun Jul 27 12:58:18 2014 +0200
|
||||||
|
|
||||||
|
Prevent two-finger taps from being ignored
|
||||||
|
|
||||||
|
When two fingers are used, the coordinates of only one of them is taken into
|
||||||
|
account. This can lead to sudden variations of the absolute coordinates when
|
||||||
|
two-fingers taps are performed if the finger considered changes.
|
||||||
|
|
||||||
|
Take into account coordinates variations to prevent unwanted taps only if
|
||||||
|
the number of fingers doesn't change.
|
||||||
|
|
||||||
|
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
|
||||||
|
Author: Peter Hutterer <peter.hutterer@who-t.net>
|
||||||
|
Date: Wed Aug 6 12:04:14 2014 +1000
|
||||||
|
|
||||||
|
conf: increase top software button area to 15%
|
||||||
|
|
||||||
|
We had reports that the top software button area is hard to hit for those
|
||||||
|
using the trackpoint and clicking the buttons with their thumb.
|
||||||
|
|
||||||
|
Analysis of event recordings (3 different people) for left, right and middle
|
||||||
|
clicks shows that there is a significant amount of events up to about 10mm
|
||||||
|
(with outliers up to 12mm) from the top of the touchpad. That maps to 15%.
|
||||||
|
|
||||||
|
Interestingly, the middle button does not seem to need this, presumably the
|
||||||
|
haptic feedback of the little dots sticking out from the surface make hitting
|
||||||
|
the button easier. Its size is increased to 15% anyway, for simplicity and
|
||||||
|
because a sample set of 3 is too small to be definitive about this.
|
||||||
|
|
||||||
|
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
||||||
|
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
|
||||||
|
(cherry picked from commit 730101223432f60397c61f74a5e6789b3ee34ecd)
|
||||||
|
|
||||||
commit 3a4cc96590ca0e0ff526a5e5406f29a402bddd1a
|
commit 3a4cc96590ca0e0ff526a5e5406f29a402bddd1a
|
||||||
Author: Peter Hutterer <peter.hutterer@who-t.net>
|
Author: Peter Hutterer <peter.hutterer@who-t.net>
|
||||||
Date: Tue May 13 11:20:25 2014 +1000
|
Date: Tue May 13 11:20:25 2014 +1000
|
||||||
|
@ -1,11 +1,13 @@
|
|||||||
Installation Instructions
|
Installation Instructions
|
||||||
*************************
|
*************************
|
||||||
|
|
||||||
Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005,
|
Copyright (C) 1994-1996, 1999-2002, 2004-2011 Free Software Foundation,
|
||||||
2006, 2007, 2008 Free Software Foundation, Inc.
|
Inc.
|
||||||
|
|
||||||
This file is free documentation; the Free Software Foundation gives
|
Copying and distribution of this file, with or without modification,
|
||||||
unlimited permission to copy, distribute and modify it.
|
are permitted in any medium without royalty provided the copyright
|
||||||
|
notice and this notice are preserved. This file is offered as-is,
|
||||||
|
without warranty of any kind.
|
||||||
|
|
||||||
Basic Installation
|
Basic Installation
|
||||||
==================
|
==================
|
||||||
@ -13,7 +15,11 @@ Basic Installation
|
|||||||
Briefly, the shell commands `./configure; make; make install' should
|
Briefly, the shell commands `./configure; make; make install' should
|
||||||
configure, build, and install this package. The following
|
configure, build, and install this package. The following
|
||||||
more-detailed instructions are generic; see the `README' file for
|
more-detailed instructions are generic; see the `README' file for
|
||||||
instructions specific to this package.
|
instructions specific to this package. Some packages provide this
|
||||||
|
`INSTALL' file but do not implement all of the features documented
|
||||||
|
below. The lack of an optional feature in a given package is not
|
||||||
|
necessarily a bug. More recommendations for GNU packages can be found
|
||||||
|
in *note Makefile Conventions: (standards)Makefile Conventions.
|
||||||
|
|
||||||
The `configure' shell script attempts to guess correct values for
|
The `configure' shell script attempts to guess correct values for
|
||||||
various system-dependent variables used during compilation. It uses
|
various system-dependent variables used during compilation. It uses
|
||||||
@ -42,7 +48,7 @@ may remove or edit it.
|
|||||||
you want to change it or regenerate `configure' using a newer version
|
you want to change it or regenerate `configure' using a newer version
|
||||||
of `autoconf'.
|
of `autoconf'.
|
||||||
|
|
||||||
The simplest way to compile this package is:
|
The simplest way to compile this package is:
|
||||||
|
|
||||||
1. `cd' to the directory containing the package's source code and type
|
1. `cd' to the directory containing the package's source code and type
|
||||||
`./configure' to configure the package for your system.
|
`./configure' to configure the package for your system.
|
||||||
@ -53,12 +59,22 @@ The simplest way to compile this package is:
|
|||||||
2. Type `make' to compile the package.
|
2. Type `make' to compile the package.
|
||||||
|
|
||||||
3. Optionally, type `make check' to run any self-tests that come with
|
3. Optionally, type `make check' to run any self-tests that come with
|
||||||
the package.
|
the package, generally using the just-built uninstalled binaries.
|
||||||
|
|
||||||
4. Type `make install' to install the programs and any data files and
|
4. Type `make install' to install the programs and any data files and
|
||||||
documentation.
|
documentation. When installing into a prefix owned by root, it is
|
||||||
|
recommended that the package be configured and built as a regular
|
||||||
|
user, and only the `make install' phase executed with root
|
||||||
|
privileges.
|
||||||
|
|
||||||
5. You can remove the program binaries and object files from the
|
5. Optionally, type `make installcheck' to repeat any self-tests, but
|
||||||
|
this time using the binaries in their final installed location.
|
||||||
|
This target does not install anything. Running this target as a
|
||||||
|
regular user, particularly if the prior `make install' required
|
||||||
|
root privileges, verifies that the installation completed
|
||||||
|
correctly.
|
||||||
|
|
||||||
|
6. You can remove the program binaries and object files from the
|
||||||
source code directory by typing `make clean'. To also remove the
|
source code directory by typing `make clean'. To also remove the
|
||||||
files that `configure' created (so you can compile the package for
|
files that `configure' created (so you can compile the package for
|
||||||
a different kind of computer), type `make distclean'. There is
|
a different kind of computer), type `make distclean'. There is
|
||||||
@ -67,8 +83,15 @@ The simplest way to compile this package is:
|
|||||||
all sorts of other programs in order to regenerate files that came
|
all sorts of other programs in order to regenerate files that came
|
||||||
with the distribution.
|
with the distribution.
|
||||||
|
|
||||||
6. Often, you can also type `make uninstall' to remove the installed
|
7. Often, you can also type `make uninstall' to remove the installed
|
||||||
files again.
|
files again. In practice, not all packages have tested that
|
||||||
|
uninstallation works correctly, even though it is required by the
|
||||||
|
GNU Coding Standards.
|
||||||
|
|
||||||
|
8. Some packages, particularly those that use Automake, provide `make
|
||||||
|
distcheck', which can by used by developers to test that all other
|
||||||
|
targets like `make install' and `make uninstall' work correctly.
|
||||||
|
This target is generally not run by end users.
|
||||||
|
|
||||||
Compilers and Options
|
Compilers and Options
|
||||||
=====================
|
=====================
|
||||||
@ -93,7 +116,8 @@ same time, by placing the object files for each architecture in their
|
|||||||
own directory. To do this, you can use GNU `make'. `cd' to the
|
own directory. To do this, you can use GNU `make'. `cd' to the
|
||||||
directory where you want the object files and executables to go and run
|
directory where you want the object files and executables to go and run
|
||||||
the `configure' script. `configure' automatically checks for the
|
the `configure' script. `configure' automatically checks for the
|
||||||
source code in the directory that `configure' is in and in `..'.
|
source code in the directory that `configure' is in and in `..'. This
|
||||||
|
is known as a "VPATH" build.
|
||||||
|
|
||||||
With a non-GNU `make', it is safer to compile the package for one
|
With a non-GNU `make', it is safer to compile the package for one
|
||||||
architecture at a time in the source code directory. After you have
|
architecture at a time in the source code directory. After you have
|
||||||
@ -120,7 +144,8 @@ Installation Names
|
|||||||
By default, `make install' installs the package's commands under
|
By default, `make install' installs the package's commands under
|
||||||
`/usr/local/bin', include files under `/usr/local/include', etc. You
|
`/usr/local/bin', include files under `/usr/local/include', etc. You
|
||||||
can specify an installation prefix other than `/usr/local' by giving
|
can specify an installation prefix other than `/usr/local' by giving
|
||||||
`configure' the option `--prefix=PREFIX'.
|
`configure' the option `--prefix=PREFIX', where PREFIX must be an
|
||||||
|
absolute file name.
|
||||||
|
|
||||||
You can specify separate installation prefixes for
|
You can specify separate installation prefixes for
|
||||||
architecture-specific files and architecture-independent files. If you
|
architecture-specific files and architecture-independent files. If you
|
||||||
@ -131,15 +156,46 @@ Documentation and other data files still use the regular prefix.
|
|||||||
In addition, if you use an unusual directory layout you can give
|
In addition, if you use an unusual directory layout you can give
|
||||||
options like `--bindir=DIR' to specify different values for particular
|
options like `--bindir=DIR' to specify different values for particular
|
||||||
kinds of files. Run `configure --help' for a list of the directories
|
kinds of files. Run `configure --help' for a list of the directories
|
||||||
you can set and what kinds of files go in them.
|
you can set and what kinds of files go in them. In general, the
|
||||||
|
default for these options is expressed in terms of `${prefix}', so that
|
||||||
|
specifying just `--prefix' will affect all of the other directory
|
||||||
|
specifications that were not explicitly provided.
|
||||||
|
|
||||||
|
The most portable way to affect installation locations is to pass the
|
||||||
|
correct locations to `configure'; however, many packages provide one or
|
||||||
|
both of the following shortcuts of passing variable assignments to the
|
||||||
|
`make install' command line to change installation locations without
|
||||||
|
having to reconfigure or recompile.
|
||||||
|
|
||||||
|
The first method involves providing an override variable for each
|
||||||
|
affected directory. For example, `make install
|
||||||
|
prefix=/alternate/directory' will choose an alternate location for all
|
||||||
|
directory configuration variables that were expressed in terms of
|
||||||
|
`${prefix}'. Any directories that were specified during `configure',
|
||||||
|
but not in terms of `${prefix}', must each be overridden at install
|
||||||
|
time for the entire installation to be relocated. The approach of
|
||||||
|
makefile variable overrides for each directory variable is required by
|
||||||
|
the GNU Coding Standards, and ideally causes no recompilation.
|
||||||
|
However, some platforms have known limitations with the semantics of
|
||||||
|
shared libraries that end up requiring recompilation when using this
|
||||||
|
method, particularly noticeable in packages that use GNU Libtool.
|
||||||
|
|
||||||
|
The second method involves providing the `DESTDIR' variable. For
|
||||||
|
example, `make install DESTDIR=/alternate/directory' will prepend
|
||||||
|
`/alternate/directory' before all installation names. The approach of
|
||||||
|
`DESTDIR' overrides is not required by the GNU Coding Standards, and
|
||||||
|
does not work on platforms that have drive letters. On the other hand,
|
||||||
|
it does better at avoiding recompilation issues, and works well even
|
||||||
|
when some directory options were not specified in terms of `${prefix}'
|
||||||
|
at `configure' time.
|
||||||
|
|
||||||
|
Optional Features
|
||||||
|
=================
|
||||||
|
|
||||||
If the package supports it, you can cause programs to be installed
|
If the package supports it, you can cause programs to be installed
|
||||||
with an extra prefix or suffix on their names by giving `configure' the
|
with an extra prefix or suffix on their names by giving `configure' the
|
||||||
option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
|
option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
|
||||||
|
|
||||||
Optional Features
|
|
||||||
=================
|
|
||||||
|
|
||||||
Some packages pay attention to `--enable-FEATURE' options to
|
Some packages pay attention to `--enable-FEATURE' options to
|
||||||
`configure', where FEATURE indicates an optional part of the package.
|
`configure', where FEATURE indicates an optional part of the package.
|
||||||
They may also pay attention to `--with-PACKAGE' options, where PACKAGE
|
They may also pay attention to `--with-PACKAGE' options, where PACKAGE
|
||||||
@ -152,6 +208,13 @@ find the X include and library files automatically, but if it doesn't,
|
|||||||
you can use the `configure' options `--x-includes=DIR' and
|
you can use the `configure' options `--x-includes=DIR' and
|
||||||
`--x-libraries=DIR' to specify their locations.
|
`--x-libraries=DIR' to specify their locations.
|
||||||
|
|
||||||
|
Some packages offer the ability to configure how verbose the
|
||||||
|
execution of `make' will be. For these packages, running `./configure
|
||||||
|
--enable-silent-rules' sets the default to minimal output, which can be
|
||||||
|
overridden with `make V=1'; while running `./configure
|
||||||
|
--disable-silent-rules' sets the default to verbose, which can be
|
||||||
|
overridden with `make V=0'.
|
||||||
|
|
||||||
Particular systems
|
Particular systems
|
||||||
==================
|
==================
|
||||||
|
|
||||||
@ -159,10 +222,15 @@ Particular systems
|
|||||||
CC is not installed, it is recommended to use the following options in
|
CC is not installed, it is recommended to use the following options in
|
||||||
order to use an ANSI C compiler:
|
order to use an ANSI C compiler:
|
||||||
|
|
||||||
./configure CC="cc -Ae"
|
./configure CC="cc -Ae -D_XOPEN_SOURCE=500"
|
||||||
|
|
||||||
and if that doesn't work, install pre-built binaries of GCC for HP-UX.
|
and if that doesn't work, install pre-built binaries of GCC for HP-UX.
|
||||||
|
|
||||||
|
HP-UX `make' updates targets which have the same time stamps as
|
||||||
|
their prerequisites, which makes it generally unusable when shipped
|
||||||
|
generated files such as `configure' are involved. Use GNU `make'
|
||||||
|
instead.
|
||||||
|
|
||||||
On OSF/1 a.k.a. Tru64, some versions of the default C compiler cannot
|
On OSF/1 a.k.a. Tru64, some versions of the default C compiler cannot
|
||||||
parse its `<wchar.h>' header file. The option `-nodtk' can be used as
|
parse its `<wchar.h>' header file. The option `-nodtk' can be used as
|
||||||
a workaround. If GNU CC is not installed, it is therefore recommended
|
a workaround. If GNU CC is not installed, it is therefore recommended
|
||||||
@ -174,6 +242,16 @@ and if that doesn't work, try
|
|||||||
|
|
||||||
./configure CC="cc -nodtk"
|
./configure CC="cc -nodtk"
|
||||||
|
|
||||||
|
On Solaris, don't put `/usr/ucb' early in your `PATH'. This
|
||||||
|
directory contains several dysfunctional programs; working variants of
|
||||||
|
these programs are available in `/usr/bin'. So, if you need `/usr/ucb'
|
||||||
|
in your `PATH', put it _after_ `/usr/bin'.
|
||||||
|
|
||||||
|
On Haiku, software installed for all users goes in `/boot/common',
|
||||||
|
not `/usr/local'. It is recommended to use the following options:
|
||||||
|
|
||||||
|
./configure --prefix=/boot/common
|
||||||
|
|
||||||
Specifying the System Type
|
Specifying the System Type
|
||||||
==========================
|
==========================
|
||||||
|
|
||||||
@ -189,7 +267,8 @@ type, such as `sun4', or a canonical name which has the form:
|
|||||||
|
|
||||||
where SYSTEM can have one of these forms:
|
where SYSTEM can have one of these forms:
|
||||||
|
|
||||||
OS KERNEL-OS
|
OS
|
||||||
|
KERNEL-OS
|
||||||
|
|
||||||
See the file `config.sub' for the possible values of each field. If
|
See the file `config.sub' for the possible values of each field. If
|
||||||
`config.sub' isn't included in this package, then this package doesn't
|
`config.sub' isn't included in this package, then this package doesn't
|
||||||
@ -277,7 +356,7 @@ operates.
|
|||||||
`configure' can determine that directory automatically.
|
`configure' can determine that directory automatically.
|
||||||
|
|
||||||
`--prefix=DIR'
|
`--prefix=DIR'
|
||||||
Use DIR as the installation prefix. *Note Installation Names::
|
Use DIR as the installation prefix. *note Installation Names::
|
||||||
for more details, including other options available for fine-tuning
|
for more details, including other options available for fine-tuning
|
||||||
the installation locations.
|
the installation locations.
|
||||||
|
|
||||||
|
@ -33,7 +33,7 @@ Section "InputClass"
|
|||||||
Identifier "Default clickpad buttons"
|
Identifier "Default clickpad buttons"
|
||||||
MatchDriver "synaptics"
|
MatchDriver "synaptics"
|
||||||
Option "SoftButtonAreas" "50% 0 82% 0 0 0 0 0"
|
Option "SoftButtonAreas" "50% 0 82% 0 0 0 0 0"
|
||||||
Option "SecondarySoftButtonAreas" "58% 0 0 8% 42% 58% 0 8%"
|
Option "SecondarySoftButtonAreas" "58% 0 0 15% 42% 58% 0 15%"
|
||||||
EndSection
|
EndSection
|
||||||
|
|
||||||
# This option disables software buttons on Apple touchpads.
|
# This option disables software buttons on Apple touchpads.
|
||||||
|
20
driver/xf86-input-synaptics/configure
vendored
20
driver/xf86-input-synaptics/configure
vendored
@ -1,6 +1,6 @@
|
|||||||
#! /bin/sh
|
#! /bin/sh
|
||||||
# Guess values for system-dependent variables and create Makefiles.
|
# Guess values for system-dependent variables and create Makefiles.
|
||||||
# Generated by GNU Autoconf 2.69 for xf86-input-synaptics 1.8.0.
|
# Generated by GNU Autoconf 2.69 for xf86-input-synaptics 1.8.1.
|
||||||
#
|
#
|
||||||
# Report bugs to <https://bugs.freedesktop.org/enter_bug.cgi?product=xorg>.
|
# Report bugs to <https://bugs.freedesktop.org/enter_bug.cgi?product=xorg>.
|
||||||
#
|
#
|
||||||
@ -591,8 +591,8 @@ MAKEFLAGS=
|
|||||||
# Identity of this package.
|
# Identity of this package.
|
||||||
PACKAGE_NAME='xf86-input-synaptics'
|
PACKAGE_NAME='xf86-input-synaptics'
|
||||||
PACKAGE_TARNAME='xf86-input-synaptics'
|
PACKAGE_TARNAME='xf86-input-synaptics'
|
||||||
PACKAGE_VERSION='1.8.0'
|
PACKAGE_VERSION='1.8.1'
|
||||||
PACKAGE_STRING='xf86-input-synaptics 1.8.0'
|
PACKAGE_STRING='xf86-input-synaptics 1.8.1'
|
||||||
PACKAGE_BUGREPORT='https://bugs.freedesktop.org/enter_bug.cgi?product=xorg'
|
PACKAGE_BUGREPORT='https://bugs.freedesktop.org/enter_bug.cgi?product=xorg'
|
||||||
PACKAGE_URL=''
|
PACKAGE_URL=''
|
||||||
|
|
||||||
@ -1378,7 +1378,7 @@ if test "$ac_init_help" = "long"; then
|
|||||||
# Omit some internal or obsolete options to make the list less imposing.
|
# 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.
|
# This message is too long to be a string in the A/UX 3.1 sh.
|
||||||
cat <<_ACEOF
|
cat <<_ACEOF
|
||||||
\`configure' configures xf86-input-synaptics 1.8.0 to adapt to many kinds of systems.
|
\`configure' configures xf86-input-synaptics 1.8.1 to adapt to many kinds of systems.
|
||||||
|
|
||||||
Usage: $0 [OPTION]... [VAR=VALUE]...
|
Usage: $0 [OPTION]... [VAR=VALUE]...
|
||||||
|
|
||||||
@ -1449,7 +1449,7 @@ fi
|
|||||||
|
|
||||||
if test -n "$ac_init_help"; then
|
if test -n "$ac_init_help"; then
|
||||||
case $ac_init_help in
|
case $ac_init_help in
|
||||||
short | recursive ) echo "Configuration of xf86-input-synaptics 1.8.0:";;
|
short | recursive ) echo "Configuration of xf86-input-synaptics 1.8.1:";;
|
||||||
esac
|
esac
|
||||||
cat <<\_ACEOF
|
cat <<\_ACEOF
|
||||||
|
|
||||||
@ -1586,7 +1586,7 @@ fi
|
|||||||
test -n "$ac_init_help" && exit $ac_status
|
test -n "$ac_init_help" && exit $ac_status
|
||||||
if $ac_init_version; then
|
if $ac_init_version; then
|
||||||
cat <<\_ACEOF
|
cat <<\_ACEOF
|
||||||
xf86-input-synaptics configure 1.8.0
|
xf86-input-synaptics configure 1.8.1
|
||||||
generated by GNU Autoconf 2.69
|
generated by GNU Autoconf 2.69
|
||||||
|
|
||||||
Copyright (C) 2012 Free Software Foundation, Inc.
|
Copyright (C) 2012 Free Software Foundation, Inc.
|
||||||
@ -1910,7 +1910,7 @@ cat >config.log <<_ACEOF
|
|||||||
This file contains any messages produced by compilers while
|
This file contains any messages produced by compilers while
|
||||||
running configure, to aid debugging if configure makes a mistake.
|
running configure, to aid debugging if configure makes a mistake.
|
||||||
|
|
||||||
It was created by xf86-input-synaptics $as_me 1.8.0, which was
|
It was created by xf86-input-synaptics $as_me 1.8.1, which was
|
||||||
generated by GNU Autoconf 2.69. Invocation command line was
|
generated by GNU Autoconf 2.69. Invocation command line was
|
||||||
|
|
||||||
$ $0 $@
|
$ $0 $@
|
||||||
@ -2739,7 +2739,7 @@ fi
|
|||||||
|
|
||||||
# Define the identity of the package.
|
# Define the identity of the package.
|
||||||
PACKAGE='xf86-input-synaptics'
|
PACKAGE='xf86-input-synaptics'
|
||||||
VERSION='1.8.0'
|
VERSION='1.8.1'
|
||||||
|
|
||||||
|
|
||||||
cat >>confdefs.h <<_ACEOF
|
cat >>confdefs.h <<_ACEOF
|
||||||
@ -18820,7 +18820,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
|
|||||||
# report actual input values of CONFIG_FILES etc. instead of their
|
# report actual input values of CONFIG_FILES etc. instead of their
|
||||||
# values after options handling.
|
# values after options handling.
|
||||||
ac_log="
|
ac_log="
|
||||||
This file was extended by xf86-input-synaptics $as_me 1.8.0, which was
|
This file was extended by xf86-input-synaptics $as_me 1.8.1, which was
|
||||||
generated by GNU Autoconf 2.69. Invocation command line was
|
generated by GNU Autoconf 2.69. Invocation command line was
|
||||||
|
|
||||||
CONFIG_FILES = $CONFIG_FILES
|
CONFIG_FILES = $CONFIG_FILES
|
||||||
@ -18886,7 +18886,7 @@ _ACEOF
|
|||||||
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
|
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
|
||||||
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
|
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
|
||||||
ac_cs_version="\\
|
ac_cs_version="\\
|
||||||
xf86-input-synaptics config.status 1.8.0
|
xf86-input-synaptics config.status 1.8.1
|
||||||
configured by $0, generated by GNU Autoconf 2.69,
|
configured by $0, generated by GNU Autoconf 2.69,
|
||||||
with options \\"\$ac_cs_config\\"
|
with options \\"\$ac_cs_config\\"
|
||||||
|
|
||||||
|
@ -23,7 +23,7 @@
|
|||||||
# Initialize Autoconf
|
# Initialize Autoconf
|
||||||
AC_PREREQ([2.60])
|
AC_PREREQ([2.60])
|
||||||
AC_INIT([xf86-input-synaptics],
|
AC_INIT([xf86-input-synaptics],
|
||||||
[1.8.0],
|
[1.8.1],
|
||||||
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],
|
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],
|
||||||
[xf86-input-synaptics])
|
[xf86-input-synaptics])
|
||||||
AC_CONFIG_SRCDIR([Makefile.am])
|
AC_CONFIG_SRCDIR([Makefile.am])
|
||||||
|
@ -39,6 +39,7 @@
|
|||||||
#include <dirent.h>
|
#include <dirent.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
|
#include <time.h>
|
||||||
#include "synproto.h"
|
#include "synproto.h"
|
||||||
#include "synapticsstr.h"
|
#include "synapticsstr.h"
|
||||||
#include <xf86.h>
|
#include <xf86.h>
|
||||||
@ -88,6 +89,8 @@ struct eventcomm_proto_data {
|
|||||||
|
|
||||||
struct libevdev *evdev;
|
struct libevdev *evdev;
|
||||||
enum libevdev_read_flag read_flag;
|
enum libevdev_read_flag read_flag;
|
||||||
|
|
||||||
|
int have_monotonic_clock;
|
||||||
};
|
};
|
||||||
|
|
||||||
static void
|
static void
|
||||||
@ -217,6 +220,7 @@ EventDeviceOnHook(InputInfoPtr pInfo, SynapticsParameters * para)
|
|||||||
SynapticsPrivate *priv = (SynapticsPrivate *) pInfo->private;
|
SynapticsPrivate *priv = (SynapticsPrivate *) pInfo->private;
|
||||||
struct eventcomm_proto_data *proto_data =
|
struct eventcomm_proto_data *proto_data =
|
||||||
(struct eventcomm_proto_data *) priv->proto_data;
|
(struct eventcomm_proto_data *) priv->proto_data;
|
||||||
|
int ret;
|
||||||
|
|
||||||
set_libevdev_log_handler();
|
set_libevdev_log_handler();
|
||||||
|
|
||||||
@ -238,7 +242,6 @@ EventDeviceOnHook(InputInfoPtr pInfo, SynapticsParameters * para)
|
|||||||
|
|
||||||
if (para->grab_event_device) {
|
if (para->grab_event_device) {
|
||||||
/* Try to grab the event device so that data don't leak to /dev/input/mice */
|
/* Try to grab the event device so that data don't leak to /dev/input/mice */
|
||||||
int ret;
|
|
||||||
|
|
||||||
ret = libevdev_grab(proto_data->evdev, LIBEVDEV_GRAB);
|
ret = libevdev_grab(proto_data->evdev, LIBEVDEV_GRAB);
|
||||||
if (ret < 0) {
|
if (ret < 0) {
|
||||||
@ -250,6 +253,9 @@ EventDeviceOnHook(InputInfoPtr pInfo, SynapticsParameters * para)
|
|||||||
|
|
||||||
proto_data->need_grab = FALSE;
|
proto_data->need_grab = FALSE;
|
||||||
|
|
||||||
|
ret = libevdev_set_clock_id(proto_data->evdev, CLOCK_MONOTONIC);
|
||||||
|
proto_data->have_monotonic_clock = (ret == 0);
|
||||||
|
|
||||||
InitializeTouch(pInfo);
|
InitializeTouch(pInfo);
|
||||||
|
|
||||||
return TRUE;
|
return TRUE;
|
||||||
@ -686,7 +692,10 @@ EventReadHwState(InputInfoPtr pInfo,
|
|||||||
switch (ev.code) {
|
switch (ev.code) {
|
||||||
case SYN_REPORT:
|
case SYN_REPORT:
|
||||||
hw->numFingers = count_fingers(pInfo, comm);
|
hw->numFingers = count_fingers(pInfo, comm);
|
||||||
|
if (proto_data->have_monotonic_clock)
|
||||||
hw->millis = 1000 * ev.time.tv_sec + ev.time.tv_usec / 1000;
|
hw->millis = 1000 * ev.time.tv_sec + ev.time.tv_usec / 1000;
|
||||||
|
else
|
||||||
|
hw->millis = GetTimeInMillis();
|
||||||
SynapticsCopyHwState(hwRet, hw);
|
SynapticsCopyHwState(hwRet, hw);
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
@ -836,7 +845,7 @@ event_query_touch(InputInfoPtr pInfo)
|
|||||||
if (priv->has_touch) {
|
if (priv->has_touch) {
|
||||||
int axnum;
|
int axnum;
|
||||||
|
|
||||||
static const char *labels[] = {
|
static const char *labels[ABS_MT_MAX] = {
|
||||||
AXIS_LABEL_PROP_ABS_MT_TOUCH_MAJOR,
|
AXIS_LABEL_PROP_ABS_MT_TOUCH_MAJOR,
|
||||||
AXIS_LABEL_PROP_ABS_MT_TOUCH_MINOR,
|
AXIS_LABEL_PROP_ABS_MT_TOUCH_MINOR,
|
||||||
AXIS_LABEL_PROP_ABS_MT_WIDTH_MAJOR,
|
AXIS_LABEL_PROP_ABS_MT_WIDTH_MAJOR,
|
||||||
@ -848,6 +857,9 @@ event_query_touch(InputInfoPtr pInfo)
|
|||||||
AXIS_LABEL_PROP_ABS_MT_BLOB_ID,
|
AXIS_LABEL_PROP_ABS_MT_BLOB_ID,
|
||||||
AXIS_LABEL_PROP_ABS_MT_TRACKING_ID,
|
AXIS_LABEL_PROP_ABS_MT_TRACKING_ID,
|
||||||
AXIS_LABEL_PROP_ABS_MT_PRESSURE,
|
AXIS_LABEL_PROP_ABS_MT_PRESSURE,
|
||||||
|
AXIS_LABEL_PROP_ABS_MT_DISTANCE,
|
||||||
|
AXIS_LABEL_PROP_ABS_MT_TOOL_X,
|
||||||
|
AXIS_LABEL_PROP_ABS_MT_TOOL_Y,
|
||||||
};
|
};
|
||||||
|
|
||||||
priv->max_touches = libevdev_get_num_slots(dev);
|
priv->max_touches = libevdev_get_num_slots(dev);
|
||||||
@ -881,6 +893,12 @@ event_query_touch(InputInfoPtr pInfo)
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
|
if (axis_idx >= sizeof(labels)/sizeof(labels[0])) {
|
||||||
|
xf86IDrvMsg(pInfo, X_ERROR,
|
||||||
|
"Axis %d out of label range. This is a bug\n",
|
||||||
|
axis);
|
||||||
|
priv->touch_axes[axnum].label = NULL;
|
||||||
|
} else
|
||||||
priv->touch_axes[axnum].label = labels[axis_idx];
|
priv->touch_axes[axnum].label = labels[axis_idx];
|
||||||
priv->touch_axes[axnum].min = libevdev_get_abs_minimum(dev, axis);
|
priv->touch_axes[axnum].min = libevdev_get_abs_minimum(dev, axis);
|
||||||
priv->touch_axes[axnum].max = libevdev_get_abs_maximum(dev, axis);
|
priv->touch_axes[axnum].max = libevdev_get_abs_maximum(dev, axis);
|
||||||
|
@ -27,6 +27,8 @@
|
|||||||
#ifndef _EVENTCOMM_H_
|
#ifndef _EVENTCOMM_H_
|
||||||
#define _EVENTCOMM_H_
|
#define _EVENTCOMM_H_
|
||||||
|
|
||||||
|
#include <xorg-server.h>
|
||||||
|
|
||||||
#include <linux/input.h>
|
#include <linux/input.h>
|
||||||
#include <linux/version.h>
|
#include <linux/version.h>
|
||||||
#include <xf86Xinput.h>
|
#include <xf86Xinput.h>
|
||||||
|
@ -22,6 +22,8 @@
|
|||||||
#ifndef _PS2COMM_H_
|
#ifndef _PS2COMM_H_
|
||||||
#define _PS2COMM_H_
|
#define _PS2COMM_H_
|
||||||
|
|
||||||
|
#include <xorg-server.h>
|
||||||
|
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
#include <sys/ioctl.h>
|
#include <sys/ioctl.h>
|
||||||
#include "xf86_OSproc.h"
|
#include "xf86_OSproc.h"
|
||||||
|
@ -772,6 +772,16 @@ set_default_parameters(InputInfoPtr pInfo)
|
|||||||
xf86SetIntOption(opts, "HorizResolution", horizResolution);
|
xf86SetIntOption(opts, "HorizResolution", horizResolution);
|
||||||
pars->resolution_vert =
|
pars->resolution_vert =
|
||||||
xf86SetIntOption(opts, "VertResolution", vertResolution);
|
xf86SetIntOption(opts, "VertResolution", vertResolution);
|
||||||
|
if (pars->resolution_horiz <= 0) {
|
||||||
|
xf86IDrvMsg(pInfo, X_ERROR,
|
||||||
|
"Invalid X resolution, using 1 instead.\n");
|
||||||
|
pars->resolution_horiz = 1;
|
||||||
|
}
|
||||||
|
if (pars->resolution_vert <= 0) {
|
||||||
|
xf86IDrvMsg(pInfo, X_ERROR,
|
||||||
|
"Invalid Y resolution, using 1 instead.\n");
|
||||||
|
pars->resolution_vert = 1;
|
||||||
|
}
|
||||||
|
|
||||||
/* Warn about (and fix) incorrectly configured TopEdge/BottomEdge parameters */
|
/* Warn about (and fix) incorrectly configured TopEdge/BottomEdge parameters */
|
||||||
if (pars->top_edge > pars->bottom_edge) {
|
if (pars->top_edge > pars->bottom_edge) {
|
||||||
@ -1029,6 +1039,8 @@ error:
|
|||||||
static void
|
static void
|
||||||
SynapticsReset(SynapticsPrivate * priv)
|
SynapticsReset(SynapticsPrivate * priv)
|
||||||
{
|
{
|
||||||
|
int i;
|
||||||
|
|
||||||
SynapticsResetHwState(priv->hwState);
|
SynapticsResetHwState(priv->hwState);
|
||||||
SynapticsResetHwState(priv->local_hw_state);
|
SynapticsResetHwState(priv->local_hw_state);
|
||||||
SynapticsResetHwState(priv->comm.hwState);
|
SynapticsResetHwState(priv->comm.hwState);
|
||||||
@ -1058,7 +1070,9 @@ SynapticsReset(SynapticsPrivate * priv)
|
|||||||
priv->prev_z = 0;
|
priv->prev_z = 0;
|
||||||
priv->prevFingers = 0;
|
priv->prevFingers = 0;
|
||||||
priv->num_active_touches = 0;
|
priv->num_active_touches = 0;
|
||||||
memset(priv->open_slots, 0, priv->num_slots * sizeof(int));
|
|
||||||
|
for (i = 0; i < priv->num_slots; i++)
|
||||||
|
priv->open_slots[i] = -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
@ -1355,6 +1369,8 @@ DeviceInit(DeviceIntPtr dev)
|
|||||||
InitDeviceProperties(pInfo);
|
InitDeviceProperties(pInfo);
|
||||||
XIRegisterPropertyHandler(pInfo->dev, SetProperty, NULL, NULL);
|
XIRegisterPropertyHandler(pInfo->dev, SetProperty, NULL, NULL);
|
||||||
|
|
||||||
|
SynapticsReset(priv);
|
||||||
|
|
||||||
return Success;
|
return Success;
|
||||||
|
|
||||||
fail:
|
fail:
|
||||||
@ -1963,8 +1979,9 @@ HandleTapProcessing(SynapticsPrivate * priv, struct SynapticsHwState *hw,
|
|||||||
(priv->tap_max_fingers <=
|
(priv->tap_max_fingers <=
|
||||||
((priv->horiz_scroll_twofinger_on ||
|
((priv->horiz_scroll_twofinger_on ||
|
||||||
priv->vert_scroll_twofinger_on) ? 2 : 1)) &&
|
priv->vert_scroll_twofinger_on) ? 2 : 1)) &&
|
||||||
|
(priv->prevFingers == hw->numFingers &&
|
||||||
((abs(hw->x - priv->touch_on.x) >= para->tap_move) ||
|
((abs(hw->x - priv->touch_on.x) >= para->tap_move) ||
|
||||||
(abs(hw->y - priv->touch_on.y) >= para->tap_move)));
|
(abs(hw->y - priv->touch_on.y) >= para->tap_move))));
|
||||||
press = (hw->left || hw->right || hw->middle);
|
press = (hw->left || hw->right || hw->middle);
|
||||||
|
|
||||||
if (touch) {
|
if (touch) {
|
||||||
|
@ -31,6 +31,8 @@
|
|||||||
#include "config.h"
|
#include "config.h"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#include <xorg-server.h>
|
||||||
|
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
#include <sys/ioctl.h>
|
#include <sys/ioctl.h>
|
||||||
#include <xf86.h>
|
#include <xf86.h>
|
||||||
|
Loading…
Reference in New Issue
Block a user