xserver-xorg-input-synaptics: Changes to 'ubuntu'
debian/changelog | 9 ++
debian/control | 2
debian/patches/101_no_horizscroll.patch | 6 -
debian/patches/102_dont_check_abi.diff | 18 ++--
src/properties.c | 118 ++++++++++----------------------
src/synaptics.c | 4 -
6 files changed, 64 insertions(+), 93 deletions(-)
New commits:
commit d425f03828e984d4e519f2f4782cdf17f8e054ec
Author: Timo Aaltonen <tjaalton@cc.hut.fi>
Date: Thu Oct 9 15:28:26 2008 +0300
Bump the build-dep on xserver-xorg-dev too, add a bug closer.
diff --git a/debian/changelog b/debian/changelog
index 9b502b7..ba641a4 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,8 +1,9 @@
xfree86-driver-synaptics (0.15.2-0ubuntu4) intrepid; urgency=low
* Cherry-picked commit 355e845, "Adjust to new property API".
+ (LP: #274728)
* Refresh patches 101 & 102.
- * Bump the build-dep on libxi-dev.
+ * Bump the build-dep on libxi-dev and xserver-xorg-dev.
-- Timo Aaltonen <tepsipakki@ubuntu.com> Mon, 29 Sep 2008 10:23:16 +0300
diff --git a/debian/control b/debian/control
index c482867..b7a649a 100644
--- a/debian/control
+++ b/debian/control
@@ -4,7 +4,7 @@ Priority: optional
Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@lists.ubuntu.com>
XSBC-Original-Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
Uploaders: Mattia Dongili <malattia@debian.org>
-Build-Depends: debhelper (>= 4.0.0), libx11-dev, libxext-dev, libxi-dev (>= 2:1.1.3-1ubuntu3), x11proto-core-dev, xserver-xorg-dev (>= 2:1.4.99.905), pkg-config, quilt, automake, libtool, xutils-dev
+Build-Depends: debhelper (>= 4.0.0), libx11-dev, libxext-dev, libxi-dev (>= 2:1.1.3-1ubuntu3), x11proto-core-dev, xserver-xorg-dev (>= 2:1.5.1-1ubuntu3), pkg-config, quilt, automake, libtool, xutils-dev
Standards-Version: 3.7.3
Vcs-Git: git://git.debian.org/git/pkg-xorg/driver/xserver-xorg-input-synaptics
Vcs-Browser: http://git.debian.org/?p=pkg-xorg/driver/xserver-xorg-input-synaptics.git
commit 18ad9e41b04dda0bfc7b0298082083439e442107
Author: Timo Aaltonen <tjaalton@cc.hut.fi>
Date: Mon Sep 29 10:23:54 2008 +0300
Refresh patches, bump the build-dep on libxi-dev.
diff --git a/debian/changelog b/debian/changelog
index beb6088..9b502b7 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,11 @@
+xfree86-driver-synaptics (0.15.2-0ubuntu4) intrepid; urgency=low
+
+ * Cherry-picked commit 355e845, "Adjust to new property API".
+ * Refresh patches 101 & 102.
+ * Bump the build-dep on libxi-dev.
+
+ -- Timo Aaltonen <tepsipakki@ubuntu.com> Mon, 29 Sep 2008 10:23:16 +0300
+
xfree86-driver-synaptics (0.15.2-0ubuntu3) intrepid; urgency=low
* Also build for lpia; LP: #275158.
diff --git a/debian/control b/debian/control
index 1a4384b..c482867 100644
--- a/debian/control
+++ b/debian/control
@@ -4,7 +4,7 @@ Priority: optional
Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@lists.ubuntu.com>
XSBC-Original-Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
Uploaders: Mattia Dongili <malattia@debian.org>
-Build-Depends: debhelper (>= 4.0.0), libx11-dev, libxext-dev, libxi-dev, x11proto-core-dev, xserver-xorg-dev (>= 2:1.4.99.905), pkg-config, quilt, automake, libtool, xutils-dev
+Build-Depends: debhelper (>= 4.0.0), libx11-dev, libxext-dev, libxi-dev (>= 2:1.1.3-1ubuntu3), x11proto-core-dev, xserver-xorg-dev (>= 2:1.4.99.905), pkg-config, quilt, automake, libtool, xutils-dev
Standards-Version: 3.7.3
Vcs-Git: git://git.debian.org/git/pkg-xorg/driver/xserver-xorg-input-synaptics
Vcs-Browser: http://git.debian.org/?p=pkg-xorg/driver/xserver-xorg-input-synaptics.git
diff --git a/debian/patches/101_no_horizscroll.patch b/debian/patches/101_no_horizscroll.patch
index ce9db96..8ff26af 100644
--- a/debian/patches/101_no_horizscroll.patch
+++ b/debian/patches/101_no_horizscroll.patch
@@ -1,8 +1,8 @@
Index: xserver-xorg-input-synaptics/src/synaptics.c
===================================================================
---- xserver-xorg-input-synaptics.orig/src/synaptics.c 2008-09-09 12:42:53.000000000 +0300
-+++ xserver-xorg-input-synaptics/src/synaptics.c 2008-09-09 12:43:15.000000000 +0300
-@@ -447,7 +447,7 @@
+--- xserver-xorg-input-synaptics.orig/src/synaptics.c 2008-09-29 10:08:18.000000000 +0300
++++ xserver-xorg-input-synaptics/src/synaptics.c 2008-09-29 10:11:06.000000000 +0300
+@@ -451,7 +449,7 @@
pars->scroll_dist_horiz = xf86SetIntOption(opts, "HorizScrollDelta", vertScrollDelta);
pars->scroll_edge_vert = xf86SetBoolOption(opts, "VertEdgeScroll", TRUE);
pars->special_scroll_area_right = xf86SetBoolOption(opts, "SpecialScrollAreaRight", TRUE);
diff --git a/debian/patches/102_dont_check_abi.diff b/debian/patches/102_dont_check_abi.diff
index 6449478..b8a17cc 100644
--- a/debian/patches/102_dont_check_abi.diff
+++ b/debian/patches/102_dont_check_abi.diff
@@ -1,7 +1,7 @@
Index: xserver-xorg-input-synaptics/src/properties.c
===================================================================
---- xserver-xorg-input-synaptics.orig/src/properties.c 2008-09-09 12:46:41.000000000 +0300
-+++ xserver-xorg-input-synaptics/src/properties.c 2008-09-09 12:48:16.000000000 +0300
+--- xserver-xorg-input-synaptics.orig/src/properties.c 2008-09-29 10:07:16.000000000 +0300
++++ xserver-xorg-input-synaptics/src/properties.c 2008-09-29 10:12:48.000000000 +0300
@@ -28,7 +28,6 @@
#endif
@@ -10,7 +10,7 @@ Index: xserver-xorg-input-synaptics/src/properties.c
#include <X11/Xatom.h>
#include <xf86Xinput.h>
-@@ -546,5 +545,4 @@
+@@ -508,5 +507,4 @@
return TRUE;
}
@@ -18,26 +18,26 @@ Index: xserver-xorg-input-synaptics/src/properties.c
Index: xserver-xorg-input-synaptics/src/synaptics.c
===================================================================
---- xserver-xorg-input-synaptics.orig/src/synaptics.c 2008-09-09 12:48:14.000000000 +0300
-+++ xserver-xorg-input-synaptics/src/synaptics.c 2008-09-09 12:48:35.000000000 +0300
-@@ -124,10 +124,8 @@
+--- xserver-xorg-input-synaptics.orig/src/synaptics.c 2008-09-29 10:12:39.000000000 +0300
++++ xserver-xorg-input-synaptics/src/synaptics.c 2008-09-29 10:13:30.000000000 +0300
+@@ -125,10 +125,8 @@
static Bool DeviceClose(DeviceIntPtr);
static Bool QueryHardware(LocalDevicePtr);
-#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 3
void InitDeviceProperties(LocalDevicePtr local);
- Bool SetProperty(DeviceIntPtr dev, Atom property, XIPropertyValuePtr prop);
+ int SetProperty(DeviceIntPtr dev, Atom property, XIPropertyValuePtr prop);
-#endif
InputDriverRec SYNAPTICS = {
1,
-@@ -677,10 +675,8 @@
+@@ -726,10 +724,8 @@
if (!alloc_param_data(local))
return !Success;
-#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 3
InitDeviceProperties(local);
- XIRegisterPropertyHandler(local->dev, SetProperty, NULL);
+ XIRegisterPropertyHandler(local->dev, SetProperty, NULL, NULL);
-#endif
return Success;
commit 93b5d7c71534daa8c35c6028f954adb951fbb84a
Author: Peter Hutterer <peter.hutterer@redhat.com>
Date: Thu Sep 25 16:18:10 2008 +0930
Adjust to new property API.
XIConfigureDeviceProperty doesn't exist anymore.
XIChangeDeviceProperty has two parameters less, returns status code.
Explicitly set all properties as non-deletable.
diff --git a/src/properties.c b/src/properties.c
index 7b74a36..dc10888 100644
--- a/src/properties.c
+++ b/src/properties.c
@@ -103,29 +103,18 @@ InitAtom(DeviceIntPtr dev, char *name, int format, int nvalues, int *values)
atom = MakeAtom(name, strlen(name), TRUE);
XIChangeDeviceProperty(dev, atom, XA_INTEGER, format,
PropModeReplace, nvalues,
- converted, FALSE, FALSE, FALSE);
+ converted, FALSE);
+ XISetDevicePropertyDeletable(dev, atom, FALSE);
return atom;
}
-/**
- * Configure the property if the atom is valid.
- */
-static void
-ConfigureProperty(DeviceIntPtr dev, Atom atom, int nvalues, long* values)
-{
- if (atom)
- XIConfigureDeviceProperty(dev, atom, FALSE, FALSE, FALSE, nvalues, values);
-}
-
void
InitDeviceProperties(LocalDevicePtr local)
{
SynapticsPrivate *priv = (SynapticsPrivate *) local->private;
SynapticsSHM *para = priv->synpara;
- int i;
int values[9]; /* we never have more than 9 values in an atom */
- long valid_values[9];
values[0] = para->left_edge;
values[1] = para->right_edge;
@@ -216,36 +205,9 @@ InitDeviceProperties(LocalDevicePtr local)
prop_grab = InitAtom(local->dev, SYNAPTICS_PROP_GRAB, 8, 1, ¶->grab_event_device);
- /* Configure value ranges as appropriate */
-
- /* boolean properties */
- valid_values[0] = TRUE;
- valid_values[0] = FALSE;
- ConfigureProperty(local->dev, prop_tap_fast, 2, valid_values);
- ConfigureProperty(local->dev, prop_scrolledge, 2, valid_values);
- ConfigureProperty(local->dev, prop_scrolltwofinger, 2, valid_values);
- ConfigureProperty(local->dev, prop_edgemotion_always, 2, valid_values);
- ConfigureProperty(local->dev, prop_buttonscroll, 2, valid_values);
- ConfigureProperty(local->dev, prop_buttonscroll_repeat, 2, valid_values);
- ConfigureProperty(local->dev, prop_guestmouse, 2, valid_values);
- ConfigureProperty(local->dev, prop_lockdrags, 2, valid_values);
- ConfigureProperty(local->dev, prop_circscroll, 2, valid_values);
- ConfigureProperty(local->dev, prop_circpad, 2, valid_values);
- ConfigureProperty(local->dev, prop_palm, 2, valid_values);
- ConfigureProperty(local->dev, prop_grab, 2, valid_values);
- /* end of boolean props */
-
- valid_values[0] = 0;
- valid_values[1] = 1;
- valid_values[2] = 2;
- ConfigureProperty(local->dev, prop_off, 3, valid_values);
-
- for (i = 0; i <= 8; i++)
- valid_values[i] = i;
- ConfigureProperty(local->dev, prop_circscroll_trigger, 8, valid_values);
}
-Bool
+int
SetProperty(DeviceIntPtr dev, Atom property, XIPropertyValuePtr prop)
{
LocalDevicePtr local = (LocalDevicePtr) dev->public.devicePrivate;
@@ -256,11 +218,11 @@ SetProperty(DeviceIntPtr dev, Atom property, XIPropertyValuePtr prop)
{
INT32 *edges;
if (prop->size != 4 || prop->format != 32 || prop->type != XA_INTEGER)
- return FALSE;
+ return BadMatch;
edges = (INT32*)prop->data;
if (edges[0] > edges[1] || edges[2] > edges[3])
- return FALSE;
+ return BadValue;
para->left_edge = edges[0];
para->right_edge = edges[1];
@@ -271,11 +233,11 @@ SetProperty(DeviceIntPtr dev, Atom property, XIPropertyValuePtr prop)
{
INT32 *finger;
if (prop->size != 3 || prop->format != 32 || prop->type != XA_INTEGER)
- return FALSE;
+ return BadMatch;
finger = (INT32*)prop->data;
if (finger[0] > finger[1])
- return FALSE;
+ return BadValue;
para->finger_low = finger[0];
para->finger_high = finger[1];
@@ -284,14 +246,14 @@ SetProperty(DeviceIntPtr dev, Atom property, XIPropertyValuePtr prop)
} else if (property == prop_tap_time)
{
if (prop->size != 1 || prop->format != 32 || prop->type != XA_INTEGER)
- return FALSE;
+ return BadMatch;
para->tap_time = *(INT32*)prop->data;
} else if (property == prop_tap_move)
{
if (prop->size != 1 || prop->format != 32 || prop->type != XA_INTEGER)
- return FALSE;
+ return BadMatch;
para->tap_move = *(INT32*)prop->data;
} else if (property == prop_tap_durations)
@@ -299,7 +261,7 @@ SetProperty(DeviceIntPtr dev, Atom property, XIPropertyValuePtr prop)
INT32 *timeouts;
if (prop->size != 3 || prop->format != 32 || prop->type != XA_INTEGER)
- return FALSE;
+ return BadMatch;
timeouts = (INT32*)prop->data;
@@ -310,27 +272,27 @@ SetProperty(DeviceIntPtr dev, Atom property, XIPropertyValuePtr prop)
} else if (property == prop_tap_fast)
{
if (prop->size != 1 || prop->format != 8 || prop->type != XA_INTEGER)
- return FALSE;
+ return BadMatch;
para->fast_taps = *(BOOL*)prop->data;
} else if (property == prop_middle_timeout)
{
if (prop->size != 1 || prop->format != 32 || prop->type != XA_INTEGER)
- return FALSE;
+ return BadMatch;
para->emulate_mid_button_time = *(INT32*)prop->data;
} else if (property == prop_twofinger_pressure)
{
if (prop->size != 1 || prop->format != 32 || prop->type != XA_INTEGER)
- return FALSE;
+ return BadMatch;
para->emulate_twofinger_z = *(INT32*)prop->data;
} else if (property == prop_scrolldist)
{
INT32 *dist;
if (prop->size != 2 || prop->format != 32 || prop->type != XA_INTEGER)
- return FALSE;
+ return BadMatch;
dist = (INT32*)prop->data;
para->scroll_dist_vert = dist[0];
@@ -339,7 +301,7 @@ SetProperty(DeviceIntPtr dev, Atom property, XIPropertyValuePtr prop)
{
CARD8 *edge;
if (prop->size != 3 || prop->format != 8 || prop->type != XA_INTEGER)
- return FALSE;
+ return BadMatch;
edge = (BOOL*)prop->data;
para->scroll_edge_vert = edge[0];
@@ -350,7 +312,7 @@ SetProperty(DeviceIntPtr dev, Atom property, XIPropertyValuePtr prop)
CARD8 *twofinger;
if (prop->size != 2 || prop->format != 8 || prop->type != XA_INTEGER)
- return FALSE;
+ return BadMatch;
twofinger = (BOOL*)prop->data;
para->scroll_twofinger_vert = twofinger[0];
@@ -363,11 +325,11 @@ SetProperty(DeviceIntPtr dev, Atom property, XIPropertyValuePtr prop)
CARD32 *pressure;
if (prop->size != 2 || prop->format != 32 || prop->type != XA_INTEGER)
- return FALSE;
+ return BadMatch;
pressure = (CARD32*)prop->data;
if (pressure[0] > pressure[1])
- return FALSE;
+ return BadValue;
para->edge_motion_min_z = pressure[0];
para->edge_motion_max_z = pressure[1];
@@ -377,11 +339,11 @@ SetProperty(DeviceIntPtr dev, Atom property, XIPropertyValuePtr prop)
CARD32 *speed;
if (prop->size != 2 || prop->format != 32 || prop->type != XA_INTEGER)
- return FALSE;
+ return BadMatch;
speed = (CARD32*)prop->data;
if (speed[0] > speed[1])
- return FALSE;
+ return BadValue;
para->edge_motion_min_speed = speed[0];
para->edge_motion_max_speed = speed[1];
@@ -389,7 +351,7 @@ SetProperty(DeviceIntPtr dev, Atom property, XIPropertyValuePtr prop)
} else if (property == prop_edgemotion_always)
{
if (prop->size != 1 || prop->format != 8 || prop->type != XA_INTEGER)
- return FALSE;
+ return BadMatch;
para->edge_motion_use_always = *(BOOL*)prop->data;
@@ -398,7 +360,7 @@ SetProperty(DeviceIntPtr dev, Atom property, XIPropertyValuePtr prop)
BOOL *scroll;
if (prop->size != 2 || prop->format != 8 || prop->type != XA_INTEGER)
- return FALSE;
+ return BadMatch;
scroll = (BOOL*)prop->data;
para->updown_button_scrolling = scroll[0];
@@ -409,7 +371,7 @@ SetProperty(DeviceIntPtr dev, Atom property, XIPropertyValuePtr prop)
BOOL *repeat;
if (prop->size != 2 || prop->format != 8 || prop->type != XA_INTEGER)
- return FALSE;
+ return BadMatch;
repeat = (BOOL*)prop->data;
para->updown_button_repeat = repeat[0];
@@ -417,7 +379,7 @@ SetProperty(DeviceIntPtr dev, Atom property, XIPropertyValuePtr prop)
} else if (property == prop_buttonscroll_time)
{
if (prop->size != 1 || prop->format != 32 || prop->type != XA_INTEGER)
- return FALSE;
+ return BadMatch;
para->scroll_button_repeat = *(INT32*)prop->data;
@@ -425,30 +387,30 @@ SetProperty(DeviceIntPtr dev, Atom property, XIPropertyValuePtr prop)
{
CARD8 off;
if (prop->size != 1 || prop->format != 8 || prop->type != XA_INTEGER)
- return FALSE;
+ return BadMatch;
off = *(CARD8*)prop->data;
if (off > 2)
- return FALSE;
+ return BadValue;
para->touchpad_off = off;
} else if (property == prop_guestmouse)
{
if (prop->size != 1 || prop->format != 8 || prop->type != XA_INTEGER)
- return FALSE;
+ return BadMatch;
para->guestmouse_off = *(BOOL*)prop->data;
} else if (property == prop_lockdrags)
{
if (prop->size != 1 || prop->format != 8 || prop->type != XA_INTEGER)
- return FALSE;
+ return BadMatch;
para->locked_drags = *(BOOL*)prop->data;
} else if (property == prop_lockdrags_time)
{
if (prop->size != 1 || prop->format != 32 || prop->type != XA_INTEGER)
- return FALSE;
+ return BadMatch;
para->locked_drag_time = *(INT32*)prop->data;
} else if (property == prop_tapaction)
@@ -457,7 +419,7 @@ SetProperty(DeviceIntPtr dev, Atom property, XIPropertyValuePtr prop)
CARD8 *action;
if (prop->size > MAX_TAP || prop->format != 8 || prop->type != XA_INTEGER)
- return FALSE;
+ return BadMatch;
action = (CARD8*)prop->data;
@@ -469,7 +431,7 @@ SetProperty(DeviceIntPtr dev, Atom property, XIPropertyValuePtr prop)
CARD8 *action;
if (prop->size > MAX_CLICK || prop->format != 8 || prop->type != XA_INTEGER)
- return FALSE;
+ return BadMatch;
action = (CARD8*)prop->data;
@@ -478,7 +440,7 @@ SetProperty(DeviceIntPtr dev, Atom property, XIPropertyValuePtr prop)
} else if (property == prop_circscroll)
{
if (prop->size != 1 || prop->format != 8 || prop->type != XA_INTEGER)
- return FALSE;
+ return BadMatch;
para->circular_scrolling = *(BOOL*)prop->data;
@@ -489,24 +451,24 @@ SetProperty(DeviceIntPtr dev, Atom property, XIPropertyValuePtr prop)
{
int trigger;
if (prop->size != 1 || prop->format != 8 || prop->type != XA_INTEGER)
- return FALSE;
+ return BadMatch;
trigger = *(CARD8*)prop->data;
if (trigger > 8)
- return FALSE;
+ return BadValue;
para->circular_trigger = trigger;
} else if (property == prop_circpad)
{
if (prop->size != 1 || prop->format != 8 || prop->type != XA_INTEGER)
- return FALSE;
+ return BadMatch;
para->circular_pad = *(BOOL*)prop->data;
} else if (property == prop_palm)
{
if (prop->size != 1 || prop->format != 8 || prop->type != XA_INTEGER)
- return FALSE;
+ return BadMatch;
para->palm_detect = *(BOOL*)prop->data;
} else if (property == prop_palm_dim)
@@ -514,7 +476,7 @@ SetProperty(DeviceIntPtr dev, Atom property, XIPropertyValuePtr prop)
INT32 *dim;
if (prop->size != 2 || prop->format != 32 || prop->type != XA_INTEGER)
- return FALSE;
+ return BadMatch;
dim = (INT32*)prop->data;
@@ -527,18 +489,18 @@ SetProperty(DeviceIntPtr dev, Atom property, XIPropertyValuePtr prop)
{
INT32 *press;
if (prop->size != 2 || prop->format != 32 || prop->type != XA_INTEGER)
- return FALSE;
+ return BadMatch;
press = (INT32*)prop->data;
if (press[0] > press[1])
- return FALSE;
+ return BadValue;
para->press_motion_min_z = press[0];
para->press_motion_max_z = press[1];
} else if (property == prop_grab)
{
if (prop->size != 1 || prop->format != 8 || prop->type != XA_INTEGER)
- return FALSE;
+ return BadMatch;
para->grab_event_device = *(BOOL*)prop->data;
}
diff --git a/src/synaptics.c b/src/synaptics.c
index 1f96cc3..25f5047 100644
--- a/src/synaptics.c
+++ b/src/synaptics.c
@@ -127,7 +127,7 @@ static Bool QueryHardware(LocalDevicePtr);
#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 3
void InitDeviceProperties(LocalDevicePtr local);
-Bool SetProperty(DeviceIntPtr dev, Atom property, XIPropertyValuePtr prop);
+int SetProperty(DeviceIntPtr dev, Atom property, XIPropertyValuePtr prop);
#endif
InputDriverRec SYNAPTICS = {
@@ -725,7 +725,7 @@ DeviceInit(DeviceIntPtr dev)
#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 3
InitDeviceProperties(local);
- XIRegisterPropertyHandler(local->dev, SetProperty, NULL);
+ XIRegisterPropertyHandler(local->dev, SetProperty, NULL, NULL);
#endif
return Success;
Reply to: