Commit Graph

18 Commits

Author SHA1 Message Date
Patrick Curran
56655fd15f Added "friction physics" so coasting can stop on its own.
When you are coasting (but not corner coasting) you might want the
scrolling to slow down and stop on its own.  This also lets you
start coasting while using a two finger scroll.

Signed-off-by: Patrick Curran <pjcurran@wisc.edu>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Tested-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2010-08-20 11:08:47 +10:00
Peter Hutterer
b19e3782a7 Purge GuestMouse support.
Guest mouse dates back to quite a while ago, hasn't been tested for ages and
the current synaptics interface guide claims the bit that we used to check
if guestmouse is available is "reserved for future use. The host should
ignore the values of reserved bits when reading the capability bits."

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2010-06-17 11:23:30 +10:00
Peter Hutterer
078bad1582 Move some defines to where they belong.
These defines aren't used by anything but the ps2comm interface.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Fernando Carrijo <fcarrijo@yahoo.com.br>
2010-06-16 14:04:21 +10:00
Gaetan Nadon
4e221c1647 config: include files redundant in EXTRA_DIST
The HEADERS Automake primary variable always gets it's files
distributed and installed.

Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
2010-04-05 20:57:06 -04:00
Alberto Milone
7179a0eb11 Add active area outside of which movements, scrolling, tapping are ignored.
On some touchpads physical buttons are located under the touchpad surface. As a
result, when users try to perform a click, by pressing that part of the surface
of the touchpad, they get a click, a movement, a tap and (in some cases) a scroll,
which can make clicks quite inaccurate.

The "Synaptics Area" property can be used to define the edges of the active area of
the touchpad so that all movement, scrolling and tapping which take place outside
of this area will be ignored. This property is disabled by default.

Fixes xorg bug #21613.

Signed-off-by: Alberto Milone <alberto.milone@canonical.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-07-17 10:42:31 +10:00
Tero Saarni
0c3fbceb1b Add configurable x/y resolution to fix sensitivity on wide touchpads.
Synaptics uses anisotropic coordinate system.  On some wide touchpads
vertical resolution can be twice as high as horizontal which causes
unequal sensitivity on x/y directions.

VertResolution and HorizResolution can be used to set the resolution.
The ratio of the values is used to compensate x/y sensitivity.  The
properties are configured automatically if touchpad reports resolution
and if running on linux 2.6.31 or newer.

Fixes xorg bug #18351.

Signed-off-by: Tero Saarni <tero.saarni@gmail.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-07-16 14:54:15 +10:00
Peter Hutterer
6b3a032fdf Add "Synaptics Capabilities" read-only property.
This patch adds a "Synaptics Capabilities" property that advertises the
capabilities of the device in a read-only boolean property.
The first three values signal the presence of physical mouse buttons (left,
middle, right). Values 4 and 5 signal the touchpad's ability to do
multi-finger tracking.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
2009-05-28 08:56:50 +10:00
Erkin Bahceci
ee265e10c9 Add TapAndDragGesture option and gestures property.
The tap-and-drag gesture is an alternative way of dragging.
It is performed by tapping (touching and releasing the finger), then
touching again and moving the finger on the touchpad.
This gesture is enabled by default and can be disabled by setting the
TapAndDragGesture option to false.

The gesture already existed in synaptics and was always enabled. This
commit adds an option to switch it on/off. The default behavior is
tap-and-drag being enabled, that is, TapAndDragGesture is true.

The "Synaptics Gestures" property is intended to hold all new gesture
enabling options, like options for the upcoming multitouch gestures.

Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-05-13 09:03:46 +10:00
Peter Hutterer
609b6728ef Purge SynapticsHWInfo stuff, move it into proto_data.
This was only used in PS/2, on linux only on kernel 2.4 and it clobbered up
the rest. Move it to the ps2comm parts only, keep it private there.
This includes adding a "proto_data" field to the SynapticsPrivate.

This patch removes the -h option for synclient.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Christoph Brill <egore911@egore911.de>
2009-05-08 14:17:36 +10:00
Peter Hutterer
c09a3d50e9 Remove Synaptics SHM configuration bits.
The only thing we still export through SHM is the hardware state.
2009-04-26 21:00:55 +10:00
Marcel Dejean
3ddc067c87 two-finger emulation through fingerWidth
Signed-off-by: Christoph Brill <egore911@egore911.de>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-02-20 11:32:46 +10:00
Peter Hutterer
f92446f00a properties: implement float properties.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Christoph Brill <egore911@egore911.de>
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
2009-01-27 08:27:33 +10:00
Peter Hutterer
1d89a1650a Install header files in xserver's sdk dir.
Missing from 851097c45f. Don't install header
files in <prefix>/include, install them in <prefix>/include/xorg instead.
2008-10-13 15:06:12 +10:30
Peter Hutterer
851097c45f Install synaptics-properties.h in xorg include path, install xorg-synaptics.pc. 2008-10-03 17:38:10 +09:30
Fedor P. Goncharov
6f1900bdf0 Add autodetection of right scroll wheel region with very large X coordinate 2008-09-03 19:06:32 +02:00
Peter Hutterer
59f5547d4f Add support for device properties.
Exposes the SHMConfig parameters through device properties and allows run-time
changes to those properties.

Not exposed yet are floating point values:
min_speed, max_speed, accl, trackstick_speed (SYNAPTICS_PROP_SPEED)
scroll_dist_circ (SYNAPTICS_PROP_CIRCULAR_SCROLLING_DIST)
coasting_speed (SYNAPTICS_PROP_COASTING_SPEED)
press_motion_min_factor, press_motion_max_factor (SYNAPTICS_PROP_PRESSURE_MOTION_FACTOR)
2008-08-18 14:22:10 +09:30
Christoph Brill
b95a568480 Fix "make distcheck"
The new directory "include" was not packaged into the tarball. This makes "make
distcheck" work again.
2008-08-14 23:40:10 +02:00
Peter Hutterer
22d1b8a4ff Move synaptics.h into include/, create synapticsstr.h for private structs.
This just separates driver-internal stuff (synapticsstr.h) from external
stuff used for the SHM config.
2008-08-08 15:34:33 +09:30