chromiumos/third_party/xf86-input-synaptics.git
3 years agoconf: fix snippet to ignore /dev/input/mouse* on Linux 0.14.811.B 0.15.877.B 780.B factory-1020.B factory-1235.B factory-1284.B factory-1412.B factory-1987.B factory-2268.16.B factory-2305.B factory-2338.B factory-2368.B factory-2394.B factory-980.B firmware-881-u-boot-v1 firmware-kiev-2.112.B firmware-link-2348.B firmware-u-boot-v1 firmware-uboot_v2-1299.B master release-1011.B release-R16-1193.B release-R17-1412.B release-R18-1660.B release-R19-2046.B release-R20-2268.B stabilize2 test-982.B xorg
Daniel Kurtz [Mon, 27 Jun 2011 06:35:31 +0000 (14:35 +0800)]
conf: fix snippet to ignore /dev/input/mouse* on Linux

Added '*' to match any and all mouse devices.

Signed-off-by: Daniel Kurtz <djkurtz@google.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agoReplace xf86Msg with xf86IDrvMsg
Peter Hutterer [Tue, 31 May 2011 03:51:53 +0000 (13:51 +1000)]
Replace xf86Msg with xf86IDrvMsg

xf86IDrvMsg automatically logs driver and device name.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agoconf: add snippet to ignore /dev/input/mouse* on Linux
Peter Hutterer [Tue, 31 May 2011 03:04:01 +0000 (13:04 +1000)]
conf: add snippet to ignore /dev/input/mouse* on Linux

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agoExport device node as property.
Peter Hutterer [Fri, 27 May 2011 06:56:57 +0000 (16:56 +1000)]
Export device node as property.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agoInitialize the vendor/product id property if we know either.
Peter Hutterer [Tue, 24 May 2011 00:57:32 +0000 (10:57 +1000)]
Initialize the vendor/product id property if we know either.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agoModified start_coasting to handle circular scrolling
Patrick Curran [Fri, 27 May 2011 16:11:44 +0000 (11:11 -0500)]
Modified start_coasting to handle circular scrolling

Calculate the angle speed when circular scrolling is on and coast based on
that speed instead of the previously used vertical scroll speed.

Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=30756

Signed-off-by: Patrick Curran <pjcurran@wisc.edu>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agobuild: apply the distcheck tricks used in xf86-input-evdev
Diego Elio Pettenò [Wed, 25 May 2011 16:16:22 +0000 (18:16 +0200)]
build: apply the distcheck tricks used in xf86-input-evdev

With this change it is possible to complete "make distcheck" safely on the
module, as it no longer tries to write to system directories.

Since synaptics also installs a configuration file, xorg-conf-dir also
needs to be overridden during distcheck.

Signed-off-by: Diego Elio Pettenò <flameeyes@gmail.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agobuild: create object files following the sources' structure.
Diego Elio Pettenò [Wed, 25 May 2011 14:10:49 +0000 (16:10 +0200)]
build: create object files following the sources' structure.

This allows building object files following the same subdirectory structure
as it was used before with the recursive build system, while keeping the
build non-recursive.

Signed-off-by: Diego Elio Pettenò <flameeyes@gmail.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agoUse struct input_id as return value for EVIOCGID
Peter Hutterer [Tue, 24 May 2011 00:55:13 +0000 (10:55 +1000)]
Use struct input_id as return value for EVIOCGID

struct input_id is an array of 4 ushorts so there is no real change in
functionality.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agosyndaemon: don't compare against a null-property. (#37459)
Peter Hutterer [Mon, 23 May 2011 00:18:22 +0000 (10:18 +1000)]
syndaemon: don't compare against a null-property. (#37459)

synaptics_property is not set, touchpad_off_prop is the property we need to
check against.

False check for (nprops != 0) instead of (nprops < 0) would result in
syndaemon always reporting a touchpad device, even if none are present.

X.Org Bug 37459 <http://bugs.freedesktop.org/show_bug.cgi?id=37459>

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agosyndaemon: add vim snippet for right indentation/tabstop, etc.
Peter Hutterer [Mon, 23 May 2011 00:14:08 +0000 (10:14 +1000)]
syndaemon: add vim snippet for right indentation/tabstop, etc.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agosyndaemon: fix abysimal indentation in dp_get_device.
Peter Hutterer [Mon, 23 May 2011 00:12:42 +0000 (10:12 +1000)]
syndaemon: fix abysimal indentation in dp_get_device.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agoinclude: update documentation for capabilities property
Peter Hutterer [Wed, 18 May 2011 23:45:10 +0000 (09:45 +1000)]
include: update documentation for capabilities property

pressure and width were added recently

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agoUpdate maintainer information
Christoph Brill [Tue, 17 May 2011 06:08:08 +0000 (08:08 +0200)]
Update maintainer information

There is no distinct maintainer for synaptics but everything should go
to the list.

3 years agoREADME: fix typos.
Diego Elio Pettenò [Sat, 14 May 2011 01:34:26 +0000 (03:34 +0200)]
README: fix typos.

Signed-off-by: Christoph Brill <egore911@egore911.de>
3 years agobuild: install documentation as part of make install.
Diego Elio Pettenò [Sat, 14 May 2011 01:30:15 +0000 (03:30 +0200)]
build: install documentation as part of make install.

Signed-off-by: Christoph Brill <egore911@egore911.de>
3 years agobuild: collapse all Makefile.am files into a single non-recursive one.
Diego Elio Pettenò [Sat, 14 May 2011 01:14:56 +0000 (03:14 +0200)]
build: collapse all Makefile.am files into a single non-recursive one.

With this change, the whole of the build is done non-recursively in the
top-level Makefile.am. This reduces the amount of overhead due to recursing
into directories only to build one file.

Signed-off-by: Diego Elio Pettenò <flameeyes@gmail.com>
Signed-off-by: Christoph Brill <egore911@egore911.de>
3 years agobuild: sort building of tools, ensure that cross-pkg-config works.
Diego Elio Pettenò [Sat, 14 May 2011 01:00:02 +0000 (03:00 +0200)]
build: sort building of tools, ensure that cross-pkg-config works.

Without this change, cross-pkg-config could bring up the wrong paths to
$includedir/xorg, but also fixes linkage to not use LDFLAGS where LDADD
should have been used.

Signed-off-by: Diego Elio Pettenò <flameeyes@gmail.com>
Signed-off-by: Christoph Brill <egore911@egore911.de>
3 years agobuild: report a fatal error if XORG_DRIVER_CHECK_EXT is undefined.
Diego Elio Pettenò [Sat, 14 May 2011 00:43:58 +0000 (02:43 +0200)]
build: report a fatal error if XORG_DRIVER_CHECK_EXT is undefined.

Just to give a bit of an idea of what the problem is when configure fails
later on.

Signed-off-by: Diego Elio Pettenò <flameeyes@gmail.com>
Signed-off-by: Christoph Brill <egore911@egore911.de>
3 years agoFix "nose canellation" typo in man page
Alan Coopersmith [Sun, 8 May 2011 18:56:25 +0000 (11:56 -0700)]
Fix "nose canellation" typo in man page

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
3 years agoDrain XRecord connection of any events after handling replies
Chase Douglas [Fri, 15 Apr 2011 19:29:57 +0000 (15:29 -0400)]
Drain XRecord connection of any events after handling replies

If the X server sends an event to the XRecord connection the event
will never be handled. This will cause the event queue to fill up in
Xlib and lead to syndaemon running away at 100% cpu usage.

This change drains any events from the connection. It's not a fix for
the underlying bug in the server or Xlib, but it does paper over the
issue for now.

https://bugs.launchpad.net/bugs/754470
http://bugs.freedesktop.org/show_bug.cgi?id=31921

Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agoFix egde/edge typo in manpage and comments.
Cyril Brulebois [Thu, 14 Apr 2011 03:38:25 +0000 (05:38 +0200)]
Fix egde/edge typo in manpage and comments.

Debian bug #622663 <http://bugs.debian.org/622663>

Signed-off-by: Cyril Brulebois <kibi@debian.org>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agoAdd 'include' directory for test.
Trevor Woerner [Mon, 11 Apr 2011 02:03:13 +0000 (22:03 -0400)]
Add 'include' directory for test.

The binaries in the test directory won't build successfully for me
without adding this include path.

Signed-off-by: Trevor Woerner <twoerner@gmail.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agoRevert "Default to 2-finger emulation when HW supports it"
Chase Douglas [Fri, 1 Apr 2011 19:21:35 +0000 (15:21 -0400)]
Revert "Default to 2-finger emulation when HW supports it"

This changes the default behavior for trackpads that have only pressure
information to emulate two finger actions. It's been reported that the
default value is too low and/or that the pressure values may fluctuate
with environmental factors (temperature, humidity, etc.). When the
value is wrong, spurious right clicks and scroll events are triggered.

Fixes: http://bugs.launchpad.net/bugs/742213

This reverts commit ffa6dc2809734a6aaa690e9133d6761480603a68.

Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agoOnly build tests when unit tests are enabled.
Peter Hutterer [Tue, 22 Mar 2011 01:51:48 +0000 (11:51 +1000)]
Only build tests when unit tests are enabled.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Gaetan Nadon <memsize@videotron.ca>
3 years agotest: add another test to ensure HW state changes on known values only.
Peter Hutterer [Mon, 21 Mar 2011 00:24:21 +0000 (10:24 +1000)]
test: add another test to ensure HW state changes on known values only.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agotest: Add some tests for HW state changes.
Peter Hutterer [Sun, 20 Mar 2011 01:02:45 +0000 (11:02 +1000)]
test: Add some tests for HW state changes.

Includes basic finger counting test, some button tests and axis tests. These
tests simply check that the HW state changes reflect the events pumped in.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agoAdd basic framework for unit-testing.
Peter Hutterer [Fri, 18 Mar 2011 10:34:38 +0000 (20:34 +1000)]
Add basic framework for unit-testing.

Also adds a bunch of fake symbols so we can link. Note that any of these
symbols will return false, 0 or whatever the zero value for the symbol is.
Care must be taken when writing test that this doesn't screw up the test.

Tests are always built but only run on make check.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agoRequire macros 1.13 for unit testing
Peter Hutterer [Fri, 18 Mar 2011 10:26:18 +0000 (20:26 +1000)]
Require macros 1.13 for unit testing

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Gaetan Nadon <memsize@videotron.ca>
3 years agoDon't autoprobe for devices when Option Device is set.
Peter Hutterer [Mon, 21 Mar 2011 01:23:34 +0000 (11:23 +1000)]
Don't autoprobe for devices when Option Device is set.

If only Option Device is set but no protocol, the code calls into
AutoDevProbe. eventcomm (the only backend with an AutoDevProbe) then runs
through all /dev/input/event devices and takes the first one it can find.

If two touchpads are connected on a system, this may cause the same touchpad
to be added twice and the other one not at all - even though the device path
is specified. (This can only happen when the event device is not grabbed,
otherwise the grabcheck prevents the touchpad from being added twice)

Pass the device option into AutoDevProbe and check that device first. If it
is a touchpad, finish with success. If it isn't, fail AutoDevProbe.

Introduced in dce6006f6a851be4147e16731caa453dd0d1ec1c.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
CC: Alexandr Shadchin <alexandr.shadchin@gmail.com>
Reviewed-by: Chris Bagwell <chris@cnpbagwell.com>
3 years agoeventcomm: fix indentation in EventAutoDevProbe
Peter Hutterer [Mon, 21 Mar 2011 01:14:50 +0000 (11:14 +1000)]
eventcomm: fix indentation in EventAutoDevProbe

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Cyril Brulebois <kibi@debian.org>
3 years agoeventcomm: move need_grab into a proto-specific struct.
Peter Hutterer [Sun, 20 Mar 2011 00:33:57 +0000 (10:33 +1000)]
eventcomm: move need_grab into a proto-specific struct.

Don't just assign a BOOL to proto_data, use a struct for readability.
This changes nothing in the code, especially since need_grab is always
false.

The current code assumes that if a proto_data field is present, we respect
the need_grab from this field. Otherwise, we always try to grab.
need_grab is however always FALSE, so all this is mostly for readability, if
not necessarily understandability...

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agoeventcomm: untangle state setting from printing device info
Peter Hutterer [Sun, 20 Mar 2011 00:22:18 +0000 (10:22 +1000)]
eventcomm: untangle state setting from printing device info

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Chris Bagwell <chris@cnpbagwell.com>
3 years agoeventcomm: print an error when axis range failed.
Peter Hutterer [Sun, 20 Mar 2011 00:14:05 +0000 (10:14 +1000)]
eventcomm: print an error when axis range failed.

Judging by a quick google search, this isn't a common error that the user
will see, it's a bug. So print out information useful for those
triaging/debugging.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Cyril Brulebois <kibi@debian.org>
3 years agoeventcomm: streamline absinfo retrieval.
Peter Hutterer [Sun, 20 Mar 2011 00:09:56 +0000 (10:09 +1000)]
eventcomm: streamline absinfo retrieval.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agoeventcomm: rewrite event_query_info to something more sane
Peter Hutterer [Sat, 19 Mar 2011 23:46:26 +0000 (09:46 +1000)]
eventcomm: rewrite event_query_info to something more sane

Instead of passing in a magic struct and set fields in that struct, pass in
the fd that we query and return the queried value. Let the caller deal with
the information accordingly.

And document the lot.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Cyril Brulebois <kibi@debian.org>
3 years agoeventcomm: document event_query_is_touchpad
Peter Hutterer [Sat, 19 Mar 2011 23:38:13 +0000 (09:38 +1000)]
eventcomm: document event_query_is_touchpad

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Cyril Brulebois <kibi@debian.org>
3 years agoeventcomm: rename parameter name grab to test_grab
Peter Hutterer [Sat, 19 Mar 2011 23:36:52 +0000 (09:36 +1000)]
eventcomm: rename parameter name grab to test_grab

We don't permanently grab the device here, we just check whether a grab is
possible.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Cyril Brulebois <kibi@debian.org>
3 years agoeventcomm: replace synaptics-custom TEST_BIT with server's BitIsOn.
Peter Hutterer [Sat, 19 Mar 2011 23:28:45 +0000 (09:28 +1000)]
eventcomm: replace synaptics-custom TEST_BIT with server's BitIsOn.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Cyril Brulebois <kibi@debian.org>
3 years agoeventcomm: extern EventReadHwState to allow for testing.
Peter Hutterer [Fri, 18 Mar 2011 11:36:19 +0000 (21:36 +1000)]
eventcomm: extern EventReadHwState to allow for testing.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Cyril Brulebois <kibi@debian.org>
3 years agoeventcomm: factor out finger counting.
Peter Hutterer [Fri, 18 Mar 2011 11:06:16 +0000 (21:06 +1000)]
eventcomm: factor out finger counting.

one, two, three, many.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Cyril Brulebois <kibi@debian.org>
3 years agoeventcomm: add a missing break statement
Peter Hutterer [Fri, 18 Mar 2011 10:56:51 +0000 (20:56 +1000)]
eventcomm: add a missing break statement

If the EV_SYN wasn't SYN_REPORT, we'd fall through to key event processing,
which almost certainly won't do what we want and/or need.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Cyril Brulebois <kibi@debian.org>
3 years agoconf: add a descriptive header with warning to example config file
Peter Hutterer [Fri, 18 Mar 2011 00:34:03 +0000 (10:34 +1000)]
conf: add a descriptive header with warning to example config file

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agoconf: remove SHM example from fdi
Peter Hutterer [Fri, 18 Mar 2011 00:40:50 +0000 (10:40 +1000)]
conf: remove SHM example from fdi

SHM is dead for configuration.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agoman: add short blurb about InputClass configuration in servers 1.8
Peter Hutterer [Fri, 18 Mar 2011 00:29:37 +0000 (10:29 +1000)]
man: add short blurb about InputClass configuration in servers 1.8

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agoman: update source path for fdi file and shorten description.
Peter Hutterer [Fri, 18 Mar 2011 00:26:37 +0000 (10:26 +1000)]
man: update source path for fdi file and shorten description.

Don't describe what the example config file does in the man page, let the
file speak for itself. Point out that fdi files are for servers 1.5 - 1.7
only.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agoBump to 1.4.99 0.12.362.B 0.12.369.B 0.12.392.B 0.12.433.B 0.12.433.B109 0.12.433.B62 0.13.434.B 0.13.509.B 0.13.558.B 0.13.587.B
Peter Hutterer [Fri, 18 Mar 2011 10:25:57 +0000 (20:25 +1000)]
Bump to 1.4.99

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agoRevert "Add synaptics orientation support"
Peter Hutterer [Fri, 18 Mar 2011 06:24:28 +0000 (16:24 +1000)]
Revert "Add synaptics orientation support"

This patch needs more work before we can ship it.

This reverts commit 049d5fb6037b34d94b24cb8300849cf4e3b67437.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agoRemove unused test directory (#35043)
Peter Hutterer [Mon, 7 Mar 2011 00:09:26 +0000 (10:09 +1000)]
Remove unused test directory (#35043)

The two files are for testing the actual synaptics protocol, a task that is
handled by the kernel these days. These haven't been built for years either,
suggesting limited use.

X.Org Bug 35043 <http://bugs.freedesktop.org/show_bug.cgi?id=35043>

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Cyril Brulebois <kibi@debian.org>
3 years agoAdd note about MatchDevicePath
Christoph Brill [Wed, 9 Mar 2011 22:25:05 +0000 (23:25 +0100)]
Add note about MatchDevicePath

This question seems to pop up very often. Add a note pointing to Peter's
blog entry describing the details of this misconfiguration.

3 years agoAdd synaptics orientation support
Aapo Rantalainen [Wed, 9 Mar 2011 20:32:36 +0000 (21:32 +0100)]
Add synaptics orientation support

This patch allows usage of "synclient Orientation=0" (values from 0 to
3). It will rotate the touchpad similar to "xrandr -o". Original patch
was extended for alps and ps2.

Signed-off-by: Christoph Brill <egore911@egore911.de>
3 years agoMerge branch 'next'
Peter Hutterer [Fri, 4 Mar 2011 02:47:00 +0000 (12:47 +1000)]
Merge branch 'next'

3 years agosynaptics 1.4.0
Peter Hutterer [Fri, 4 Mar 2011 02:36:24 +0000 (12:36 +1000)]
synaptics 1.4.0

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agoNow ps2comm and alpscomm backend optional
Alexandr Shadchin [Mon, 28 Feb 2011 11:38:29 +0000 (16:38 +0500)]
Now ps2comm and alpscomm backend optional

Signed-off-by: Alexandr Shadchin <Alexandr.Shadchin@gmail.com>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agoRewrite mechanisn to detect Protocol and Device
Alexandr Shadchin [Mon, 28 Feb 2011 11:38:28 +0000 (16:38 +0500)]
Rewrite mechanisn to detect Protocol and Device

Made SetDeviceAndProtocol() does not depend on the protocols,
it will make it easier to add new backend.

New behavior SetDeviceAndProtocol:
1) If not set Device or Protocol, then try AutoDevProbe
2) Otherwise, look for the appropriate protocol (Device and Protocol must be set)

Signed-off-by: Alexandr Shadchin <Alexandr.Shadchin@gmail.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agoRemove extra definition CommData
Alexandr Shadchin [Mon, 28 Feb 2011 11:38:27 +0000 (16:38 +0500)]
Remove extra definition CommData

Signed-off-by: Alexandr Shadchin <Alexandr.Shadchin@gmail.com>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agoRemove arg proto_ops in ReadHwState()
Alexandr Shadchin [Mon, 28 Feb 2011 11:38:26 +0000 (16:38 +0500)]
Remove arg proto_ops in ReadHwState()

Signed-off-by: Alexandr Shadchin <Alexandr.Shadchin@gmail.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agoRenamed SynapticsHwInfo in PS2SynapticsHwInfo
Alexandr Shadchin [Mon, 28 Feb 2011 11:38:25 +0000 (16:38 +0500)]
Renamed SynapticsHwInfo in PS2SynapticsHwInfo

Signed-off-by: Alexandr Shadchin <Alexandr.Shadchin@gmail.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agoMove definition struct SynapticsHwInfo in ps2comm.h
Alexandr Shadchin [Mon, 28 Feb 2011 11:38:24 +0000 (16:38 +0500)]
Move definition struct SynapticsHwInfo in ps2comm.h

Signed-off-by: Alexandr Shadchin <Alexandr.Shadchin@gmail.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agoDelete empty alpscomm.h
Alexandr Shadchin [Mon, 28 Feb 2011 11:38:23 +0000 (16:38 +0500)]
Delete empty alpscomm.h

Signed-off-by: Alexandr Shadchin <Alexandr.Shadchin@gmail.com>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agoRemoving extra call SetDeviceAndProtocol()
Alexandr Shadchin [Mon, 28 Feb 2011 11:38:22 +0000 (16:38 +0500)]
Removing extra call SetDeviceAndProtocol()

SetDeviceAndProtocol() calling in SynapticsPreInit(), extra calling
in DeviceOn() unnecessary.

Signed-off-by: Alexandr Shadchin <Alexandr.Shadchin@gmail.com>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agoRenamed SynapticsDefaultDimensions in SanitizeDimensions
Alexandr Shadchin [Mon, 28 Feb 2011 11:38:21 +0000 (16:38 +0500)]
Renamed SynapticsDefaultDimensions in SanitizeDimensions

Signed-off-by: Alexandr Shadchin <Alexandr.Shadchin@gmail.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agoSimplified mechanism for determining default size
Alexandr Shadchin [Mon, 28 Feb 2011 11:38:20 +0000 (16:38 +0500)]
Simplified mechanism for determining default size

Now SynapticsDefaultDimensions() called only once

Signed-off-by: Alexandr Shadchin <Alexandr.Shadchin@gmail.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agoFix typo (resx -> resy)
Alexandr Shadchin [Mon, 28 Feb 2011 11:38:19 +0000 (16:38 +0500)]
Fix typo (resx -> resy)

Signed-off-by: Alexandr Shadchin <Alexandr.Shadchin@gmail.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agoFix build on BSD
Julien Cristau [Fri, 25 Feb 2011 19:41:12 +0000 (20:41 +0100)]
Fix build on BSD

local was renamed to pInfo in 81ad2e389d11691d5c2687d83150e8e9033cfe76,
but a couple places were missed.

Signed-off-by: Julien Cristau <jcristau@debian.org>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agosynaptics 1.3.99.901
Peter Hutterer [Mon, 21 Feb 2011 02:57:21 +0000 (12:57 +1000)]
synaptics 1.3.99.901

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agoStop scrolling if not exactly two fingers on touchpad.
Daniel Kurtz [Mon, 14 Feb 2011 14:08:41 +0000 (22:08 +0800)]
Stop scrolling if not exactly two fingers on touchpad.

X.Org Bug 34257 <http://bugs.freedesktop.org/show_bug.cgi?id=34257>

Signed-off-by: Daniel Kurtz <djkurtz@google.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agoadd a few comments to ComputeDeltas()
Simon Thum [Mon, 21 Feb 2011 01:55:17 +0000 (11:55 +1000)]
add a few comments to ComputeDeltas()

Signed-off-by: Simon Thum <simon.thum@gmx.de>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Conflicts:

src/synaptics.c

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agoadd some acceleration-related info to the man page
Simon Thum [Thu, 10 Feb 2011 12:30:07 +0000 (13:30 +0100)]
add some acceleration-related info to the man page

Signed-off-by: Simon Thum <simon.thum@gmx.de>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agoreshuffle details on acceleration in the man page for increased readability
Simon Thum [Thu, 10 Feb 2011 11:33:04 +0000 (12:33 +0100)]
reshuffle details on acceleration in the man page for increased readability

Signed-off-by: Simon Thum <simon.thum@gmx.de>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agoMerge branch 'devel' into merge
Peter Hutterer [Mon, 21 Feb 2011 01:47:46 +0000 (11:47 +1000)]
Merge branch 'devel' into merge

Conflicts:
src/synaptics.c

3 years agoAdd hysteresis-based noise reduction
Simon Thum [Sun, 6 Feb 2011 16:57:17 +0000 (17:57 +0100)]
Add hysteresis-based noise reduction

This introduces hysteresis into the driver's processing. It significantly
reduces noise motion, i.e. now the pad does no longer generate a stream of
sub-pixel events when just holding the position with the finger down.
Also, taking off the finger no longer generates additional motion,
scrolling becomes flicker-free etc.

The code makes use of "fuzz" from the kernel, if available. This has not
been tested extensively, as an overwhelming majority of evdev touchpad
drivers view 0 (zero) as a good value for fuzz, forcing userland into
assuming "zero fuzz" means "make zero assumptions about fuzz", not
"there is no fuzz". Until things improve, this is what we do.

Anyway, the fuzz a.k.a. hysteresis can be set/overridden with options
and properties, as documented.

Signed-off-by: Simon Thum <simon.thum@gmx.de>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agoFactor out edge speed calculation.
Peter Hutterer [Wed, 9 Feb 2011 06:03:36 +0000 (16:03 +1000)]
Factor out edge speed calculation.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Chris Bagwell <chris@cnpbagwell.com>
3 years agoFactor out delta calculation into a static func.
Peter Hutterer [Wed, 9 Feb 2011 06:00:10 +0000 (16:00 +1000)]
Factor out delta calculation into a static func.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Chris Bagwell <chris@cnpbagwell.com>
3 years agoMove delta calculation for trackstick out.
Peter Hutterer [Wed, 9 Feb 2011 05:55:41 +0000 (15:55 +1000)]
Move delta calculation for trackstick out.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Chris Bagwell <chris@cnpbagwell.com>
3 years agoReshuffle ComputeDeltas for less indentation.
Peter Hutterer [Wed, 9 Feb 2011 05:52:45 +0000 (15:52 +1000)]
Reshuffle ComputeDeltas for less indentation.

No functional changes, just moving out of double-nested conditions.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Chris Bagwell <chris@cnpbagwell.com>
3 years agoDon't expect a palm based on pressure (#22806)
Peter Hutterer [Thu, 8 Oct 2009 01:56:57 +0000 (11:56 +1000)]
Don't expect a palm based on pressure (#22806)

If the first touch on the touchpad is above palm_min_z, the palm detection
unsets the finger status ("probably palm"). Don't do that, for low values of
palm_min_z this disables the finger during normal use of the touchpad.

X.Org Bug 22806 <http://bugs.freedesktop.org/show_bug.cgi?id=22806>

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agosyndaemon: reset idle time if the system time has changed (#31968)
Peter Hutterer [Tue, 8 Feb 2011 01:46:46 +0000 (11:46 +1000)]
syndaemon: reset idle time if the system time has changed (#31968)

If the system time is changed backwards while the touchpad is disabled
through syndaemon it remains disabled until the time catches up with the
previous idle time again. Avoid this by resetting last_activity with a time
that will trigger re-enabling of the device.

X.Org Bug 31968 <http://bugs.freedesktop.org/show_bug.cgi?id=31968>

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agosynaptics: detect corner tap using the initial touch position
Nicolas Cavallari [Sun, 23 Jan 2011 15:14:48 +0000 (16:14 +0100)]
synaptics: detect corner tap using the initial touch position

Currently, when detecting a tap release, the corner tap detection
uses the current touch position to figure out which corner it
corresponds. The problem is that, theoretically, there is no such position
because there is no touch. It work in mosts cases because most touchpad
are fast enough to still have a position on release, but some aren't.

In that case, the driver do corner tap detection using the position
given by the hardware when there is no touch, that is, (0,0), (1,5855)
or whatever. The driver will detect them as corner tap, regardless of
the initial touch position. On the default configuration, corner taps
are ignored, so basically, these tap are not working.

This patch make tap detection use the initial touch position to
detect corner taps.

Signed-off-by: Nicolas Cavallari <batchman@free.fr>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agosyndaemon.c: Add #include <string.h>
Alan Coopersmith [Sun, 16 Jan 2011 20:57:15 +0000 (12:57 -0800)]
syndaemon.c: Add #include <string.h>

Solaris FD_ZERO is defined using memset, but <sys/select.h> doesn't include
<string.h> itself, leading to compiler warning:

"syndaemon.c", line 404: warning: implicit function declaration: memset

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agosynclient.c: Replace old index() function with C89-standard strchr()
Alan Coopersmith [Sun, 16 Jan 2011 20:57:14 +0000 (12:57 -0800)]
synclient.c: Replace old index() function with C89-standard strchr()

Fixes Solaris compiler warnings of:
"synclient.c", line 152: warning: implicit function declaration: index
"synclient.c", line 152: warning: improper pointer/integer combination: op "="

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agoRename SHM functions from alloc/free_param_data to alloc/free_shm_data
Peter Hutterer [Wed, 8 Dec 2010 01:15:09 +0000 (11:15 +1000)]
Rename SHM functions from alloc/free_param_data to alloc/free_shm_data

This naming is historical, we used to export the parameters through SHM.
These days it's just confusing.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Daniel Stone <daniel@fooishbar.org>
3 years agoDon't report all options unconditionally.
Peter Hutterer [Wed, 8 Dec 2010 01:08:55 +0000 (11:08 +1000)]
Don't report all options unconditionally.

While this is useful to see all options provided, it also lists options that
are not actually interpreted by the driver. Skip it, use xf86Set*Option()
instead to just report the options handled by the driver.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Daniel Stone <daniel@fooishbar.org>
3 years agoDont report the version explicitly, it's reported in the module blob anyway.
Peter Hutterer [Wed, 8 Dec 2010 01:08:03 +0000 (11:08 +1000)]
Dont report the version explicitly, it's reported in the module blob anyway.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Daniel Stone <daniel@fooishbar.org>
3 years agoUse xf86SetStrOption instead of xf86FindOption for the Device
Peter Hutterer [Wed, 8 Dec 2010 01:05:51 +0000 (11:05 +1000)]
Use xf86SetStrOption instead of xf86FindOption for the Device

xf86SetStrOption reports to the log if found.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Daniel Stone <daniel@fooishbar.org>
3 years agoRemove the need for XI86_CONFIGURED on input-ABI 12
Peter Hutterer [Wed, 8 Dec 2010 01:01:56 +0000 (11:01 +1000)]
Remove the need for XI86_CONFIGURED on input-ABI 12

Just move the assignment into an already if GET_ABI_MAJOR() block.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Daniel Stone <daniel@fooishbar.org>
3 years agosyndaemon: decouple background mode from quietness
Alessandro Guido [Fri, 3 Dec 2010 10:55:00 +0000 (11:55 +0100)]
syndaemon: decouple background mode from quietness

syndaemon currently outputs lots of stuff when not running in background mode.
However, current init daemons and session managers can manage to launch the
daemon in background without "-b" just fine (if not better), by doing the
fork() themselves. Indeed, if one uses that setup, ie. by having syndaemon
launched by GNOME at login, it gets the ~/.xsession-errors file spammed by
Enable/Disabled messages.

This patch fixes this by introducing a new verbose (-v) flag that enables those
messages and makes syndaemon quiet by default.

Signed-off-by: Alessandro Guido <ag@alessandroguido.name>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agoFix 64bit arch issue in synaptics eventcomm.c
Takashi Iwai [Fri, 8 Oct 2010 17:22:29 +0000 (19:22 +0200)]
Fix 64bit arch issue in synaptics eventcomm.c

In C, "1" is an integer, not an unsigned long. Thus (1 << 33) doesn't give
you the 33th bit shift, but it's undefined.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agoInput API 12 requires a valuator mode for each axis.
Peter Hutterer [Mon, 25 Oct 2010 00:39:38 +0000 (10:39 +1000)]
Input API 12 requires a valuator mode for each axis.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
3 years agoRemove convert_proc and close_proc.
Peter Hutterer [Sun, 17 Oct 2010 23:47:20 +0000 (09:47 +1000)]
Remove convert_proc and close_proc.

Both aren't actually called by the server anymore.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agoReplace two LocalDevicePtr with InputInfoPtr.
Peter Hutterer [Sun, 17 Oct 2010 23:44:35 +0000 (09:44 +1000)]
Replace two LocalDevicePtr with InputInfoPtr.

ABI 12 removes the LocalDevicePtr define from the server, InputInfoPtr is
the replacement.
Compile error introduced in 0b28a4c046a30ccb83278ea0aa59541fad89092c.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agodon't post motion events if the finger state is FS_UNTOUCHED
Joe Shaw [Tue, 12 Oct 2010 14:00:48 +0000 (10:00 -0400)]
don't post motion events if the finger state is FS_UNTOUCHED

Works around some buggy touchpads that report their position as things
like 0,0; 0,ymax; etc. at the same time as they turn off the finger
tool and/or touch indication.  This is particularly a problem when
using the touchpad in absolute mode.

Signed-off-by: Joe Shaw <joe@joeshaw.org>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agopost absolute coordinate motion events if device mode is absolute
Joe Shaw [Fri, 8 Oct 2010 19:20:42 +0000 (15:20 -0400)]
post absolute coordinate motion events if device mode is absolute

Signed-off-by: Joe Shaw <joe@joeshaw.org>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agotrack abs/rel mode changes in SwitchMode() instead of ignoring them
Joe Shaw [Fri, 8 Oct 2010 19:20:41 +0000 (15:20 -0400)]
track abs/rel mode changes in SwitchMode() instead of ignoring them

Signed-off-by: Joe Shaw <joe@joeshaw.org>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agoRemove refcnt initialization from InputDriverRec.
Peter Hutterer [Wed, 6 Oct 2010 01:00:47 +0000 (11:00 +1000)]
Remove refcnt initialization from InputDriverRec.

Removed from the server with
commit 6130170e7e9b64c611ee942ec3455dd1a185193d
Author: Adam Jackson <ajax@redhat.com>
Date:   Sat Sep 18 06:41:35 2010 -0400

    xfree86: Remove unused refcounting from input drivers

And given that it was unused, we don't need to ifdef it.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agoconfig: don't autoprobe when device was set
Giuseppe Bilotta [Sun, 19 Sep 2010 07:49:59 +0000 (09:49 +0200)]
config: don't autoprobe when device was set

If device was already set, we were asked to handle that specific device
and we should not go probing around. If we do, we might end up handling
a device different from what the X server thinks we are handling, with
dire consequences in case of hot plugging and unplugging.

Without this patch, a situation such as the following can happen.

A user has both a built-in laptop touchpad and a tablet such as the
Wacom Bamboo Pen & Touch, that is also exposed as a touchpad.

The tablet is plugged in before the server starts, and during setup the
server calls the synaptic driver for the /dev/input/mouseX device
corresponding to the touch device of the tablet; we end up in the
autoprobe path even though `device' was set, and the driver scans
/dev/input, where the first useful device it finds is the event device
for the built-in touchpad.

The driver starts managing the built-in touchpad, preventing future
instances from managing it too, while the server thinks the driver is
managing the tablet.

When the user disconnects the tablet, the corresponding instance of the
synpatics driver (which is actually managing the touchpad instead) is
unloaded: the built-in touchpad stops working in X.

Signed-off-by: Giuseppe Bilotta <giuseppe.bilotta@gmail.com>
Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agoconfig: collect options during preinit
Giuseppe Bilotta [Wed, 22 Sep 2010 19:44:13 +0000 (21:44 +0200)]
config: collect options during preinit

This must to ensure that the "Device" option is set correctly before
SetDeviceAndProtocol is called, but it's only needed when the old input
API is used.

Signed-off-by: Giuseppe Bilotta <giuseppe.bilotta@gmail.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agoBump to 1.3.99
Peter Hutterer [Wed, 1 Sep 2010 03:42:56 +0000 (13:42 +1000)]
Bump to 1.3.99

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
3 years agoMerge branch 'input-api'
Peter Hutterer [Wed, 1 Sep 2010 03:42:37 +0000 (13:42 +1000)]
Merge branch 'input-api'

Conflicts:
src/properties.c

3 years agoUse InputInfoPtr instead of LocalDevicePtr.
Peter Hutterer [Fri, 23 Jul 2010 05:03:42 +0000 (15:03 +1000)]
Use InputInfoPtr instead of LocalDevicePtr.

The latter is about to be removed from the server, InputInfoPtr has been
around in all supported server versions.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>