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

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, &para->resolution_detect);
+     prop_grab = InitAtom(pInfo->dev, SYNAPTICS_PROP_GRAB, 8, 1, &para->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: