xserver-xorg-input-synaptics: Changes to 'ubuntu'
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 <bryce@canonical.com>
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 <sarvatt@ubuntu.com> 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 <bryce@canonical.com>
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 <bryce@ubuntu.com> 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 <raof@ubuntu.com> 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
Reply to: