ChangeLog | 101 ++++ configure.ac | 18 debian/changelog | 24 + debian/control | 6 debian/patches/0001-configure.ac-Fix-udev-libudev-dependency.patch | 31 + debian/patches/0002-default-resolution.patch | 40 + debian/patches/0003-copy-mt-vals.patch | 203 ++++++++++ debian/patches/series | 3 debian/xserver-xorg-input-evdev.manpages | 1 src/evdev.c | 35 + src/evdev.h | 6 11 files changed, 443 insertions(+), 25 deletions(-)
New commits: commit 42a7cd13ca6116a1193d8f65b5a466edc8b49ba9 Author: Chase Douglas <chase.doug...@canonical.com> Date: Tue Jan 10 11:43:39 2012 +0100 releasing version 1:2.6.99.901-1ubuntu1 diff --git a/debian/changelog b/debian/changelog index bf630b8..608bb2a 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,11 +1,11 @@ -xserver-xorg-input-evdev (1:2.6.99.901-1ubuntu1) UNRELEASED; urgency=low +xserver-xorg-input-evdev (1:2.6.99.901-1ubuntu1) precise; urgency=low * Add patch to set default resolution to 0 - 0002-default-resolution.patch * Fix touch valuators - 0003-copy-mt-vals.patch - -- Chase Douglas <chase.doug...@ubuntu.com> Tue, 10 Jan 2012 11:33:24 +0100 + -- Chase Douglas <chase.doug...@ubuntu.com> Tue, 10 Jan 2012 11:43:10 +0100 xserver-xorg-input-evdev (1:2.6.99.901-1) experimental; urgency=low commit 08a1619ee93f1106ce78fda033c3111c90dd0a71 Author: Chase Douglas <chase.doug...@canonical.com> Date: Tue Jan 10 11:40:17 2012 +0100 Fix touch valuators * Fix touch valuators - 0003-copy-mt-vals.patch diff --git a/debian/changelog b/debian/changelog index d6ba4e8..bf630b8 100644 --- a/debian/changelog +++ b/debian/changelog @@ -2,8 +2,10 @@ xserver-xorg-input-evdev (1:2.6.99.901-1ubuntu1) UNRELEASED; urgency=low * Add patch to set default resolution to 0 - 0002-default-resolution.patch + * Fix touch valuators + - 0003-copy-mt-vals.patch - -- Chase Douglas <chase.doug...@ubuntu.com> Tue, 10 Jan 2012 11:29:29 +0100 + -- Chase Douglas <chase.doug...@ubuntu.com> Tue, 10 Jan 2012 11:33:24 +0100 xserver-xorg-input-evdev (1:2.6.99.901-1) experimental; urgency=low diff --git a/debian/patches/0003-copy-mt-vals.patch b/debian/patches/0003-copy-mt-vals.patch new file mode 100644 index 0000000..e28a825 --- /dev/null +++ b/debian/patches/0003-copy-mt-vals.patch @@ -0,0 +1,203 @@ +From 93051a1a76c16f39193b3a4be72f5696b339e653 Mon Sep 17 00:00:00 2001 +From: Chase Douglas <chase.doug...@canonical.com> +Date: Tue, 3 Jan 2012 17:08:05 -0800 +Subject: [PATCH v2 xf86-input-evdev] Copy last valuator values into new touch valuator masks + +Evdev is a 100% stateful protocol. The following represents three +touches. Two touches begin and end at the same time at (500, 500) and +(1000, 1000). The third touch begins after the first two end, and is at +(500, 500). + +ABS_MT_SLOT 0 /* Set touch slot */ +ABS_MT_TRACKING_ID 0 /* New touch with ID 0 in slot 0 */ +ABS_MT_POSITION_X 500 /* Initial X position */ +ABS_MT_POSITION_Y 500 /* Initial Y position */ +ABS_MT_SLOT 1 /* Set touch slot */ +ABS_MT_TRACKING_ID 1 /* New touch with ID 1 in slot 1 */ +ABS_MT_POSITION_X 1000 /* Initial X position */ +ABS_MT_POSITION_Y 1000 /* Initial Y position */ +SYNC /* End of frame */ +ABS_MT_SLOT 0 /* Go back to slot 0 */ +ABS_MT_TRACKING_ID -1 /* Touch in slot 0 ended */ +ABS_MT_SLOT 1 /* Go to slot 1 */ +ABS_MT_TRACKING_ID -1 /* Touch in slot 1 ended */ +SYNC /* End of frame */ +ABS_MT_SLOT 0 /* Go back to slot 0 */ +ABS_MT_TRACKING_ID 2 /* New touch in slot 0 with ID 2 */ +SYNC /* End of frame */ +ABS_MT_TRACKING_ID -1 /* Touch in last slot (0) ended */ +SYNC /* End of frame */ + +Note that touch 2 has the same X and Y position as touch 0. This is +implied because no new value was emitted for slot 0. In fact, Linux will +not emit an event in the same slot with the same event type and code +unless the value has changed. Thus, we can only assume that all the MT +valuators have the same values as they were when they were last sent for +the given slot. + +This change adds an array of valuator mask to hold all the last valuator +values that came from evdev for each slot. When a new touch begins, all +the last values are copied into it. + +This patch assumes initial axis values of 0 in each slot. Linux and +mtdev do not provide a facility to query the current values of axes in +each slot yet. This may cause spurious incorrect touch valuator values +at the beginning of an X session, but there's nothing we can do about it +right now. + +Signed-off-by: Chase Douglas <chase.doug...@canonical.com> +--- +Changes since v1: +* Hold the last values *per-slot* instead of globally + + src/evdev.c | 80 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++--- + src/evdev.h | 1 + + 2 files changed, 77 insertions(+), 4 deletions(-) + +diff --git a/src/evdev.c b/src/evdev.c +index 82cdb00..ec6650e 100644 +--- a/src/evdev.c ++++ b/src/evdev.c +@@ -746,6 +746,24 @@ EvdevProcessTouch(InputInfoPtr pInfo) + valuator_mask_zero(pEvdev->mt_mask); + } + ++static int ++num_slots(EvdevPtr pEvdev) ++{ ++ int value = pEvdev->absinfo[ABS_MT_SLOT].maximum - ++ pEvdev->absinfo[ABS_MT_SLOT].minimum + 1; ++ ++ /* If we don't know how many slots there are, assume at least 10 */ ++ return value > 1 ? value : 10; ++} ++ ++static int ++last_mt_vals_slot(EvdevPtr pEvdev) ++{ ++ int value = pEvdev->cur_slot - pEvdev->absinfo[ABS_MT_SLOT].minimum; ++ ++ return value < num_slots(pEvdev) ? value : -1; ++} ++ + static void + EvdevProcessTouchEvent(InputInfoPtr pInfo, struct input_event *ev) + { +@@ -757,16 +775,29 @@ EvdevProcessTouchEvent(InputInfoPtr pInfo, struct input_event *ev) + pEvdev->cur_slot = ev->value; + } else + { ++ int slot_index = last_mt_vals_slot(pEvdev); ++ + if (pEvdev->slot_state == SLOTSTATE_EMPTY) + pEvdev->slot_state = SLOTSTATE_UPDATE; + if (ev->code == ABS_MT_TRACKING_ID) { +- if (ev->value >= 0) +- pEvdev->slot_state = SLOTSTATE_OPEN; +- else +- pEvdev->slot_state = SLOTSTATE_CLOSE; ++ if (ev->value >= 0) { ++ pEvdev->slot_state = SLOTSTATE_OPEN; ++ ++ if (slot_index >= 0) ++ valuator_mask_copy(pEvdev->mt_mask, ++ pEvdev->last_mt_vals[slot_index]); ++ else ++ xf86IDrvMsg(pInfo, X_WARNING, ++ "Attempted to copy values from out-of-range " ++ "slot, touch events may be incorrect.\n"); ++ } else ++ pEvdev->slot_state = SLOTSTATE_CLOSE; + } else { + map = pEvdev->axis_map[ev->code]; + valuator_mask_set(pEvdev->mt_mask, map, ev->value); ++ if (slot_index >= 0) ++ valuator_mask_set(pEvdev->last_mt_vals[slot_index], map, ++ ev->value); + } + } + } +@@ -1256,6 +1287,24 @@ EvdevAddAbsValuatorClass(DeviceIntPtr device) + goto out; + } + ++ pEvdev->last_mt_vals = calloc(num_slots(pEvdev), sizeof(ValuatorMask *)); ++ if (!pEvdev->last_mt_vals) { ++ xf86Msg(X_ERROR, ++ "%s: failed to allocate MT last values mask array.\n", ++ device->name); ++ goto out; ++ } ++ ++ for (i = 0; i < num_slots(pEvdev); i++) { ++ pEvdev->last_mt_vals[i] = valuator_mask_new(num_mt_axes_total); ++ if (!pEvdev->last_mt_vals[i]) { ++ xf86Msg(X_ERROR, ++ "%s: failed to allocate MT last values mask.\n", ++ device->name); ++ goto out; ++ } ++ } ++ + for (i = 0; i < EVDEV_MAXQUEUE; i++) { + pEvdev->queue[i].touchMask = + valuator_mask_new(num_mt_axes_total); +@@ -1318,6 +1367,17 @@ EvdevAddAbsValuatorClass(DeviceIntPtr device) + device->name); + goto out; + } ++ ++ for (i = 0; i < num_slots(pEvdev); i++) { ++ for (axis = ABS_MT_TOUCH_MAJOR; axis < ABS_MAX; axis++) { ++ if (pEvdev->axis_map[axis] >= 0) { ++ /* XXX: read initial values from mtdev when it adds support ++ * for doing so. */ ++ valuator_mask_set(pEvdev->last_mt_vals[i], ++ pEvdev->axis_map[axis], 0); ++ } ++ } ++ } + } + #endif + +@@ -1428,6 +1488,12 @@ out: + valuator_mask_free(&pEvdev->prox); + #ifdef MULTITOUCH + valuator_mask_free(&pEvdev->mt_mask); ++ if (pEvdev->last_mt_vals) { ++ for (i = 0; i < num_slots(pEvdev); i++) ++ valuator_mask_free(&pEvdev->last_mt_vals[i]); ++ free(pEvdev->last_mt_vals); ++ pEvdev->last_mt_vals = NULL; ++ } + for (i = 0; i < EVDEV_MAXQUEUE; i++) + valuator_mask_free(&pEvdev->queue[i].touchMask); + #endif +@@ -1808,6 +1874,12 @@ EvdevProc(DeviceIntPtr device, int what) + valuator_mask_free(&pEvdev->prox); + #ifdef MULTITOUCH + valuator_mask_free(&pEvdev->mt_mask); ++ if (pEvdev->last_mt_vals) { ++ for (i = 0; i < num_slots(pEvdev); i++) ++ valuator_mask_free(&pEvdev->last_mt_vals[i]); ++ free(pEvdev->last_mt_vals); ++ pEvdev->last_mt_vals = NULL; ++ } + for (i = 0; i < EVDEV_MAXQUEUE; i++) + valuator_mask_free(&pEvdev->queue[i].touchMask); + if (pEvdev->mtdev) +diff --git a/src/evdev.h b/src/evdev.h +index 1713b89..309b215 100644 +--- a/src/evdev.h ++++ b/src/evdev.h +@@ -158,6 +158,7 @@ typedef struct { + ValuatorMask *old_vals; /* old values for calculating relative motion */ + ValuatorMask *prox; /* last values set while not in proximity */ + ValuatorMask *mt_mask; ++ ValuatorMask **last_mt_vals; + int cur_slot; + enum SlotState slot_state; + #ifdef MULTITOUCH +-- +1.7.7.3 + diff --git a/debian/patches/series b/debian/patches/series index 397660d..ce65e8a 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,2 +1,3 @@ 0001-configure.ac-Fix-udev-libudev-dependency.patch 0002-default-resolution.patch +0003-copy-mt-vals.patch commit 9da178d22a396de92cd1297d66084ea7e2432230 Author: Chase Douglas <chase.doug...@canonical.com> Date: Tue Jan 10 11:30:27 2012 +0100 Add patch to set default resolution to 0 * Add patch to set default resolution to 0 - 0002-default-resolution.patch diff --git a/debian/changelog b/debian/changelog index 0519494..d6ba4e8 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,10 @@ +xserver-xorg-input-evdev (1:2.6.99.901-1ubuntu1) UNRELEASED; urgency=low + + * Add patch to set default resolution to 0 + - 0002-default-resolution.patch + + -- Chase Douglas <chase.doug...@ubuntu.com> Tue, 10 Jan 2012 11:29:29 +0100 + xserver-xorg-input-evdev (1:2.6.99.901-1) experimental; urgency=low [ Timo Aaltonen ] diff --git a/debian/patches/0002-default-resolution.patch b/debian/patches/0002-default-resolution.patch new file mode 100644 index 0000000..7ebe0ac --- /dev/null +++ b/debian/patches/0002-default-resolution.patch @@ -0,0 +1,40 @@ +From 8c55e94a6ac91fa856d37206c8a7eda1adcc6b9d Mon Sep 17 00:00:00 2001 +From: Chase Douglas <chase.doug...@canonical.com> +Date: Tue, 03 Jan 2012 23:31:43 +0000 +Subject: Set the default resolution to 0 + +If we don't know the resolution, set it to 0. This is invalid, and tells +the X client that we don't know the resolution, rather than reporting an +incorrect value. + +This value was originally from commit +6271494faa4c45f4fa10509f72e0515f2cef36c6, which is the initial commit +from Adam Jackson adding absolute axis support. + +Signed-off-by: Chase Douglas <chase.doug...@canonical.com> +Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> +--- +diff --git a/src/evdev.c b/src/evdev.c +index 9f3a22a..82cdb00 100644 +--- a/src/evdev.c ++++ b/src/evdev.c +@@ -1323,7 +1323,7 @@ EvdevAddAbsValuatorClass(DeviceIntPtr device) + + for (axis = ABS_X; axis < ABS_MT_SLOT; axis++) { + int axnum = pEvdev->axis_map[axis]; +- int resolution = 10000; ++ int resolution = 0; + + if (axnum == -1) + continue; +@@ -1345,7 +1345,7 @@ EvdevAddAbsValuatorClass(DeviceIntPtr device) + #ifdef MULTITOUCH + for (axis = ABS_MT_TOUCH_MAJOR; axis <= ABS_MAX; axis++) { + int axnum = pEvdev->axis_map[axis]; +- int resolution = 10000; ++ int resolution = 0; + int j; + BOOL skip = FALSE; + +-- +cgit v0.9.0.2-2-gbebe diff --git a/debian/patches/series b/debian/patches/series index e6f3ebc..397660d 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1 +1,2 @@ 0001-configure.ac-Fix-udev-libudev-dependency.patch +0002-default-resolution.patch commit a619cd71e35e33b7aeb3edd01b4c3301ea37bb21 Author: Cyril Brulebois <k...@debian.org> Date: Sat Dec 31 19:55:44 2011 +0100 Upload to experimental. diff --git a/debian/changelog b/debian/changelog index f6b830a..0a85430 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,4 +1,4 @@ -xserver-xorg-input-evdev (1:2.6.99.901-1) UNRELEASED; urgency=low +xserver-xorg-input-evdev (1:2.6.99.901-1) experimental; urgency=low [ Timo Aaltonen ] * Remove obsolete .manpages. @@ -11,7 +11,7 @@ xserver-xorg-input-evdev (1:2.6.99.901-1) UNRELEASED; urgency=low * Add patch to fix udev/libudev detection: - 0001-configure.ac-Fix-udev-libudev-dependency.patch - -- Cyril Brulebois <k...@debian.org> Sat, 31 Dec 2011 18:51:03 +0100 + -- Cyril Brulebois <k...@debian.org> Sat, 31 Dec 2011 19:55:39 +0100 xserver-xorg-input-evdev (1:2.6.0-2) unstable; urgency=low commit 11336a145e0bb797af0a81c56925678b79e35115 Author: Cyril Brulebois <k...@debian.org> Date: Sat Dec 31 19:55:33 2011 +0100 Add patch to fix udev/libudev detection: 0001-configure.ac-Fix-udev-libudev-dependency.patch diff --git a/debian/changelog b/debian/changelog index 7001934..f6b830a 100644 --- a/debian/changelog +++ b/debian/changelog @@ -8,6 +8,8 @@ xserver-xorg-input-evdev (1:2.6.99.901-1) UNRELEASED; urgency=low * Update build dependencies: - Add libudev-dev and libmtdev-dev. - Bump xserver-xorg-dev and x11proto-input-dev. + * Add patch to fix udev/libudev detection: + - 0001-configure.ac-Fix-udev-libudev-dependency.patch -- Cyril Brulebois <k...@debian.org> Sat, 31 Dec 2011 18:51:03 +0100 diff --git a/debian/patches/0001-configure.ac-Fix-udev-libudev-dependency.patch b/debian/patches/0001-configure.ac-Fix-udev-libudev-dependency.patch new file mode 100644 index 0000000..b3fb246 --- /dev/null +++ b/debian/patches/0001-configure.ac-Fix-udev-libudev-dependency.patch @@ -0,0 +1,31 @@ +From 6f639c450c513c44b6eb7ddfd31e207ca83bcd39 Mon Sep 17 00:00:00 2001 +From: Cyril Brulebois <k...@debian.org> +Date: Sat, 31 Dec 2011 19:35:17 +0100 +Subject: [PATCH:xf86-input-evdev 1/2] configure.ac: Fix udev/libudev + dependency. + +In 683a55e504f4fc2d1c847c54986439a0c61b2f20, a dependency on libudev was +added, but documented in configure.ac as a dependency on udev (which +also happens to ship a pkg-config file). + +Signed-off-by: Cyril Brulebois <k...@debian.org> +--- + configure.ac | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 57690c4..47f70b4 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -46,7 +46,7 @@ XORG_DEFAULT_OPTIONS + + # Obtain compiler/linker options from server and required extensions + PKG_CHECK_MODULES(XORG, [xorg-server >= 1.10] xproto inputproto) +-PKG_CHECK_MODULES(UDEV, udev) ++PKG_CHECK_MODULES(UDEV, libudev) + + PKG_CHECK_MODULES(XI22, [inputproto >= 2.1.99.3] [xorg-server >= 1.11.99.901], HAVE_XI22="yes", HAVE_XI22="no") + +-- +1.7.7.3 + diff --git a/debian/patches/series b/debian/patches/series index e69de29..e6f3ebc 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -0,0 +1 @@ +0001-configure.ac-Fix-udev-libudev-dependency.patch commit 75763f974b5e53b600f38770267e052bfb6fdb10 Author: Cyril Brulebois <k...@debian.org> Date: Sat Dec 31 19:53:12 2011 +0100 Mention multitouch support. diff --git a/debian/changelog b/debian/changelog index 2f4be85..7001934 100644 --- a/debian/changelog +++ b/debian/changelog @@ -4,7 +4,7 @@ xserver-xorg-input-evdev (1:2.6.99.901-1) UNRELEASED; urgency=low * Remove obsolete .manpages. [ Cyril Brulebois ] - * New upstream release candidate. + * New upstream release candidate, with multitouch support. * Update build dependencies: - Add libudev-dev and libmtdev-dev. - Bump xserver-xorg-dev and x11proto-input-dev. commit 693cd9272ff0f822abab081be6aff5b1a05ef78e Author: Cyril Brulebois <k...@debian.org> Date: Sat Dec 31 19:20:26 2011 +0100 Update build dependencies. diff --git a/debian/changelog b/debian/changelog index 3c870fe..2f4be85 100644 --- a/debian/changelog +++ b/debian/changelog @@ -5,6 +5,9 @@ xserver-xorg-input-evdev (1:2.6.99.901-1) UNRELEASED; urgency=low [ Cyril Brulebois ] * New upstream release candidate. + * Update build dependencies: + - Add libudev-dev and libmtdev-dev. + - Bump xserver-xorg-dev and x11proto-input-dev. -- Cyril Brulebois <k...@debian.org> Sat, 31 Dec 2011 18:51:03 +0100 diff --git a/debian/control b/debian/control index f45858a..7989b8b 100644 --- a/debian/control +++ b/debian/control @@ -8,13 +8,15 @@ Build-Depends: dh-autoreconf, pkg-config, quilt, - xserver-xorg-dev (>= 2:1.9.4), + xserver-xorg-dev (>= 2:1.11.99.901), x11proto-core-dev, x11proto-randr-dev, - x11proto-input-dev, + x11proto-input-dev (>= 2.1.99.3), x11proto-kb-dev, libxkbfile-dev, xutils-dev (>= 1:7.5+4), + libudev-dev, + libmtdev-dev, Standards-Version: 3.9.1 Vcs-Git: git://git.debian.org/git/pkg-xorg/driver/xserver-xorg-input-evdev Vcs-Browser: http://git.debian.org/?p=pkg-xorg/driver/xserver-xorg-input-evdev.git commit a6ebe4d2d7655ab5ebdc055466e512ec8f541e04 Author: Cyril Brulebois <k...@debian.org> Date: Sat Dec 31 18:51:26 2011 +0100 Bump changelogs. diff --git a/ChangeLog b/ChangeLog index 3c729ea..94ab5d0 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,763 @@ +commit 4b76d80e934f5503c712289ce73d4e10cc79bba6 +Author: Cyril Brulebois <k...@debian.org> +Date: Sat Dec 31 18:38:30 2011 +0100 + + evdev 2.6.99.901 + + Signed-off-by: Cyril Brulebois <k...@debian.org> + +commit 6dd6f2d3c6b2fee5f78b01618643c7f3ed0819c3 +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Thu Dec 29 10:37:38 2011 +1000 + + Require xserver 1.12 RC1 + + Remove the ABI check hack, just check for the server version directly now + that we have one that definitely has the multitouch APIs. + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + +commit 0c7c087f77132657dd8ee342963bb1b51d659571 +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Thu Dec 29 10:19:48 2011 +1000 + + Test for mtdev before assuming multitouch + + If the XI2.2 headers are present but mtdev isn't, build without MULTITOUCH + defined. + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + +commit ba9377c6d9e6d0d2813e471b516bb36902dae2ce +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Sat Dec 24 12:19:40 2011 +1000 + + Remove need for --enable-multitouch + + If we spot inputproto 2.1.99.3, we assume we have a capable X server. This + should really be a server version check, but the server version hasn't been + bumped yet. + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + +commit 7f7606fc461dca1f087a756c85e22f2cc773d008 +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Sat Dec 24 12:31:34 2011 +1000 + + Include config.h from evdev.h + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + +commit 0ba58f483e564bd815bae36f6272029693c1fd5c +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Sat Dec 24 12:18:16 2011 +1000 + + Always include mt_mask in the evdev struct + + Even if MT support isn't available, include it in the build. The checks in + the code check whether mt_mask is non-NULL but they would all need ifdef + escaping otherwise. + + Leave the mtdev part inside the ifdef however, so that we don't need the + mtdev header if we don't build with multitouch. + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + +commit 5fb48757477b2effd69c8fe8722ad95b21dbf7f5 +Merge: 7909975 e99ab23 +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Fri Dec 23 08:16:54 2011 +1000 + + Merge branch 'multitouch' + +commit e99ab2314f712df8dd705b16008755f8b3095707 +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Tue Dec 20 15:08:06 2011 +1000 + + Don't count legacy and MT axes twice + + The kernel exports both ABS_X and ABS_MT_POSITION_X (and a couple others) + for a multi-touch capable device. For such devices, only count the axis once + since we submit ABS_MT_POSITION_X through ABS_X. + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + +commit 191660189a01b9c96bb4c0fa1a2e5008ae666238 +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Tue Dec 20 14:14:16 2011 +1000 + + Add is_blacklisted_axis() helper + + The kernel exports a bunch of information as axis that shouldn't be an axis + and we don't treat it as axis in the server. Add this helper instead of + checking for the axis codes manually. + + No function change. + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + +commit a1c3f8efbbff7f93e216ccdb32bd176a8ba33b09 +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Tue Dec 20 13:32:06 2011 +1000 + + Drop now-unnecessary XI 2.1 and XI 2.2 error suppression defines + + Gone since inputproto 2.1.99.3 + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + +commit f3c628acc4f7399325756590cdc72e769341243c +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Tue Dec 20 10:56:22 2011 +1000 + + Map ABS_MT_POSITION_X/Y into ABS_X/Y + + MT axes are the same as traditional axes, so one into the other so we get + x/y coordinates regardless wich axes it comes from. + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + +commit 7909975b0b965fbf0935bf012987a5368ea0e67a +Author: Paulo Zanoni <paulo.r.zan...@intel.com> +Date: Thu Dec 15 12:26:37 2011 -0200 + + Fix relative events with swapped axes + + After we swap the axes, we only call valuator_mask_set for axes that are + not zero, so we need to unset the axes that became zero when swapped. + + Signed-off-by: Paulo Zanoni <paulo.r.zan...@intel.com> + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + +commit 8d6dfd13b0c4177305555294218e366a6cddc83f +Author: Paulo Zanoni <paulo.r.zan...@intel.com> +Date: Wed Dec 14 15:23:36 2011 -0200 + + Fix absolute events with swapped axes + + We were correctly swapping the valuator values, but we were not + calling valuator_mask_unset() when needed, so the cursor kept jumping + to the edges. + + This patch does the swapping before the main "for", so we don't need to + store unswapped_{x,y} and unswapped_isset_{x,y} even when we don't need + to swap. + + Signed-off-by: Paulo Zanoni <paulo.r.zan...@intel.com> + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + +commit fed454192ddc4ad94226040c657deb6abea3df88 +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Thu Dec 15 08:55:32 2011 +1000 + + Use xf86InitValuatorAxisStruct, the touch-specific version was dropped + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + +commit cf93a21df1dd66118d3a1f5a0769d48f317de749 +Author: Chase Douglas <chase.doug...@canonical.com> +Date: Tue Nov 29 18:02:58 2011 -0800 + + Don't send pointer events for multitouch touchscreen devices + + Pointer events will be emulated by the server. + + Signed-off-by: Chase Douglas <chase.doug...@canonical.com> + +commit fac1a41c75a7c4bfabff34dc8ed1dff2587c6011 +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Fri Nov 11 15:57:26 2011 +1000 + + Add the required defines to compile against the inputproto + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + +commit 3175a2a96d448a0b2584a58ab3d05fbebb11fab1 +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Wed Nov 2 09:53:34 2011 +1000 + + Print to the log if we find multitouch axes. + + No real effect on the code, but it helps to have that line in the log when + searching for driver issues. + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + +commit 5e9b027807cc205dc9c4efbb8360ac4b20317682 +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Mon Oct 31 08:58:18 2011 +1000 + + Replace 0/1 button values with enums + + BUTTON_PRESS is much harder to confuse with a button number than a simple 1. + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + +commit 2ce305129ca94394096f4d697d51eb120de2940b +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Wed Oct 26 13:21:18 2011 +1000 + + Skip event posting for empty slots. + + ABS_MT_SLOT comes before any other events. The following order of events + is common for protocol B devices (and mtdev): + + ... + EV_SYN + ABS_MT_SLOT → posting here means we miss on the position information + ABS_MT_POSITION_X + ABS_MT_POSITION_Y + ABS_MT_SLOT + ABS_MT_POSITION_X + ABS_MT_POSITION_Y + EV_SYN + + Store the stot state as SLOT_EMPTY after posting an event (i.e. EV_SYN and + ABS_MT_SLOT) and then don't post until the next slot/syn event. + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + +commit 9411749f76c31a8054ded62a6fb767c8135b4d4e +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Wed Oct 26 13:09:30 2011 +1000 + + Replace open_slot/close_slot with a SlotState enum + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + +commit 239e972be1f2c6a984dd6c5aecce710d0b866257 +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Wed Oct 26 11:14:04 2011 +1000 + + Simplify a condition, only the event type differs here + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + +commit 6127923fe0d50cb9b9ac4ae0a3876ba6f180137c +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Wed Oct 26 10:51:16 2011 +1000 + + When resetting the queue, don't reset the touchMask + + Otherwise we segfault after the first SYN event + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + +commit fc4f98153c2608389d87e37316036a31fb1021e7 +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Wed Oct 26 09:59:34 2011 +1000 + + MT axes are counted separately, make sure they're initialized too. + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + +commit fabee66bcc7260ec50c3091be3f9b503eea65e61 +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Tue Oct 25 15:06:38 2011 +1000 + + 0 is the value for "unknown/unlimited" number of touches + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + +commit 91d90a79593369ba1079d06a75f09ceaa9143768 +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Tue Oct 25 14:55:47 2011 +1000 + + Use mtdev API to allocate/free mtdev structs + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + +commit c1b89bda12c1897120bace941625cfa27e547458 +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Tue Oct 25 14:52:26 2011 +1000 + + Remove duplicate line + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + +commit 907b7cad3fd892ca3349cd18e9ccdc5659027b40 +Author: Chase Douglas <chase.doug...@canonical.com> +Date: Thu Dec 2 18:01:41 2010 -0500 + + Ensure touchpad events are always processed with MT + + Without this change, an MT touchpad in relative mode could end a touch + while not resetting the oldMask used to calculate relative values. This + fix allows a Magic Trackpad to behave as a relative mode device again. + + Signed-off-by: Chase Douglas <chase.doug...@canonical.com> + +commit c9a2b4e9ce9b15e57241184df78c72ec8f6a4705 +Author: Chase Douglas <chase.doug...@canonical.com> +Date: Mon Nov 8 14:35:02 2010 -0500 + + Use MTDev for multitouch devices + + MTDev translates all multitouch devices to the slotted evdev protocol. + This provides a clean and uniform interface and reduces message handling + inside the input module and X. + + Signed-off-by: Chase Douglas <chase.doug...@canonical.com> + +commit e18abd0049421a98e61c15c2d56cfe2821cf4739 +Author: Chase Douglas <chase.doug...@canonical.com> +Date: Mon Nov 8 11:08:01 2010 -0500 + + Add experimental XI 2.1 multitouch support + + This multitouch addition only supports slotted MT evdev protocol + devices. Support must be enabled at configure time using + --enable-multitouch. + + Signed-off-by: Chase Douglas <chase.doug...@canonical.com> + + Amendments: XI_TouchMotion -> XI_TouchUpdate, rename mtMask to mt_mask + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + +commit 683a55e504f4fc2d1c847c54986439a0c61b2f20 +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Tue Oct 25 09:59:50 2011 +1000 + + Use a new "Virtual Device" boolean property to mark virtual devices + + Use udev to check for the device's sysfs path, if it contains LNXSYSTM it's + a kernel-emulated device. This property can then be used to determine if + there are any real devices connected, allowing the desktop environment to + e.g. turn off the touchpad whenever there's a mouse attached. + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + +commit a9cdb6590cdf72917cdfeb17e2fcc6a110b2c7d1 +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Fri Nov 11 07:31:02 2011 +1000 + + Move misplaced #endif caused by smooth-scrolling merge + + Bad conflict resolution in xf86-input-evdev-2.6.0-30-g745fca0 + + Reported-by: Sebastian Glita <gls...@yahoo.com> + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + +commit dd000dd4fa118529809632e610a0a439d7467096 +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Wed Nov 9 16:04:06 2011 +1000 + + Bump to 2.6.99 + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + +commit 745fca03a20117583bc18c7134583311ff52c29c +Merge: eede8cc b450efd +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Wed Nov 9 16:01:48 2011 +1000 + + Merge branch 'smooth-scrolling' + + Conflicts: + src/evdev.c + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + +commit b450efdf95999cad08de23ce069f04a66bdae24b +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Fri Aug 19 11:15:09 2011 +1000 + + Support smooth scrolling on REL_WHEEL, REL_HWHEEL and REL_DIAL + + Automatic smooth scrolling setup for these axes, with REL_WHEEL and REL_DIAL + both mapping into vscrolling. REL_WHEEL is the preferred axis. + + Mouse wheel emulation is not yet updated for smooth scrolling. + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + Reviewed-by: Daniel Stone <dan...@fooishbar.org> + +commit eede8ccffc1a831f4de89403edc8dffd52494e8b +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Tue Oct 25 15:43:38 2011 +1000 + + Don't crop long value from EvdevBitIsSet. + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + Reviewed-by: Chase Douglas <chase.doug...@canonical.com> + Reviewed-by: Jeremy Huddleston <jerem...@apple.com> + +commit 2aba790ed3acc3ece5e56dac088e0a0a4a04b45d +Author: Jools Wills <jo...@oxfordinspire.co.uk> +Date: Sun Oct 30 23:19:21 2011 +0000 + + emuThird: Use xf86SetIntOption, not xf86SetBoolOption for integer values + + Signed-off-by: Jools Wills <jo...@oxfordinspire.co.uk> + Reviewed-by: Peter Hutterer <peter.hutte...@who-t.net> + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + +commit 49693892ce35e95674fbb3d2a067c8fa0227da87 +Author: Max Schwarz <m...@x-quadraht.de> +Date: Mon Oct 17 21:01:22 2011 +0200 + + type-safe inline functions for bitmask manipulation + + We can't use BitIsSet/SetBit from the server (inputstr.h) since they + operate on byte arrays. EvdevSetBit is added in preparation for the + "smooth-scrolling on wheel emulation" patch. + + Signed-off-by: Max Schwarz <m...@x-quadraht.de> + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + +commit 070f30e08956e7fa8b7f9ca6b94fee3ef39caa1e +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Mon Aug 15 11:34:12 2011 +1000 + + Exit axis labelling if axes are neither rel nor abs + + No actual effect since labels_len is always 0 anyway but let's make the + return more explicit. + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + +commit ffe35b6c2566fc2a3f418185a61a12c7f377affd +Author: Terry Lambert <tlamb...@chromium.org> +Date: Fri Jul 15 17:23:20 2011 -0700 + + xf86-input-evdev: Return proper default for unknown values in pInfo->device_control. + + Signed-off-by: Terry Lambert <tlamb...@chromium.org> + Reviewed-by: Stephane Marchesin <marc...@chromium.org> + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + +commit 5069e053354ad6adfcbb08c962bff93b607dec3d +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Fri May 27 16:20:03 2011 +1000 + + Remove unused misc_label and val + + evdev.c: In function 'EvdevInitAxesLabels': + evdev.c:2192:11: warning: variable 'misc_label' set but not used + [-Wunused-but-set-variable] + obsolete with 880ad1e19afd83ac115948b67d4049e16cb12df0 + + emuWheel.c: In function 'EvdevWheelEmuPreInit': + emuWheel.c:252:10: warning: variable 'val' set but not used + [-Wunused-but-set-variable] + obsolete with b0737bdbd1f6e601eb4984b6f4cb49279190984c + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + Reviewed-by: Daniel Stone <dan...@fooishbar.org> + +commit 0b9fad23a3d464ac064521d0e29f036b0ffdc9b8 +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Fri May 27 16:17:12 2011 +1000 + + Print abs axes ranges on verbosity 6. + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + Reviewed-by: Daniel Stone <dan...@fooishbar.org> + +commit b79776cf8caa2b8db2984177661698da862befa6 +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Wed Jun 15 10:22:39 2011 +1000 + + Require server 1.10 + + We require ABI 12.2 in the driver, enforce it through pkg-config. + Technically ABI 12.2 is first available in 1.9.99.902 but 1.10 looks so much + nicer. + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + Reviewed-by: Daniel Stone <dan...@fooishbar.org> + +commit a52cd1cab2ae84442758de5155c5ec1417a7d16d +Author: Daniel Kurtz <djku...@google.com> +Date: Tue Jun 14 18:09:00 2011 +0800 + + Set prop_product_id undeletable + + prop_invert was accidentally being set undeletable twice. -- To UNSUBSCRIBE, email to debian-x-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/e1rkzhk-0000m6...@vasks.debian.org