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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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.
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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.
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>
Peter Hutterer [Fri, 4 Mar 2011 02:47:00 +0000 (12:47 +1000)]
Merge branch 'next'
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
Peter Hutterer [Mon, 21 Feb 2011 01:47:46 +0000 (11:47 +1000)]
Merge branch 'devel' into merge
Conflicts:
src/synaptics.c
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
Peter Hutterer [Wed, 1 Sep 2010 03:42:37 +0000 (13:42 +1000)]
Merge branch 'input-api'
Conflicts:
src/properties.c
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>