[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

xserver-xorg-input-synaptics: Changes to 'upstream'



 .gitignore                     |    1 
 INSTALL                        |    2 
 Makefile.am                    |    4 
 configure.ac                   |   31 -
 fdi/11-x11-synaptics.fdi       |   31 +
 include/Makefile.am            |    2 
 include/synaptics-properties.h |   11 
 include/synaptics.h            |    2 
 man/synaptics.man              |  359 +++++++++++++++++----
 man/synclient.man              |   23 -
 man/syndaemon.man              |   16 
 src/alpscomm.c                 |    4 
 src/eventcomm.c                |  138 +++++---
 src/properties.c               |  227 ++++++++-----
 src/ps2comm.c                  |    4 
 src/psmcomm.c                  |    4 
 src/psmcomm.h                  |    2 
 src/synaptics.c                |  498 +++++++++++++++++++-----------
 src/synapticsstr.h             |   13 
 src/synproto.h                 |    1 
 tools/Makefile.am              |    4 
 tools/synclient.c              |  677 ++++++++++++++++++++++++++++++++---------
 tools/syndaemon.c              |  416 +++++++++++++++++++++----
 xorg-synaptics.pc.in           |    6 
 24 files changed, 1847 insertions(+), 629 deletions(-)

New commits:
commit 82de65f8304ba896e17ce16099632d367a2a596f
Author: Peter Hutterer <peter.hutterer@who-t.net>
Date:   Mon Mar 9 11:47:06 2009 +1000

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

diff --git a/configure.ac b/configure.ac
index 2131f47..df11400 100644
--- a/configure.ac
+++ b/configure.ac
@@ -22,7 +22,7 @@
 
 AC_PREREQ(2.57)
 AC_INIT([xf86-input-synaptics],
-        1.0.99.4,
+        1.1.0,
         [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],
         xf86-input-synaptics)
 

commit a0a0475b39a1abb67bfcc34723a222799132a33d
Author: Peter Hutterer <peter.hutterer@who-t.net>
Date:   Mon Mar 9 11:38:00 2009 +1000

    man: remove some pointless ( and ) around "float" options.
    
    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>

diff --git a/man/synaptics.man b/man/synaptics.man
index fd6a4be..b18fb8d 100644
--- a/man/synaptics.man
+++ b/man/synaptics.man
@@ -199,14 +199,14 @@ Motion Always"
 .BI "Option \*qMinSpeed\*q \*q" float \*q
 Minimum speed factor. Property: "Synaptics Move Speed"
 .TP
-.BI "Option \*qMaxSpeed\fR (\*q \*q" float \*q)
+.BI "Option \*qMaxSpeed\*q \*q" float \*q
 Maximum speed factor. Property: "Synaptics Move Speed"
 .TP
-.BI "Option \*qAccelFactor\fR (\*q \*q" float \*q)
+.BI "Option \*qAccelFactor\*q \*q" float \*q
 Acceleration factor for normal pointer movements. Property: "Synaptics Move
 Speed"
 .TP
-.BI "Option \*qTrackstickSpeed\fR (\*q \*q" float \*q)
+.BI "Option \*qTrackstickSpeed\*q \*q" float \*q
 Speed scale when in trackstick emulation mode. Property: "Synaptics Move Speed"
 .TP
 .BI "Option \*qPressureMotionMinZ\*q \*q" integer \*q
@@ -348,7 +348,7 @@ Set to 0 to disable. Property: "Synaptics Click Action"
 .BI "Option \*qCircularScrolling\*q \*q" boolean \*q
 If on, circular scrolling is used. Property: "Synaptics Circular Scrolling"
 .TP
-.BI "Option \*qCircScrollDelta\fR (\*q \*q" float \*q)
+.BI "Option \*qCircScrollDelta\*q \*q" float \*q
 Move angle (radians) of finger to generate a scroll event. Property: "Synaptics
 Circular Scrolling Distance"
 .TP
@@ -389,7 +389,7 @@ Palm Dimensions"
 Minimum finger pressure at which touch is considered a palm. Property:
 "Synaptics Palm Dimensions"
 .TP
-.BI "Option \*qCoastingSpeed\fR (\*q \*q" float \*q)
+.BI "Option \*qCoastingSpeed\*q \*q" float \*q
 Coasting threshold scrolling speed.
 .
 0 disables coasting. Property: "Synaptics Coasting Speed"

commit 5acb71723a7fe837f7312adb5b8320dda87649f2
Author: Peter Hutterer <peter.hutterer@who-t.net>
Date:   Mon Mar 9 11:28:02 2009 +1000

    man: device properties are now supported, should be stated as such.
    
    This includes listing supported properties and de-emphasizing the need for
    SHM.
    
    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>

diff --git a/man/synaptics.man b/man/synaptics.man
index a6f9e95..fd6a4be 100644
--- a/man/synaptics.man
+++ b/man/synaptics.man
@@ -68,9 +68,6 @@ taps for example.)
 Please refer to __xconfigfile__(__filemansuffix__) for general configuration
 details and for options that can be used with all input drivers.  This
 section only covers configuration details specific to this driver.
-.
-If you have the SHMConfig parameter enabled, these parameters can also
-be changed at runtime with the synclient(1) program.
 .PP
 The following driver
 .B Options
@@ -93,23 +90,24 @@ psm	FreeBSD psm driver
 .TE
 .TP 7
 .BI "Option \*qSHMConfig\*q \*q" boolean \*q
-Switch on/off shared memory for configuration. This enables the driver to be
-configured at runtime. Note that this is considered a security risk since any
-user can access the configuration.
+Switch on/off shared memory for run-time configuration. Note that this is
+considered a security risk since any user can access the configuration. This
+option is not needed with synaptics 1.0 or later. See section
+.B Device Properties.
 .TP 7
 .BI "Option \*qLeftEdge\*q \*q" integer \*q
-X coordinate for left edge.
+X coordinate for left edge. Property: "Synaptics Edges"
 .TP 7
 .BI "Option \*qRightEdge\*q \*q" integer \*q
 X coordinate for right edge. If this option is set,
 .BI SpecialScrollAreaRight
-is ignored.
+is ignored. Property: "Synaptics Edges"
 .TP 7
 .BI "Option \*qTopEdge\*q \*q" integer \*q
-Y coordinate for top edge.
+Y coordinate for top edge. Property: "Synaptics Edges"
 .TP 7
 .BI "Option \*qBottomEdge\*q \*q" integer \*q
-Y coordinate for bottom edge.
+Y coordinate for bottom edge. Property: "Synaptics Edges"
 .TP 7
 .BI "Option \*qSpecialScrollAreaRight\*q \*q" boolean \*q
 Some touchpads have a scroll region on the right edge. Disable this option if
@@ -117,135 +115,157 @@ you have one but don't want use it as scroll wheel region.
 .TP 7
 .BI "Option \*qFingerLow\*q \*q" integer \*q
 When finger pressure drops below this value, the driver counts it as a
-release.
+release. Property: "Synaptics Finger"
 .TP 7
 .BI "Option \*qFingerHigh\*q \*q" integer \*q
 When finger pressure goes above this value, the driver counts it as a
-touch.
+touch. Property: "Synaptics Finger"
 .TP 7
 .BI "Option \*qFingerPress\*q \*q" integer \*q
 When finger pressure goes above this value, the driver counts it as a
 press.
 .
 Currently a press is equivalent to putting the touchpad in trackstick
-emulation mode.
+emulation mode. Property: "Synaptics Finger"
 .TP 7
 .BI "Option \*qMaxTapTime\*q \*q" integer \*q
-Maximum time (in milliseconds) for detecting a tap.
+Maximum time (in milliseconds) for detecting a tap. Property: "Synaptics Tap
+Durations"
 .TP 7
 .BI "Option \*qBMaxTapMove\*q \*q" integer \*q
-Maximum movement of the finger for detecting a tap.
+Maximum movement of the finger for detecting a tap. Property: "Synaptics Tap
+Move"
 .TP 7
 .BI "Option \*qMaxDoubleTapTime\*q \*q" integer \*q
-Maximum time (in milliseconds) for detecting a double tap.
+Maximum time (in milliseconds) for detecting a double tap. Property:
+"Synaptics Tap Durations"
 .TP 7
 .BI "Option \*qClickTime\*q \*q" integer \*q
-The duration of the mouse click generated by tapping.
+The duration of the mouse click generated by tapping. Property: "Synaptics Tap
+Durations"
 .TP 7
 .BI "Option \*qFastTaps\*q \*q" boolean \*q
 Makes the driver react faster to a single tap, but also makes double
-clicks caused by double tapping slower.
+clicks caused by double tapping slower. Property: "Synaptics Tap FastTap"
 .TP 7
 .BI "Option \*qVertEdgeScroll\*q \*q" boolean \*q
-Enable vertical scrolling when dragging along the right edge.
+Enable vertical scrolling when dragging along the right edge. Property:
+"Synaptics Edge Scrolling"
 .TP 7
 .BI "Option \*qHorizEdgeScroll\*q \*q" boolean \*q
-Enable horizontal scrolling when dragging along the bottom edge.
+Enable horizontal scrolling when dragging along the bottom edge. Property:
+"Synaptics Edge Scrolling"
 .TP 7
 .BI "Option \*qCornerCoasting\*q \*q" boolean \*q
 Enable edge scrolling to continue while the finger stays in an edge corner.
+Property: "Synaptics Edge Scrolling"
 .TP 7
 .BI "Option \*qVertTwoFingerScroll\*q \*q" boolean \*q
 Enable vertical scrolling when dragging with two fingers anywhere on
-the touchpad.
+the touchpad. Property: "Synaptics Two-Finger Scrolling"
 .TP 7
 .BI "Option \*qHorizTwoFingerScroll\*q \*q" boolean \*q
 Enable horizontal scrolling when dragging with two fingers anywhere on
-the touchpad.
+the touchpad. Property: "Synaptics Two-Finger Scrolling"
 .TP 7
 .BI "Option \*qVertScrollDelta\*q \*q" integer \*q
-Move distance of the finger for a scroll event.
+Move distance of the finger for a scroll event. Property: "Synaptics Scrolling
+Distance"
 .TP 7
 .BI "Option \*qHorizScrollDelta\*q \*q" integer \*q
-Move distance of the finger for a scroll event.
+Move distance of the finger for a scroll event. Property: "Synaptics Scrolling
+Distance"
 .TP 7
 .BI "Option \*qEdgeMotionMinZ\*q \*q" integer \*q
-Finger pressure at which minimum edge motion speed is set.
+Finger pressure at which minimum edge motion speed is set. Property:
+"Synaptics Edge Motion Pressure"
 .TP
 .BI "Option \*qEdgeMotionMaxZ\*q \*q" integer \*q
-Finger pressure at which maximum edge motion speed is set.
+Finger pressure at which maximum edge motion speed is set. Property:
+"Synaptics Edge Motion Pressure"
 .TP
 .BI "Option \*qEdgeMotionMinSpeed\*q \*q" integer \*q
-Slowest setting for edge motion speed.
+Slowest setting for edge motion speed. Property: "Synaptics Edge Motion Speed"
 .TP
 .BI "Option \*qEdgeMotionMaxSpeed\*q \*q" integer \*q
-Fastest setting for edge motion speed.
+Fastest setting for edge motion speed. Property: "Synaptics Edge Motion Speed"
 .TP
 .BI "Option \*qEdgeMotionUseAlways\*q \*q" boolean \*q
 If on, edge motion is also used for normal movements.
 .
-If off, egde motion is used only when dragging.
+If off, egde motion is used only when dragging. Property: "Synaptics Edge
+Motion Always"
 .TP
 .BI "Option \*qMinSpeed\*q \*q" float \*q
-Minimum speed factor.
+Minimum speed factor. Property: "Synaptics Move Speed"
 .TP
 .BI "Option \*qMaxSpeed\fR (\*q \*q" float \*q)
-Maximum speed factor.
+Maximum speed factor. Property: "Synaptics Move Speed"
 .TP
 .BI "Option \*qAccelFactor\fR (\*q \*q" float \*q)
-Acceleration factor for normal pointer movements.
+Acceleration factor for normal pointer movements. Property: "Synaptics Move
+Speed"
 .TP
 .BI "Option \*qTrackstickSpeed\fR (\*q \*q" float \*q)
-Speed scale when in trackstick emulation mode.
+Speed scale when in trackstick emulation mode. Property: "Synaptics Move Speed"
 .TP
 .BI "Option \*qPressureMotionMinZ\*q \*q" integer \*q
-Finger pressure at which minimum pressure motion factor is applied.
+Finger pressure at which minimum pressure motion factor is applied. Property:
+"Synaptics Pressure Motion"
 .TP
 .BI "Option \*qPressureMotionMaxZ\*q \*q" integer \*q
-Finger pressure at which maximum pressure motion factor is applied.
+Finger pressure at which maximum pressure motion factor is applied.  Property:
+"Synaptics Pressure Motion"
 .TP
 .BI "Option \*qPressureMotionMinFactor\*q \*q" integer \*q
-Lowest setting for pressure motion factor.
+Lowest setting for pressure motion factor. Property: "Synaptics Pressure
+Motion Factor"
 .TP
 .BI "Option \*qPressureMotionMaxFactor\*q \*q" integer \*q
-Greatest setting for pressure motion factor.
+Greatest setting for pressure motion factor. Property: "Synaptics Pressure
+Motion Factor"
 .TP
 .BI "Option \*qUpDownScrolling\*q \*q" boolean \*q
 If on, the up/down buttons generate button 4/5 events.
 .
 If off, the up button generates a double click and the down button
-generates a button 2 event.
+generates a button 2 event. Property: "Synaptics Button Scrolling"
 .TP
 .BI "Option \*qLeftRightScrolling\*q \*q" boolean \*q
 If on, the left/right buttons generate button 6/7 events.
 .
-If off, the left/right buttons both generate button 2 events.
+If off, the left/right buttons both generate button 2 events. Property:
+"Synaptics Button Scrolling"
 .TP
 .BI "Option \*qUpDownScrollRepeat\*q \*q" boolean \*q
 If on, and the up/down buttons are used for scrolling
 (\fBUpDownScrolling\fR), these buttons will send auto-repeating 4/5 events,
 with the delay between repeats determined by \fBScrollButtonRepeat\fR.
+Property: "Synaptics Button Scrolling Repeat"
 .TP
 .BI "Option \*qLeftRightScrollRepeat\*q \*q" boolean \*q
 If on, and the left/right buttons are used for scrolling
 (\fBLeftRightScrolling\fR), these buttons will send auto-repeating 6/7 events,
 with the delay between repeats determined by \fBScrollButtonRepeat\fR.
+Property: "Synaptics Button Scrolling Repeat"
 .TP
 .BI "Option \*qScrollButtonRepeat\*q \*q" integer \*q
 The number of milliseconds between repeats of button events 4-7 from the
-up/down/left/right scroll buttons.
+up/down/left/right scroll buttons. Property: "Synaptics Button Scrolling Time"
 .TP
 .BI "Option \*qEmulateMidButtonTime\*q \*q" integer \*q
-Maximum time (in milliseconds) for middle button emulation.
+Maximum time (in milliseconds) for middle button emulation. Property:
+"Synaptics Middle Button Timeout"
 .TP
 .BI "Option \*qEmulateTwoFingerMinZ\*q \*q" integer \*q
 For touchpads not capable of detecting multiple fingers (Alps), this sets the
-Z pressure threshold to emulate a two finger press.
+Z pressure threshold to emulate a two finger press. Property: "Synaptics
+Two-Finger Pressure"
 .TP
 .BI "Option \*qEmulateTwoFingerMinW\*q \*q" integer \*q
 Some touchpads report a two-finger touch as wide finger. This sets the finger
 width threshold to emulate a two finger press. This feature works best with
-(\fBPalmDetect\fR) off.
+(\fBPalmDetect\fR) off. Property: "Synaptics Two-Finger Width"
 .TP
 .BI "Option \*qTouchpadOff\*q \*q" integer \*q
 Switch off the touchpad.
@@ -257,77 +277,80 @@ l l.
 1	Touchpad is switched off
 2	Only tapping and scrolling is switched off
 .TE
+Property: "Synaptics Off"
 .TP
 .BI "Option \*qGuestMouseOff\*q \*q" boolean \*q
-Switch on/off guest mouse (often a stick).
+Switch on/off guest mouse (often a stick). Property: "Synaptics Guestmouse
+Off"
 .TP
 .BI "Option \*qLockedDrags\*q \*q" boolean \*q
 If off, a tap and drag gesture ends when you release the finger.
 .
 If on, the gesture is active until you tap a second time, or until
-LockedDragTimeout expires.
+LockedDragTimeout expires. Property: "Synaptics Locked Drags"
 .TP
 .BI "Option \*qLockedDragTimeout\*q \*q" integer \*q
 This parameter specifies how long it takes (in milliseconds) for the
 LockedDrags mode to be automatically turned off after the finger is
-released from the touchpad.
+released from the touchpad. Property: "Synaptics Locked Drags Timeout"
 .TP
 .BI "Option \*qRTCornerButton\*q \*q" integer \*q
 .
 Which mouse button is reported on a right top corner tap.
 .
-Set to 0 to disable.
+Set to 0 to disable. Property: "Synaptics Tap Action"
 .TP
 .BI "Option \*qRBCornerButton\*q \*q" integer \*q
 Which mouse button is reported on a right bottom corner tap.
 .
-Set to 0 to disable.
+Set to 0 to disable. Property: "Synaptics Tap Action"
 .TP
 .BI "Option \*qLTCornerButton\*q \*q" integer \*q
 Which mouse button is reported on a left top corner tap.
 .
-Set to 0 to disable.
+Set to 0 to disable. Property: "Synaptics Tap Action"
 .TP
 .BI "Option \*qLBCornerButton\*q \*q" integer \*q
 Which mouse button is reported on a left bottom corner tap.
 .
-Set to 0 to disable.
+Set to 0 to disable. Property: "Synaptics Tap Action"
 .TP
 .BI "Option \*qTapButton1\*q \*q" integer \*q
 Which mouse button is reported on a non-corner one-finger tap.
 .
-Set to 0 to disable.
+Set to 0 to disable. Property: "Synaptics Tap Action"
 .TP
 .BI "Option \*qTapButton2\*q \*q" integer \*q
 Which mouse button is reported on a non-corner two-finger tap.
 .
-Set to 0 to disable.
+Set to 0 to disable. Property: "Synaptics Tap Action"
 .TP
 .BI "Option \*qTapButton3\*q \*q" integer \*q
 Which mouse button is reported on a non-corner three-finger tap.
 .
-Set to 0 to disable.
+Set to 0 to disable. Property: "Synaptics Tap Action"
 .TP
 .BI "Option \*qClickFinger1\*q \*q" integer \*q
 Which mouse button is reported when left-clicking with one finger.
 .
-Set to 0 to disable.
+Set to 0 to disable. Property: "Synaptics Click Action"
 .TP
 .BI "Option \*qClickFinger2\*q \*q" integer \*q
 Which mouse button is reported when left-clicking with two fingers.
 .
-Set to 0 to disable.
+Set to 0 to disable. Property: "Synaptics Click Action"
 .TP
 .BI "Option \*qClickFinger3\*q \*q" integer \*q
 Which mouse button is reported when left-clicking with three fingers.
 .
-Set to 0 to disable.
+Set to 0 to disable. Property: "Synaptics Click Action"
 .TP
 .BI "Option \*qCircularScrolling\*q \*q" boolean \*q
-If on, circular scrolling is used.
+If on, circular scrolling is used. Property: "Synaptics Circular Scrolling"
 .TP
 .BI "Option \*qCircScrollDelta\fR (\*q \*q" float \*q)
-Move angle (radians) of finger to generate a scroll event.
+Move angle (radians) of finger to generate a scroll event. Property: "Synaptics
+Circular Scrolling Distance"
 .TP
 .BI "Option \*qCircScrollTrigger\*q \*q" integer \*q
 Trigger region on the touchpad to start circular scrolling
@@ -343,33 +366,37 @@ l l.
 7	Left Edge
 8	Top Left Corner
 .TE
+Property: "Synaptics Circular Scrolling Trigger"
 .TP
 .BI "Option \*qCircularPad\*q \*q" boolean \*q
 .
 Instead of being a rectangle, the edge is the ellipse enclosed by the
 Left/Right/Top/BottomEdge parameters.
 .
-For circular touchpads.
+For circular touchpads. Property: "Synaptics Circular Pad"
 .TP
 .BI "Option \*qPalmDetect\*q \*q" boolean \*q
 If palm detection should be enabled.
 .
 Note that this also requires hardware/firmware support from the
-touchpad.
+touchpad. Property: "Synaptics Palm Detection"
 .TP
 .BI "Option \*qPalmMinWidth\*q \*q" integer \*q
-Minimum finger width at which touch is considered a palm.
+Minimum finger width at which touch is considered a palm. Property: "Synaptics
+Palm Dimensions"
 .TP
 .BI "Option \*qPalmMinZ\*q \*q" integer \*q
-Minimum finger pressure at which touch is considered a palm.
+Minimum finger pressure at which touch is considered a palm. Property:
+"Synaptics Palm Dimensions"
 .TP
 .BI "Option \*qCoastingSpeed\fR (\*q \*q" float \*q)
 Coasting threshold scrolling speed.
 .
-0 disables coasting.
+0 disables coasting. Property: "Synaptics Coasting Speed"
 .TP
 .BI "Option \*qSingleTapTimeout\*q \*q" integer \*q
-Timeout after a tap to recognize it as a single tap.
+Timeout after a tap to recognize it as a single tap. Property: "Synaptics Tap
+Durations"
 .TP
 .BI "Option \*qGrabEventDevice\*q \*q" boolean \*q
 If GrabEventDevice is true, the driver will grab the event device for
@@ -614,6 +641,158 @@ and finger movement distance.
 Trackstick mode is exited when the finger pressure drops below
 FingerLow or when the finger is moved further than MaxTapMove away
 from the initial position.
+
+.SH "DEVICE PROPERTIES"
+Synaptics 1.0 and higher support input device properties if the driver is
+running on X server 1.6 or higher. On these driver versions, Option
+"SHMConfig" is not needed to enable run-time configuration. The synclient tool
+shipped with synaptics version 1.1 uses input device properties by default.
+.
+Properties supported:
+.TP 7
+.BI "Synaptics Edges"
+32 bit, 4 values, left, right, top, bottom.
+
+.TP 7
+.BI "Synaptics Finger"
+32 bit, 3 values, low, high, press.
+
+.TP 7
+.BI "Synaptics Tap Time"
+32 bit.
+
+.TP 7
+.BI "Synaptics Tap Move"
+32 bit.
+
+.TP 7
+.BI "Synaptics Tap Durations"
+32 bit, 3 values, single touch timeout, max tapping time for double taps,
+duration of a single click.
+
+.TP 7
+.BI "Synaptics Tap FastTap"
+8 bit (BOOL).
+
+.TP 7
+.BI "Synaptics Middle Button Timeout"
+32 bit.
+
+.TP 7
+.BI "Synaptics Two-Finger Pressure"
+32 bit.
+
+.TP 7
+.BI "Synaptics Two-Finger Width"
+32 bit.
+
+.TP 7
+.BI "Synaptics Scrolling Distance"
+32 bit, 2 values, vert, horiz.
+
+.TP 7
+.BI "Synaptics Edge Scrolling"
+8 bit (BOOL), 3 values, vertical, horizontal, corner.
+
+.TP 7
+.BI "Synaptics Two-Finger Scrolling"
+8 bit (BOOL), 2 values, vertical, horizontal.
+
+.TP 7
+.BI "Synaptics Move Speed"
+FLOAT, 4 values, min, max, accel, trackstick.
+
+.TP 7
+.BI "Synaptics Edge Motion Pressure"
+32 bit, 2 values, min, max.
+
+.TP 7
+.BI "Synaptics Edge Motion Speed"
+32 bit, 2 values, min, max.
+
+.TP 7
+.BI "Synaptics Edge Motion Always"
+8 bit (BOOL).
+
+.TP 7
+.BI "Synaptics Button Scrolling"
+8 bit (BOOL), 2 values, updown, leftright.
+
+.TP 7
+.BI "Synaptics Button Scrolling Repeat"
+8 bit (BOOL), 2 values, updown, leftright.
+
+.TP 7
+.BI "Synaptics Button Scrolling Time"
+32 bit.
+
+.TP 7
+.BI "Synaptics Off"
+8 bit, valid values (0, 1, 2).
+
+.TP 7
+.BI "Synaptics Guestmouse Off"
+8 bit (BOOL).
+
+.TP 7
+.BI "Synaptics Locked Drags"
+8 bit (BOOL).
+
+.TP 7
+.BI "Synaptics Locked Drags Timeout"
+32 bit.
+
+.TP 7
+.BI "Synaptics Tap Action"
+8 bit, up to MAX_TAP values (see synaptics.h), 0 disables an element. order:
+RT, RB, LT, LB, F1, F2, F3.
+
+.TP 7
+.BI "Synaptics Click Action"
+8 bit, up to MAX_CLICK values (see synaptics.h), 0 disables an element.
+order: Finger 1, 2, 3.
+
+.TP 7
+.BI "Synaptics Circular Scrolling"
+8 bit (BOOL).
+
+.TP 7
+.BI "Synaptics Circular Scrolling Distance"
+FLOAT.
+
+.TP 7
+.BI "Synaptics Circular Scrolling Trigger"
+8 bit, valid values 0..8 (inclusive) order: any edge, top, top + right,
+right, right + bottom, bottom, bottom + left, left, left  + top.
+
+.TP 7
+.BI "Synaptics Circular Pad"
+8 bit (BOOL).
+
+.TP 7
+.BI "Synaptics Palm Detection"
+8 bit (BOOL).
+
+.TP 7
+.BI "Synaptics Palm Dimensions"
+32 bit, 2 values, width, z.
+
+.TP 7
+.BI "Synaptics Coasting Speed"
+FLOAT.
+
+.TP 7
+.BI "Synaptics Pressure Motion"
+32 bit, 2 values, min, max.
+
+.TP 7
+.BI "Synaptics Pressure Motion Factor"
+FLOAT, 2 values, min, max.
+
+.TP 7
+.BI "Synaptics Grab Event Device"
+8 bit (BOOL).
+
 .SH "NOTES"
 There is an example hal policy file in
 .I ${sourcecode}/fdi/11-x11-synaptics.fdi

commit 18b25ae7fa6438f85c49f41c1c11ed8ac84df47e
Author: Peter Hutterer <peter.hutterer@who-t.net>
Date:   Thu Mar 5 11:54:57 2009 +1000

    Bump to 1.0.99.4

diff --git a/configure.ac b/configure.ac
index 51097e5..2131f47 100644
--- a/configure.ac
+++ b/configure.ac
@@ -22,7 +22,7 @@
 
 AC_PREREQ(2.57)
 AC_INIT([xf86-input-synaptics],
-        1.0.99.3,
+        1.0.99.4,
         [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],
         xf86-input-synaptics)
 

commit 4d5a41ca574b1462889d4423cfdbc008132aa9c2
Author: Peter Hutterer <peter.hutterer@who-t.net>
Date:   Thu Mar 5 11:47:41 2009 +1000

    include xorg-server.h from all driver source files.
    
    This fixes the 64-bit issues with 1.0.99.3. Not having xorg-server.h included
    in time means we miss out on _XSERVER64, which leads to different sizes of the
    LocalDeviceRec struct in the driver and the server.
    
    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>

diff --git a/src/alpscomm.c b/src/alpscomm.c
index 5a17af7..908f949 100644
--- a/src/alpscomm.c
+++ b/src/alpscomm.c
@@ -32,6 +32,7 @@
 #include "config.h"
 #endif
 
+#include <xorg-server.h>
 #include "alpscomm.h"
 #include "synproto.h"
 #include "synaptics.h"
diff --git a/src/eventcomm.c b/src/eventcomm.c
index c917c80..c7c5018 100644
--- a/src/eventcomm.c
+++ b/src/eventcomm.c
@@ -28,6 +28,7 @@
 #include "config.h"
 #endif
 
+#include <xorg-server.h>
 #include "eventcomm.h"
 #include <errno.h>
 #include <sys/types.h>
diff --git a/src/properties.c b/src/properties.c
index 681f77f..0861ae0 100644
--- a/src/properties.c
+++ b/src/properties.c
@@ -27,6 +27,7 @@
 #include "config.h"
 #endif
 
+#include <xorg-server.h>
 #include "xf86Module.h"
 #if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 3
 
diff --git a/src/ps2comm.c b/src/ps2comm.c
index 7dceb04..6c62918 100644
--- a/src/ps2comm.c
+++ b/src/ps2comm.c
@@ -36,6 +36,7 @@
 #include "config.h"
 #endif
 
+#include <xorg-server.h>
 #include "ps2comm.h"
 #include "synproto.h"
 #include "synaptics.h"
diff --git a/src/psmcomm.c b/src/psmcomm.c
index dcdde74..c29a8df 100644
--- a/src/psmcomm.c
+++ b/src/psmcomm.c
@@ -38,6 +38,7 @@
 #include "config.h"
 #endif
 
+#include <xorg-server.h>
 #include "psmcomm.h"
 #include <errno.h>
 #include <string.h>
diff --git a/src/synaptics.c b/src/synaptics.c
index ec85fba..ddefecf 100644
--- a/src/synaptics.c
+++ b/src/synaptics.c
@@ -58,6 +58,7 @@
 #include "config.h"
 #endif
 
+#include <xorg-server.h>
 #include <unistd.h>
 #include <misc.h>
 #include <xf86.h>
@@ -72,7 +73,6 @@
 #include "mipointer.h"
 #endif
 
-#include "xorg-server.h"
 #include "synaptics.h"
 #include "synapticsstr.h"
 #include "synaptics-properties.h"

commit 2a93e92d493050398f993fda50c5e7a445a946de
Author: Peter Hutterer <peter.hutterer@who-t.net>
Date:   Wed Mar 4 15:20:07 2009 +1000

    Bump to 1.0.99.3

diff --git a/configure.ac b/configure.ac
index a465fd3..51097e5 100644
--- a/configure.ac
+++ b/configure.ac
@@ -22,7 +22,7 @@
 
 AC_PREREQ(2.57)
 AC_INIT([xf86-input-synaptics],
-        1.0.99.2,
+        1.0.99.3,
         [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],
         xf86-input-synaptics)
 

commit c719553dac875824b2d2a8f7714a89998ab4828d
Author: Peter Hutterer <peter.hutterer@who-t.net>
Date:   Wed Mar 4 15:18:39 2009 +1000

    Don't auto-include xorg-server.h in config.h
    
    config.h is needed by synclient/syndaemon, and including xorg-server.h leads
    to funny results on 64 bit machines. Not "ha ha" funny though.
    
    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>

diff --git a/configure.ac b/configure.ac
index f0397c4..a465fd3 100644
--- a/configure.ac
+++ b/configure.ac
@@ -42,8 +42,6 @@ AC_DISABLE_STATIC
 AC_PROG_LIBTOOL
 AC_PROG_CC
 
-AH_TOP([#include "xorg-server.h"])
-
 AC_MSG_CHECKING([which optional backends will be build])
 case "${host}" in
 *linux*)
diff --git a/src/synaptics.c b/src/synaptics.c
index 1fe8805..ec85fba 100644
--- a/src/synaptics.c
+++ b/src/synaptics.c
@@ -72,6 +72,7 @@
 #include "mipointer.h"
 #endif
 
+#include "xorg-server.h"
 #include "synaptics.h"
 #include "synapticsstr.h"
 #include "synaptics-properties.h"

commit 07f0588bbd85655ba7d2ef4d2a3f4a62ddb638bc
Author: Peter Hutterer <peter.hutterer@who-t.net>
Date:   Wed Mar 4 15:03:40 2009 +1000

    synclient: don't print driver's package version info.
    
    synclient is not the driver. If you want to know the driver's version, look in
    the log file. After all, synclient would only print the one it was compiled
    with anyway, not the one of the driver.
    
    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>

diff --git a/tools/synclient.c b/tools/synclient.c
index ff7292c..40279d4 100644
--- a/tools/synclient.c
+++ b/tools/synclient.c
@@ -217,7 +217,6 @@ shm_show_hw_info(SynapticsSHM *synshm)
 	printf("    This is normal if you are running linux kernel 2.6.\n");
 	printf("    Check the kernel log for touchpad hardware information.\n");
     }
-    printf("Driver version: %d\n", (PACKAGE_VERSION_MAJOR*10000+PACKAGE_VERSION_MINOR*100+PACKAGE_VERSION_PATCHLEVEL));
 }
 
 static void

commit 020142e57cbf709bd694112c32522a040042544d
Author: Peter Hutterer <peter.hutterer@who-t.net>
Date:   Wed Mar 4 12:15:58 2009 +1000

    syndaemon: needs XI_LIBS to link now.
    
    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>

diff --git a/tools/Makefile.am b/tools/Makefile.am
index 18797d6..b5b12b1 100644
--- a/tools/Makefile.am
+++ b/tools/Makefile.am
@@ -28,4 +28,4 @@ synclient_SOURCES = synclient.c
 synclient_LDFLAGS = -lm $(XLIB_LIBS) $(XI_LIBS)
 
 syndaemon_SOURCES = syndaemon.c
-syndaemon_LDFLAGS = $(XLIB_LIBS) $(XRECORD_LIBS)
+syndaemon_LDFLAGS = $(XLIB_LIBS) $(XRECORD_LIBS) $(XI_LIBS)

commit aa5b2b64e541ff7ca3f0a2bdb11d1c20624c406a
Author: Peter Hutterer <peter.hutterer@who-t.net>
Date:   Wed Mar 4 11:51:53 2009 +1000

    synclient: XCloseDisplay doesn't like NULL-pointers.
    
    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>

diff --git a/tools/synclient.c b/tools/synclient.c
index ec6bc60..ff7292c 100644
--- a/tools/synclient.c
+++ b/tools/synclient.c
@@ -445,7 +445,7 @@ dp_init()
 
 unwind:
     XFree(v);
-    if (error)
+    if (error && dpy)
     {
 	XCloseDisplay(dpy);
 	dpy = NULL;

commit 575616521aeffb002c4b41de1e77da5c251ee4af
Author: Peter Hutterer <peter.hutterer@who-t.net>
Date:   Mon Mar 2 12:28:51 2009 +1000

    syndaemon: disable XRecord by default.
    
    XRecord is disabled in the server by default, so let's not have it as default
    here.
    
    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    Acked-by: Julien Cristau <jcristau@debian.org>

diff --git a/man/syndaemon.man b/man/syndaemon.man
index 4f04414..1387f45 100644
--- a/man/syndaemon.man
+++ b/man/syndaemon.man
@@ -8,7 +8,7 @@ the touchpad when the keyboard is being used.
 .SH "SYNTAX"
 .LP
 syndaemon [\fI\-i idle\-time\fP] [\fI\-d\fP] [\fI\-p pid\-file\fP]
-[\fI\-t\fP] [\fI\-k\fP] [\fI\-K\fP] [\fI\-s\fP]
+[\fI\-t\fP] [\fI\-k\fP] [\fI\-K\fP] [\fI\-R\fP] [\fI\-s\fP]
 .SH "DESCRIPTION"
 .LP
 Disabling the touchpad while typing avoids unwanted movements of the
@@ -49,8 +49,8 @@ Like \-k but also ignore Modifier+Key combos.
 .LP
 .TP
 \fB\-R\fP
-Disable the use of the XRecord extension for detecting keyboard activity.
-This will force the use of polling the keyboard state.
+Use the XRecord extension for detecting keyboard activity instead of polling
+the keyboard state.
 .LP
 .TP
 \fB\-s\fP
diff --git a/tools/syndaemon.c b/tools/syndaemon.c
index 3646e0f..751c2c9 100644
--- a/tools/syndaemon.c
+++ b/tools/syndaemon.c
@@ -84,7 +84,7 @@ usage(void)
     fprintf(stderr, "  -t Only disable tapping and scrolling, not mouse movements.\n");
     fprintf(stderr, "  -k Ignore modifier keys when monitoring keyboard activity.\n");
     fprintf(stderr, "  -K Like -k but also ignore Modifier+Key combos.\n");
-    fprintf(stderr, "  -R Don't use the XRecord extension.\n");
+    fprintf(stderr, "  -R Use the XRecord extension.\n");
     exit(1);
 }
 
@@ -546,7 +546,7 @@ main(int argc, char *argv[])
     double idle_time = 2.0;
     int poll_delay = 200000;	    /* 200 ms */
     int c;
-    int use_xrecord = 1;
+    int use_xrecord = 0;
 
     /* Parse command line parameters */
     while ((c = getopt(argc, argv, "i:m:dtp:kKR?")) != EOF) {
@@ -577,7 +577,7 @@ main(int argc, char *argv[])
             use_shm = 1;
             break;
 	case 'R':
-	    use_xrecord = 0;
+	    use_xrecord = 1;
 	    break;
 	default:
 	    usage();

commit bc395e89d2629755e199886dcebb38c4964b2cd1
Author: Peter Hutterer <peter.hutterer@who-t.net>
Date:   Tue Mar 3 11:33:23 2009 +1000

    syndaemon: use device properties unless SHM is requested.
    
    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    Acked-by: Julien Cristau <jcristau@debian.org>

diff --git a/man/syndaemon.man b/man/syndaemon.man
index eaaa0f0..4f04414 100644
--- a/man/syndaemon.man
+++ b/man/syndaemon.man
@@ -8,14 +8,12 @@ the touchpad when the keyboard is being used.
 .SH "SYNTAX"
 .LP
 syndaemon [\fI\-i idle\-time\fP] [\fI\-d\fP] [\fI\-p pid\-file\fP]
-[\fI\-t\fP] [\fI\-k\fP] [\fI\-K\fP]
+[\fI\-t\fP] [\fI\-k\fP] [\fI\-K\fP] [\fI\-s\fP]
 .SH "DESCRIPTION"
 .LP
 Disabling the touchpad while typing avoids unwanted movements of the
 pointer that could lead to giving focus to the wrong window.
 .
-This program needs SHMConfig "on" in your XOrg/XFree86 Synaptics
-Touchpad configuration.
 .SH "OPTIONS"
 .LP
 .TP
@@ -53,6 +51,13 @@ Like \-k but also ignore Modifier+Key combos.
 \fB\-R\fP
 Disable the use of the XRecord extension for detecting keyboard activity.
 This will force the use of polling the keyboard state.
+.LP
+.TP
+\fB\-s\fP
+Use a shared memory area to enable/disable the touchpad instead of device
+properties. WARNING: The SHM mechanism is not secure if you are in an untrusted multiuser
+environment. All local users can change the parameters at any time. This
+option requires the driver Option "SHMConfig" to be enabled.
 .SH "ENVIRONMENT VARIABLES"
 .LP
 .TP
diff --git a/tools/syndaemon.c b/tools/syndaemon.c
index 91e1a61..3646e0f 100644
--- a/tools/syndaemon.c
+++ b/tools/syndaemon.c
@@ -29,6 +29,8 @@
 #endif
 


Reply to: