debian/changelog | 18 ++ debian/control | 1 debian/patches/.gitignore | 1 debian/patches/101_resolution_detect_option.patch | 137 ++++++++++++++++++++++ debian/patches/series | 1 5 files changed, 156 insertions(+), 2 deletions(-)
New commits: commit c3e66773705f762284fc8c03601ed83b80210860 Author: Bryce Harrington <[email protected]> Date: Tue Jun 7 23:15:26 2011 -0700 Disable the xtst extension; causes bug 774978 diff --git a/debian/changelog b/debian/changelog index d0c1975..1ff0743 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,10 @@ +xserver-xorg-input-synaptics (1.3.99+git20110116.0e27ce3a-0ubuntu14) oneiric; urgency=low + + * Drop libxtst-dev build dependency so syndaemon does not use XRecord, + preventing a wide range of crashes in _CallCallbacks. (LP: #774978) + + -- Robert Hooker <[email protected]> Mon, 23 May 2011 10:13:09 -0400 + xserver-xorg-input-synaptics (1.3.99+git20110116.0e27ce3a-0ubuntu13) oneiric; urgency=low * Re-add 116_resolution_detect_option.patch as 101_resolution_detect_option.patch: diff --git a/debian/control b/debian/control index 26cd301..a5343e8 100644 --- a/debian/control +++ b/debian/control @@ -9,7 +9,6 @@ Build-Depends: libx11-dev, libxext-dev, libxi-dev (>= 2:1.2.0), - libxtst-dev, x11proto-core-dev, xserver-xorg-dev (>= 2:1.9.99.902-2ubuntu1), pkg-config, commit 589cc551bf88fec506b7e2285d10ee6dceeb884d Author: Bryce Harrington <[email protected]> Date: Fri May 20 08:14:12 2011 -0700 * Re-add 116_resolution_detect_option.patch as 101_resolution_detect_option.patch: - This patch was introduced in 1.2.2-2ubuntu7 but got erroneously dropped in the merge for 1.3.99+git20110116.0e27ce3a-0ubuntu1. (LP: #327428) diff --git a/debian/changelog b/debian/changelog index 023d7db..d0c1975 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,12 @@ +xserver-xorg-input-synaptics (1.3.99+git20110116.0e27ce3a-0ubuntu13) oneiric; urgency=low + + * Re-add 116_resolution_detect_option.patch as 101_resolution_detect_option.patch: + - This patch was introduced in 1.2.2-2ubuntu7 but got erroneously dropped in the + merge for 1.3.99+git20110116.0e27ce3a-0ubuntu1. + (LP: #327428) + + -- Bryce Harrington <[email protected]> Fri, 20 May 2011 11:14:44 -0700 + xserver-xorg-input-synaptics (1.3.99+git20110116.0e27ce3a-0ubuntu12) natty; urgency=low * syndaemon: Drain spurious events from XRecord connection as a work around @@ -110,7 +119,7 @@ xserver-xorg-input-synaptics (1.3.99+git20110116.0e27ce3a-0ubuntu1) natty; urgen * debian/patches/114_jumpy_cursor_first_part.patch: - Refresh for new upstream. Drop the multi-touch chunk of the quirk, as that is handled by upstream commit a6ca4d25. - + -- Christopher James Halse Rogers <[email protected]> Tue, 25 Jan 2011 20:01:58 +1100 xserver-xorg-input-synaptics (1.3.0-1) experimental; urgency=low diff --git a/debian/patches/.gitignore b/debian/patches/.gitignore new file mode 100644 index 0000000..69f1bf4 --- /dev/null +++ b/debian/patches/.gitignore @@ -0,0 +1 @@ +!*.patch diff --git a/debian/patches/101_resolution_detect_option.patch b/debian/patches/101_resolution_detect_option.patch new file mode 100644 index 0000000..4cce724 --- /dev/null +++ b/debian/patches/101_resolution_detect_option.patch @@ -0,0 +1,137 @@ +diff --git a/include/synaptics-properties.h b/include/synaptics-properties.h +index 9c6a2ee..150ba53 100644 +--- a/include/synaptics-properties.h ++++ b/include/synaptics-properties.h +@@ -140,6 +140,9 @@ + #define SYNAPTICS_PROP_PRESSURE_MOTION_FACTOR "Synaptics Pressure Motion Factor" + + /* 8 bit (BOOL) */ ++#define SYNAPTICS_PROP_RESOLUTION_DETECT "Synaptics Resolution Detect" ++ ++/* 8 bit (BOOL) */ + #define SYNAPTICS_PROP_GRAB "Synaptics Grab Event Device" + + /* 8 bit (BOOL), 1 value, tap-and-drag */ +diff --git a/man/synaptics.man b/man/synaptics.man +index 3f1ca9d..1ab36ca 100644 +--- a/man/synaptics.man ++++ b/man/synaptics.man +@@ -446,6 +446,18 @@ The gesture is enabled by default and can be disabled by setting the + TapAndDragGesture option to false. Property: "Synaptics Gestures" + . + .TP ++.BI "Option \*ResolutionDetect\*q \*q" boolean \*q ++Allow or prevent the synaptics driver from reporting the size of the ++touchpad to the X server. The X server normally uses this information ++to scale movements so that touchpad movement corresponds visually to ++mouse cursor movements on the screen. However, in some rare cases where ++the touchpad height/width ratio is significantly different from the ++laptop, it can cause the mouse cursor to skip pixels in the X or Y axis. ++This option allows disabling this scaling behavior, which can provide ++smoother mouse movement in such cases. ++Property: "Synaptics Resolution Detect" ++. ++.TP + .BI "Option \*qVertResolution\*q \*q" integer \*q + Resolution of X coordinates in units/millimeter. The value is used + together with HorizResolution to compensate unequal vertical and +@@ -871,6 +883,10 @@ FLOAT, 2 values, speed, friction. + FLOAT, 2 values, min, max. + + .TP 7 ++.BI "Synaptics Resolution Detect" ++8 bit (BOOL). ++ ++.TP 7 + .BI "Synaptics Grab Event Device" + 8 bit (BOOL). + +diff --git a/src/properties.c b/src/properties.c +index 5400928..61fd6ea 100644 +--- a/src/properties.c ++++ b/src/properties.c +@@ -77,6 +77,7 @@ Atom prop_palm_dim = 0; + Atom prop_coastspeed = 0; + Atom prop_pressuremotion = 0; + Atom prop_pressuremotion_factor = 0; ++Atom prop_resolution_detect = 0; + Atom prop_grab = 0; + Atom prop_gestures = 0; + Atom prop_capabilities = 0; +@@ -254,7 +255,7 @@ InitDeviceProperties(InputInfoPtr pInfo) + fvalues[1] = para->press_motion_max_factor; + + prop_pressuremotion_factor = InitFloatAtom(pInfo->dev, SYNAPTICS_PROP_PRESSURE_MOTION_FACTOR, 2, fvalues); +- ++ prop_resolution_detect = InitAtom(pInfo->dev, SYNAPTICS_PROP_RESOLUTION_DETECT, 8, 1, ¶->resolution_detect); + prop_grab = InitAtom(pInfo->dev, SYNAPTICS_PROP_GRAB, 8, 1, ¶->grab_event_device); + + values[0] = para->tap_and_drag_gesture; +@@ -621,6 +622,12 @@ SetProperty(DeviceIntPtr dev, Atom property, XIPropertyValuePtr prop, + + para->press_motion_min_z = press[0]; + para->press_motion_max_z = press[1]; ++ } else if (property == prop_resolution_detect) ++ { ++ if (prop->size != 1 || prop->format != 8 || prop->type != XA_INTEGER) ++ return BadMatch; ++ ++ para->resolution_detect = *(BOOL*)prop->data; + } else if (property == prop_grab) + { + if (prop->size != 1 || prop->format != 8 || prop->type != XA_INTEGER) +diff --git a/src/synaptics.c b/src/synaptics.c +index 88bd024..78f1023 100644 +--- a/src/synaptics.c ++++ b/src/synaptics.c +@@ -570,6 +570,7 @@ static void set_default_parameters(InputInfoPtr pInfo) + pars->single_tap_timeout = xf86SetIntOption(opts, "SingleTapTimeout", 180); + pars->press_motion_min_z = xf86SetIntOption(opts, "PressureMotionMinZ", pressureMotionMinZ); + pars->press_motion_max_z = xf86SetIntOption(opts, "PressureMotionMaxZ", pressureMotionMaxZ); ++ pars->resolution_detect = xf86SetBoolOption(opts, "ResolutionDetect", TRUE); + + pars->min_speed = xf86SetRealOption(opts, "MinSpeed", 0.4); + pars->max_speed = xf86SetRealOption(opts, "MaxSpeed", 0.7); +@@ -1028,7 +1029,7 @@ DeviceInit(DeviceIntPtr dev) + #endif + + /* X valuator */ +- if (priv->minx < priv->maxx) ++ if (priv->minx < priv->maxx && priv->synpara.resolution_detect) + { + min = priv->minx; + max = priv->maxx; +@@ -1050,7 +1051,7 @@ DeviceInit(DeviceIntPtr dev) + xf86InitValuatorDefaults(dev, 0); + + /* Y valuator */ +- if (priv->miny < priv->maxy) ++ if (priv->miny < priv->maxy && priv->synpara.resolution_detect) + { + min = priv->miny; + max = priv->maxy; +diff --git a/src/synapticsstr.h b/src/synapticsstr.h +index 9ad8638..5e98dab 100644 +--- a/src/synapticsstr.h ++++ b/src/synapticsstr.h +@@ -155,6 +155,7 @@ typedef struct _SynapticsParameters + int press_motion_max_z; /* finger pressure at which maximum pressure motion factor is applied */ + double press_motion_min_factor; /* factor applied on speed when finger pressure is at minimum */ + double press_motion_max_factor; /* factor applied on speed when finger pressure is at minimum */ ++ Bool resolution_detect; /* report pad size to xserver? */ + Bool grab_event_device; /* grab event device for exclusive use? */ + Bool tap_and_drag_gesture; /* Switches the tap-and-drag gesture on/off */ + unsigned int resolution_horiz; /* horizontal resolution of touchpad in units/mm */ +diff --git a/tools/synclient.c b/tools/synclient.c +index 9776d23..3f0c0bc 100644 +--- a/tools/synclient.c ++++ b/tools/synclient.c +@@ -137,6 +137,8 @@ static struct Parameter params[] = { + {"PressureMotionMaxZ", PT_INT, 1, 255, SYNAPTICS_PROP_PRESSURE_MOTION, 32, 1}, + {"PressureMotionMinFactor", PT_DOUBLE, 0, 10.0,SYNAPTICS_PROP_PRESSURE_MOTION_FACTOR, 0 /*float*/, 0}, + {"PressureMotionMaxFactor", PT_DOUBLE, 0, 10.0,SYNAPTICS_PROP_PRESSURE_MOTION_FACTOR, 0 /*float*/, 1}, ++ {"ResolutionDetect", PT_BOOL, 0, 1, SYNAPTICS_PROP_RESOLUTION_DETECT, 8, 0}, ++ + {"GrabEventDevice", PT_BOOL, 0, 1, SYNAPTICS_PROP_GRAB, 8, 0}, + {"TapAndDragGesture", PT_BOOL, 0, 1, SYNAPTICS_PROP_GESTURES, 8, 0}, + {"AreaLeftEdge", PT_INT, 0, 10000, SYNAPTICS_PROP_AREA, 32, 0}, diff --git a/debian/patches/series b/debian/patches/series index 68b6bb6..857feeb 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,6 +1,7 @@ 01-synaptics-dont-grab-if-not-on-current-VT.patch 02-do-not-use-synaptics-for-keyboards.patch 03-man-no-hal.patch +101_resolution_detect_option.patch 103_enable_cornertapping.patch 104_always_enable_tapping.patch #105_correct_multifinger_click.patch -- To UNSUBSCRIBE, email to [email protected] with a subject of "unsubscribe". Trouble? Contact [email protected] Archive: http://lists.debian.org/[email protected]

