debian/patches/500_xi2.1.patch | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-)
New commits: commit f32269064b38bc221848b83f1556f32f3750791c Author: Chase Douglas <chase.doug...@canonical.com> Date: Tue Feb 22 17:51:16 2011 -0500 Fix history tracking for unowned non-pointer-emulated touches This fixes two issues: 1. TouchUpdate were not being stored 2. TouchEnd events were being mutated to TouchUpdate events diff --git a/debian/patches/500_xi2.1.patch b/debian/patches/500_xi2.1.patch index 74811d9..3eb7f98 100644 --- a/debian/patches/500_xi2.1.patch +++ b/debian/patches/500_xi2.1.patch @@ -182,7 +182,7 @@ /* Add state and motionMask to the filter for this event */ mask = DevicePointerMotionMask | b->state | b->motionMask; -@@ -926,6 +981,936 @@ ProcessRawEvent(RawDeviceEvent *ev, Devi +@@ -926,6 +981,934 @@ ProcessRawEvent(RawDeviceEvent *ev, Devi } /** @@ -499,11 +499,9 @@ + overrunning and erasing the begin event. */ + if (ev->any.type == ET_TouchBegin) + memcpy(ti->begin_event, ev, sizeof(InternalEvent)); -+ else if (ev->any.type == ET_TouchMotionUnowned && -+ !(ev->device_event.flags & XITouchPendingEnd)) ++ else + { + memcpy(ti->next_history, ev, sizeof(InternalEvent)); -+ ti->next_history->any.type = ET_TouchMotion; + + ti->next_history++; + if (ti->next_history == ti->history + ti->history_size) @@ -1119,7 +1117,7 @@ * Main device event processing function. * Called from when processing the events from the event queue. * -@@ -954,6 +1939,33 @@ ProcessOtherEvent(InternalEvent *ev, Dev +@@ -954,6 +1937,33 @@ ProcessOtherEvent(InternalEvent *ev, Dev { ProcessRawEvent(&ev->raw_event, device); return; @@ -1153,7 +1151,7 @@ } if (IsPointerDevice(device)) -@@ -1152,6 +2164,50 @@ InitValuatorAxisStruct(DeviceIntPtr dev, +@@ -1152,6 +2162,50 @@ InitValuatorAxisStruct(DeviceIntPtr dev, dev->proximity->in_proximity = FALSE; } @@ -1204,7 +1202,7 @@ static void FixDeviceStateNotify(DeviceIntPtr dev, deviceStateNotify * ev, KeyClassPtr k, ButtonClassPtr b, ValuatorClassPtr v, int first) -@@ -1562,6 +2618,38 @@ GrabWindow(ClientPtr client, DeviceIntPt +@@ -1562,6 +2616,38 @@ GrabWindow(ClientPtr client, DeviceIntPt return AddPassiveGrabToList(client, grab); } @@ -1243,7 +1241,7 @@ int SelectForWindow(DeviceIntPtr dev, WindowPtr pWin, ClientPtr client, Mask mask, Mask exclusivemasks) -@@ -1695,10 +2783,65 @@ RecalculateDeviceDeliverableEvents(Windo +@@ -1695,10 +2781,65 @@ RecalculateDeviceDeliverableEvents(Windo } } @@ -1309,7 +1307,7 @@ if (!wOtherInputMasks(pWin)) return Success; -@@ -1734,6 +2877,54 @@ InputClientGone(WindowPtr pWin, XID id) +@@ -1734,6 +2875,54 @@ InputClientGone(WindowPtr pWin, XID id) FatalError("client not on device event list"); } -- 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/e1ps16h-0003bd...@alioth.debian.org