------------------------------------------------------------
revno: 126 tags: v1.0.20 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: trunk timestamp: Fri 2011-03-04 01:05:19 +0100 message: Bump to v1.0.20 ------------------------------------------------------------ revno: 125 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: trunk timestamp: Fri 2011-03-04 01:04:55 +0100 message: Make grabbing client exclusive When a possible gesture is started for a global client (sysflag set), it is desirable that gestures to other clients are disregarded until all contacts have left the surface. In principle this could be refined further, such that if gesture are not detected, they are passed on to other clients, but that also affects how touches are passed onto lower layers like XI2.1, so simply making sure a global system client gets all events potentially leading to gestures is good enough for now. Also note that in the current combination of synaptics/evdev X servers and grail, there can be no overlapping potential gestures between two global clients, or the resulting event recipient is not correct. ------------------------------------------------------------ revno: 124 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: trunk timestamp: Thu 2011-02-24 23:51:33 +0100 message: Make reset logic of pinch and drag same as for drag There is no direct reason for one-fingered pinch/rotate gestures to be discarded immediately, so only reset gestures on touch down, as for drags. ------------------------------------------------------------ revno: 123 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: trunk timestamp: Thu 2011-02-24 23:51:17 +0100 message: Remove unused tapping state This patch removes some cruft that was left over from the removal of the short tap time logic. ------------------------------------------------------------ revno: 122 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: trunk timestamp: Thu 2011-02-24 23:50:59 +0100 message: Reset tap state after timeout A touch and hold will not properly reset the tap state, such that the next tap fails to register. Fixed with this patch. ------------------------------------------------------------ revno: 121 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: trunk timestamp: Thu 2011-02-24 23:50:31 +0100 message: Adjust gesture buffer sizes and timings Adjust timings to put drag, pinch and rotate on more equal footing, with regard to gesture timeouts. Also make sure events are not lost during hold, now that all MT events are buffered as well. ------------------------------------------------------------ revno: 120 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: trunk timestamp: Thu 2011-02-24 23:50:14 +0100 message: Skip events selectively Buffer all events as planned, but strip the stream of all events involved with pointer and MT, rather than bluntly removing all events. In practise, this means button and switch events are let through, undistorted although possibly slightly delayed. ------------------------------------------------------------ revno: 119 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: trunk timestamp: Thu 2011-02-24 23:49:59 +0100 message: Wait for the right number of fingers before gesture timeout A client listening only for multi-finger gestures will not get the chance to recognize unless there is a gesture timeout. This patch waits until the drag hold time has passed before releasing the touch. ------------------------------------------------------------ revno: 118 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: trunk timestamp: Thu 2011-02-24 23:49:45 +0100 message: Introduce activation hold time Do not activate a drag, pinch or rotate immediately, even if the activation threshold is met. This allows for a smoother transition between fingers. ------------------------------------------------------------ revno: 117 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: trunk timestamp: Thu 2011-02-24 23:49:22 +0100 message: Introduce gesture timeouts The timeout of a gesture is integral to the gesture type. This patch introduces timeout per gesture type, potentially enabling more control over gesture timing aspects. The timeout logic replaces the recently added recognition state. ------------------------------------------------------------ revno: 116 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: trunk timestamp: Thu 2011-02-24 23:49:02 +0100 message: Revert "Add global vs local gesture handling" ------------------------------------------------------------ revno: 115 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: trunk timestamp: Thu 2011-02-24 23:48:45 +0100 message: Revert "Add button passthrough" ------------------------------------------------------------ revno: 114 tags: v1.0.19 committer: Chase Douglas <chase.douglas@ubuntu.com> branch nick: utouch-grail timestamp: Mon 2011-02-21 14:20:28 -0500 message: Release version 1.0.19 ------------------------------------------------------------ revno: 113 [merge] committer: Chase Douglas <chase.douglas@ubuntu.com> branch nick: utouch-grail-pristine timestamp: Mon 2011-02-21 14:15:58 -0500 message: Merge button passthrough branch ------------------------------------------------------------ revno: 112 [merge] committer: Chase Douglas <chase.douglas@ubuntu.com> branch nick: utouch-grail-pristine timestamp: Thu 2011-02-10 12:27:50 -0500 message: Merge global vs local gesture handling and fix event leakage ------------------------------------------------------------ revno: 111 committer: Chase Douglas <chase.douglas@ubuntu.com> branch nick: utouch-grail timestamp: Thu 2011-02-03 17:23:32 -0500 message: Don't treat key events differently anymore Left over from grail pointer emulation. ------------------------------------------------------------ revno: 110 committer: Chase Douglas <chase.douglas@ubuntu.com> branch nick: utouch-grail timestamp: Thu 2011-02-03 11:57:47 -0500 message: Add in time boundaries for recognition 50 ms: Minimum time waiting for touch configuration to settle before flushing touch events to X. We don't want a two finger gesture triggering X events for the first finger before the second finger lands. 200 ms: Maximum time for touches to begin a gesture. If no gesture is found within this time period, the events are flushed to X. If after 50 ms there are no possible gestures for the number of active touches, the events are immediately flushed to X. If events are flushed to X, no more gesture recognition is possible until all touches are lifted. Likewise, if any gesture is recognized, no events may be flushed to X until all touches are lifted. ------------------------------------------------------------ revno: 109 committer: Chase Douglas <chase.douglas@ubuntu.com> branch nick: utouch-grail timestamp: Wed 2011-02-02 17:16:20 -0500 message: Remove pointer emulation, X will handle it ------------------------------------------------------------ revno: 108 committer: Chase Douglas <chase.douglas@ubuntu.com> branch nick: utouch-grail timestamp: Wed 2011-02-02 17:15:03 -0500 message: Small compilation warning fixes Found by using -Wall -Werror ------------------------------------------------------------ revno: 107 tags: v1.0.18 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: trunk timestamp: Mon 2011-01-03 16:42:45 +0100 message: Bump to v1.0.18 The grail symbols are intact and abi compatible, whereas the remaining symbols, which should not really be present, have all been removed. Since the remaining symbols represent the actual official API, this is not considered an ABI breakage. ------------------------------------------------------------ revno: 106 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: trunk timestamp: Sun 2011-01-02 13:08:42 +0100 message: Only export the intended grail symbols In the making of grail1, the intention was never that the gin, gru and touch symbols be exported. Rectify this by adding an explicit symbols file used during linking. ------------------------------------------------------------ revno: 105 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: trunk timestamp: Sun 2011-01-02 13:08:08 +0100 message: Replace touch logic with utouch frame engine The original grail uses an internal touch framework and exports some touch information as extended attributes to gesture events. This was never quite the intention, but rather to expose gestures and touches on a similar footing, such that grail can be input agnostic. This patch starts off by replacing the internal touch framework with the utouch-frame engine. ------------------------------------------------------------ revno: 104 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: trunk timestamp: Sun 2011-01-02 13:06:56 +0100 message: Prepare for queued event handling The current grail operates via callbacks. In order to make grail work as a pipe, where input and output can be controlled externally, add the missing event queue for gestures, and align the code to simplify a switch. ------------------------------------------------------------ revno: 103 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: trunk timestamp: Sun 2011-01-02 13:06:04 +0100 message: Move test program to tools directory The current test programs are tools rather than automatic tests. To conform better to the the usage of "make check", move the current tools over the appropriate directory. Also drop the grail-touch program, as it will be replaced by the utouch-frame package. ------------------------------------------------------------ revno: 102 tags: v1.0.17 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: trunk timestamp: Wed 2010-11-17 17:29:52 +0100 message: grail v1.0.17 ------------------------------------------------------------ revno: 101 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: trunk timestamp: Wed 2010-11-17 17:29:28 +0100 message: Use a unified pointer emulation model The existing kernel MT devices together use a handful of different pointer emulation strategies, each with its own subtlety. This creates a problem for grail, which needs to rebuild pointer emulation during gesture recognition; relying on the correct pointer information to be available at the right time becomes almost impossible. This patch implements a common pointer emulation model for grail, following a strategy recently discussed on LKML. This resolves the problems stemming from different emulation strategies, and results in a common pointer emulation experience for all devices. ------------------------------------------------------------ revno: 100 tags: v1.0.16 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: trunk timestamp: Mon 2010-11-08 20:46:42 +0100 message: grail v1.0.16 ------------------------------------------------------------ revno: 99 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: trunk timestamp: Thu 2010-10-28 16:02:38 +0200 message: Report touch down on one-finger entry (LP: #667802) The current code mistakenly set the pointer logic based on the single variable, which is false at the entry to one-finger mode, but true immediately afterwards. This leads to grail sometimes failing to emit the proper emulation sequence, resulting in a missed touch in X. This patch corrects the logic such that the pointer is based directly on one-finger mode, thereby solving the problem. ------------------------------------------------------------ revno: 98 tags: v1.0.15 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: trunk timestamp: Tue 2010-09-28 11:33:43 +0200 message: grail v1.0.15 ------------------------------------------------------------ revno: 97 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: trunk timestamp: Tue 2010-09-28 11:33:20 +0200 message: Only support pure absolute devices at this time There are some hybrid relative/absolute devices out there, like the magic mouse, for which special behavior, outside the current scope of grail, is expected. This patch disables grail for those devices. ------------------------------------------------------------ revno: 96 tags: v1.0.14 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: trunk timestamp: Tue 2010-09-21 13:27:20 +0200 message: grail v1.0.14 ------------------------------------------------------------ revno: 95 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: trunk timestamp: Tue 2010-09-21 13:27:02 +0200 message: Show all information for pass-through events In grail-gesture, the timing information is missing. Remedied with this patch. ------------------------------------------------------------ revno: 94 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: trunk timestamp: Tue 2010-09-21 13:26:43 +0200 message: Add tap state to the tapping model Add the ability to read off the tap state in the tapping model. Useful for emulation i lieu of tapping gestures. ------------------------------------------------------------ revno: 93 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: trunk timestamp: Tue 2010-09-21 13:26:10 +0200 message: Add tap emulation Touchscreens always emit a button event when touching the screen. Trackpads, however, are considered hovering while touching the pad, and instead uses taps to emits button events, which is traditionally implemented elsewhere, and thus leaves a functionality discrepancy. This patch adds tap emulation to grail, utilizing gesture engine. ------------------------------------------------------------ revno: 92 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: trunk timestamp: Tue 2010-09-21 13:25:43 +0200 message: Split pointer status and report status Separate out reporting of the touch state, such that reporting can be deferred. Does not introduce any logic changes. ------------------------------------------------------------ revno: 91 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: trunk timestamp: Tue 2010-09-21 13:25:14 +0200 message: Do not tap when leaving fingers on the pad The current code will treat a 3-down-2-up as a tap. This patch changes the logic so that taps are only emitted when the number of fingers returns to the baseline. ------------------------------------------------------------ revno: 90 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: trunk timestamp: Tue 2010-09-21 13:24:47 +0200 message: bug: Only report position change events This bug was introduced in v1.0.11. Only report events when the pointer position is actually changing. ------------------------------------------------------------ revno: 89 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: trunk timestamp: Tue 2010-09-21 13:24:31 +0200 message: Reorganize input event emulation code Inject the emulated events into the event buffer instead, and move the pointer logic into the emulation handler. Introduces no logical changes, but reveals the bug in the position event frequency. ------------------------------------------------------------ revno: 88 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: trunk timestamp: Tue 2010-09-21 13:24:08 +0200 message: Move input event filter from tail side to head side There is no need to buffer events that will be ignored later on, so move the event filter to the upstream side. This also allows the event buffer to be used for injected events. ------------------------------------------------------------ revno: 87 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: trunk timestamp: Tue 2010-09-21 13:23:35 +0200 message: Simplify book-keeping of active gestures The current frame computation returns the event types to filter, which is less useful than knowing what gesture types are active in the frame. Add the active gesture types to the frame struct and simplify usage. ------------------------------------------------------------ revno: 86 tags: v1.0.13 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: trunk timestamp: Fri 2010-09-10 14:10:09 +0200 message: grail v1.0.13 ------------------------------------------------------------ revno: 85 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: trunk timestamp: Fri 2010-09-10 14:09:48 +0200 message: Allow slow tapping For the benefit of hardware that cannot accurately meet the desirable response times, allow for tapping times up to 300 ms. ------------------------------------------------------------ revno: 84 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: trunk timestamp: Fri 2010-09-10 14:09:26 +0200 message: Inhibit taps immediately after a finger is lifted The intentional tap starts with a finger in the air. This patch treats the sequence up-down-up as unintentional, unless performed with a single finger. Fixes the problem with accidental taps during multi-finger gestures. ------------------------------------------------------------ revno: 83 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: trunk timestamp: Fri 2010-09-10 14:08:24 +0200 message: Only emit abs events when motion is active This bug was hidden behind the motion inhibit during tapping, but resurfaced when tapping from resting finger was introduced. With this patch, pointer movement is inhibited also when lifting fingers from the surface. Ideally, tapping should be treated as a transient event, which would allow zero pointer event also _before_ the tap, but presently unity seems to depend on the initial pointer movement as a touch-down event. ------------------------------------------------------------ revno: 82 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: trunk timestamp: Fri 2010-09-10 14:01:29 +0200 message: Cancel tapping also on zoom events The current code cancels tapping when dragging is active. This patch adds zooming to the set, to inhibit tapping also when a perfect zoom without dragging is performed. Reported-by: Chase Douglas <chase.douglas@canonical.com> ------------------------------------------------------------ revno: 81 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: trunk timestamp: Fri 2010-09-10 14:01:07 +0200 message: Discard tapping even when there are zero events between dow n and up The current logic assumes there will be at least one frame with between touch up and touch down or the tap will not be properly timed out. Fixed with this patch. Reported-by: Chase Douglas <chase.douglas@canonical.com> ------------------------------------------------------------ revno: 80 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: trunk timestamp: Fri 2010-09-10 14:00:27 +0200 message: Support legacy devices Simulate MT touch events for legacy devices that support the DOUBLETAP, TRIPLETAP and QUADTAP events. This allows multi-finger tap and drag gestures to be emitted, providing a basic level of MT functionality for legacy devices. ------------------------------------------------------------ revno: 79 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: trunk timestamp: Fri 2010-09-10 13:59:52 +0200 message: Make sure contact area is always defined Some devices do not always send touch_minor after touch_major has been set. According to the MT protocol, this case should be treated as if minor is equal to major. This patch makes sure touch_minor is never zero when touch_major is set. ------------------------------------------------------------ revno: 78 tags: v1.0.12 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: trunk timestamp: Wed 2010-09-01 23:01:08 +0200 message: grail v1.0.12 ------------------------------------------------------------ revno: 77 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: trunk timestamp: Wed 2010-09-01 23:00:37 +0200 message: Do not compute velocity until enough data is available The first few ticks since a configuration change are not really suited for velocity computation, so move the speed computation over to the periodic sampling point. ------------------------------------------------------------ revno: 76 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: trunk timestamp: Tue 2010-08-31 14:20:32 +0200 message: Make orientation computation more robust The MT protocol defines the angle to be between -Pi/2 and Pi/2, and expects the defined range to be symmetric around zero. Make the angle computation more robust against varying definitions in the kernel drivers. ------------------------------------------------------------ revno: 75 tags: v1.0.11 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: utouch-grail-trunk timestamp: Thu 2010-08-26 16:41:39 +0200 message: grail v1.0.11 ------------------------------------------------------------ revno: 74 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: utouch-grail-trunk timestamp: Thu 2010-08-26 16:41:20 +0200 message: Introduce tapping from any finger configuration The current code only emits taps from zero fingers to N fingers. This patch introduces tapping from any prior finger configuration. A tap is defined as an increased number of fingers followed by a decrease within the tap timeout. A tap is reported as the maximum number of fingers present during the tap sequence. ------------------------------------------------------------ revno: 73 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: utouch-grail-trunk timestamp: Thu 2010-08-26 16:40:53 +0200 message: Trim tapping timeouts Reduce the tapping timeout to 200 ms. ------------------------------------------------------------ revno: 72 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: utouch-grail-trunk timestamp: Thu 2010-08-26 16:40:35 +0200 message: Correct abs event handling The current code lets abs events through during one-finger drags, and tapping does not work properly due to abs events not always being present during taps. Track the pointer position and emit abs events only if no gestures are in effect, and only if not explicitly filtered. ------------------------------------------------------------ revno: 71 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: utouch-grail-trunk timestamp: Thu 2010-08-26 16:39:58 +0200 message: Plug hole in tentative gestures state during finger transition During finger configuration transition, as well as after a tap, there would be no tentative gestures registered in the instantiator, leading to faulty emission of motion events. Fixed with this patch. ------------------------------------------------------------ revno: 70 tags: v1.0.10 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: utouch-grail-trunk timestamp: Fri 2010-08-20 09:01:27 +0200 message: Adding file missing from revision 58. ------------------------------------------------------------ revno: 69 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: utouch-grail-trunk timestamp: Fri 2010-08-20 08:46:06 +0200 message: grail v1.0.10 ------------------------------------------------------------ revno: 68 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: utouch-grail-trunk timestamp: Fri 2010-08-20 08:45:26 +0200 message: Declare missing header file for distro package ------------------------------------------------------------ revno: 67 tags: v1.0.9 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: utouch-grail-trunk timestamp: Thu 2010-08-19 22:36:39 +0200 message: grail v1.0.9 ------------------------------------------------------------ revno: 66 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: utouch-grail-trunk timestamp: Thu 2010-08-19 22:36:11 +0200 message: Add contact information to the property list Add the five first contacts to the property list, and unify the handling of all gesture types in this regard. To avoid duplication, move the scaling of properties closer to the gesture recognizer. Move all gesture event handling code to grail-event.c, simplifying the structure somewhat. ------------------------------------------------------------ revno: 65 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: utouch-grail-trunk timestamp: Thu 2010-08-19 22:35:45 +0200 message: Crank up the maximum number of properties To prepare for the (for maverick only) addition of individual contact information via the properties array, increase the maximum number of contacts. ------------------------------------------------------------ revno: 64 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: utouch-grail-trunk timestamp: Thu 2010-08-19 22:35:18 +0200 message: Use the touch_caps directly rather than grail_get_units() ------------------------------------------------------------ revno: 63 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: utouch-grail-trunk timestamp: Thu 2010-08-19 22:34:47 +0200 message: Add grail_contact and a method to retrieve the current contacts This patch adds the possibility to extract the current set of contacts from the grail state. ------------------------------------------------------------ revno: 62 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: utouch-grail-trunk timestamp: Thu 2010-08-19 22:34:11 +0200 message: Make gesture inserter visible to all local files Also remove the transformed flag in favor of a unit transformation. ------------------------------------------------------------ revno: 61 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: utouch-grail-trunk timestamp: Thu 2010-08-19 22:33:47 +0200 message: Reserve one mask position for system use This is needed for gesture propagation outside of grail ------------------------------------------------------------ revno: 60 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: utouch-grail-trunk timestamp: Thu 2010-08-19 22:27:59 +0200 message: Make grail implementation visible to all local files ------------------------------------------------------------ revno: 59 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: utouch-grail-trunk timestamp: Thu 2010-08-19 22:27:20 +0200 message: Add documentation to structs and functions in grail.h ------------------------------------------------------------ revno: 58 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: utouch-grail-trunk timestamp: Thu 2010-08-19 22:26:11 +0200 message: Simplify touch machinery To be able to model touch information uniformly across all supported devices, the semantics of the touch attributes has to be treated explicitly. Drop the generic touch property array and replace it by an actual structure. In addition, the touch-engine abstraction turned out to not be needed, so drop it as well. ------------------------------------------------------------ revno: 57 tags: v1.0.8 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: utouch-grail-trunk timestamp: Thu 2010-08-12 16:56:04 +0100 message: utouch-grail v1.0.8 ------------------------------------------------------------ revno: 56 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: utouch-grail-trunk timestamp: Thu 2010-08-12 16:55:30 +0100 message: Change package name to utouch-grail ------------------------------------------------------------ revno: 55 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: grail-trunk timestamp: Wed 2010-08-11 18:12:13 +0100 message: grail v1.0.7 ------------------------------------------------------------ revno: 54 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: grail-trunk timestamp: Wed 2010-08-11 18:07:40 +0100 message: Add a translation utility to grail By calling the grail_set_bbox(), grail will do translation of api coordinates and matching properties to an external coordinate system, such as screen coordinates. ------------------------------------------------------------ revno: 53 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: grail-trunk timestamp: Wed 2010-08-11 18:07:08 +0100 message: api: Add bounding box to rotate gestures ------------------------------------------------------------ revno: 52 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: grail-trunk timestamp: Wed 2010-08-11 18:06:36 +0100 message: Split out bounding box computation ------------------------------------------------------------ revno: 51 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: grail-trunk timestamp: Wed 2010-08-11 18:05:46 +0100 message: Add main type numbers to grail type properties ------------------------------------------------------------ revno: 50 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: grail-trunk timestamp: Wed 2010-08-11 18:05:21 +0100 message: janitor: conformant argument order in api ------------------------------------------------------------ revno: 49 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: grail-trunk timestamp: Wed 2010-08-11 18:04:45 +0100 message: Add environment and meta gestures With meta gestures, the gesture starts given a certain number of fingers, but can then continue even if the number of fingers change. By configuration, such gestures live on a different priority plane from normal gestures. To match window manager specs, this patch adds the environment and meta planes, and add drag, pinch and rotate gestures initiated with three and four fingers, respectively. ------------------------------------------------------------ revno: 48 tags: v1.0.6 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: grail-trunk timestamp: Tue 2010-08-10 19:10:28 +0100 message: grail v1.0.6 ------------------------------------------------------------ revno: 47 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: grail-trunk timestamp: Tue 2010-08-10 19:10:01 +0100 message: Count the extra touch event and mask additional abs events Not counting the BTN_TOUCH event implied not emitting the sync event, which confused evdev. ------------------------------------------------------------ revno: 46 tags: v1.0.5 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: grail-trunk timestamp: Tue 2010-08-10 17:43:48 +0100 message: grail v1.0.5 ------------------------------------------------------------ revno: 45 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: grail-trunk timestamp: Tue 2010-08-10 17:43:11 +0100 message: Change rotation units to angles Use angle units, such that a complete revolution corresponds to 2 pi. ------------------------------------------------------------ revno: 44 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: grail-trunk timestamp: Tue 2010-08-10 17:42:43 +0100 message: pinch: Add bounding box to property list ------------------------------------------------------------ revno: 43 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: grail-trunk timestamp: Tue 2010-08-10 17:42:10 +0100 message: Make tapping position appear properly ------------------------------------------------------------ revno: 42 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: grail-trunk timestamp: Tue 2010-08-10 17:41:34 +0100 message: Filter kernel touch and tap buttons Reinsert BTN_TOUCH depending on the drag gesture. ------------------------------------------------------------ revno: 41 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: grail-trunk timestamp: Tue 2010-08-10 17:41:06 +0100 message: Filter abs events by default in grail-gesture Also connect the timeout for press with the timeout of tapping. ------------------------------------------------------------ revno: 40 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: grail-trunk timestamp: Tue 2010-08-10 17:40:19 +0100 message: Always send pointer movement gestures Always send drag events for one-finger touches, but only filter the ABS_X/Y events if grail_filter_abs_events() is set to true. ------------------------------------------------------------ revno: 39 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: grail-trunk timestamp: Tue 2010-08-10 17:39:47 +0100 message: Add property declarations to grail-types Also add accumulated values for delta and velocity properties. ------------------------------------------------------------ revno: 38 committer: Henrik Rydberg <rydberg@bitmath.org> branch nick: grail-trunk timestamp: Tue 2010-08-10 17:38:31 +0100 message: api: Rename gestures to conform to design docs Use the names drag, pinch and rotate, and remove the combo gesture. ------------------------------------------------------------ revno: 37 tags: v1.0.4 committer: Henrik Rydberg <rydberg@alnilam> branch nick: grail-trunk timestamp: Sun 2010-08-08 12:20:41 +0200 message: grail v1.0.4 ------------------------------------------------------------ revno: 36 committer: Henrik Rydberg <rydberg@alnilam> branch nick: grail-trunk timestamp: Sun 2010-08-08 12:19:56 +0200 message: Trim the bars for action somewhat Signed-off-by: Henrik Rydberg <rydberg@bitmath.org> ------------------------------------------------------------ revno: 35 committer: Henrik Rydberg <rydberg@alnilam> branch nick: grail-trunk timestamp: Sun 2010-08-08 12:18:25 +0200 message: Keep both raw and action delta in move model Accumulated values can be obtained either by using the raw_delta, which is the actual (filtered) change between frames, or by using the action delta, which sums up to the same position, but in a non- linear fashion. Use the raw delta for pointer gestures. Signed-off-by: Henrik Rydberg <rydberg@bitmath.org> ------------------------------------------------------------ revno: 34 committer: Henrik Rydberg <rydberg@alnilam> branch nick: grail-trunk timestamp: Sat 2010-08-07 22:21:27 +0200 message: Send proper begin/update/end status for gestures For transient gestures like taps, use update only. Signed-off-by: Henrik Rydberg <rydberg@bitmath.org> ------------------------------------------------------------ revno: 33 committer: Henrik Rydberg <rydberg@alnilam> branch nick: grail-trunk timestamp: Sat 2010-08-07 22:20:28 +0200 message: Add configurable pointer gesture In some applications, it is desirable to treat pointer movements as a gesture. This patch adds a gru configuration parameter which, then true, makes grail emit pointer gesture events. Signed-off-by: Henrik Rydberg <rydberg@bitmath.org> ------------------------------------------------------------ revno: 32 committer: Henrik Rydberg <rydberg@alnilam> branch nick: grail-trunk timestamp: Sat 2010-08-07 22:19:17 +0200 message: gesture: Improved tickle/active logic Reorganize the motion model to use bitmasks for tickle and active, and refine the tickle logic for each gesture. Signed-off-by: Henrik Rydberg <rydberg@bitmath.org> ------------------------------------------------------------ revno: 31 committer: Henrik Rydberg <rydberg@alnilam> branch nick: grail-trunk timestamp: Sat 2010-08-07 22:17:57 +0200 message: Accumulate delta while motion is inactive Signed-off-by: Henrik Rydberg <rydberg@bitmath.org> ------------------------------------------------------------ revno: 30 committer: Henrik Rydberg <rydberg@alnilam> branch nick: grail-trunk timestamp: Sat 2010-08-07 22:15:16 +0200 message: Treat one-finger moves in move model and simplify tapping logic. Signed-off-by: Henrik Rydberg <rydberg@bitmath.org> ------------------------------------------------------------ revno: 29 committer: Henrik Rydberg <rydberg@alnilam> branch nick: grail-trunk timestamp: Sat 2010-08-07 22:13:32 +0200 message: Remove unused declarations Signed-off-by: Henrik Rydberg <rydberg@bitmath.org> ------------------------------------------------------------ revno: 28 committer: Henrik Rydberg <rydberg@alnilam> branch nick: grail-trunk timestamp: Fri 2010-08-06 22:30:20 +0200 message: Update README and copyright in all files Add the author to the copyright, courtesy of Canonical Ltd. Signed-off-by: Henrik Rydberg <rydberg@bitmath.org> ------------------------------------------------------------ revno: 27 committer: Henrik Rydberg <rydberg@alnilam> branch nick: grail-trunk timestamp: Fri 2010-08-06 21:10:27 +0200 message: remove gitignore file from repo ------------------------------------------------------------ revno: 26 tags: v1.0.3 committer: cndougla <cndougla@txpawl01> branch nick: grail-trunk timestamp: Fri 2010-08-06 17:25:13 +0000 message: grail v1.0.3 ------------------------------------------------------------ revno: 25 committer: cndougla <cndougla@txpawl01> branch nick: grail-trunk timestamp: Fri 2010-08-06 17:24:21 +0000 message: Ensure the math library is linked in ------------------------------------------------------------ revno: 24 tags: v1.0.2 committer: cndougla <cndougla@txpawl01> branch nick: grail-trunk timestamp: Fri 2010-08-06 16:38:21 +0000 message: grail v1.0.2 ------------------------------------------------------------ revno: 23 committer: cndougla <cndougla@txpawl01> branch nick: grail-trunk timestamp: Fri 2010-08-06 16:35:40 +0000 message: Use bzr log for ChangeLog ------------------------------------------------------------ revno: 22 tags: v1.0.1 git commit: 4af2240c46ea401ce259f1c4c1401b335b397987 committer: Henrik Rydberg <rydberg@euromail.se> timestamp: Fri 2010-08-06 14:39:27 +0200 message: grail v1.0.1 ------------------------------------------------------------ revno: 21 git commit: 3b6bc1a7dc5871aef2c47426f87bb409a622de29 author: Henrik Rydberg <rydberg@bitmath.org> committer: Henrik Rydberg <rydberg@euromail.se> timestamp: Fri 2010-08-06 14:33:32 +0200 message: Remove thread code The primary usecase of grail involves using it together with the xserver, which is not threaded. Revert the touch-dev code back to the state prior to adding the threaded processing. Deferred event handling can be implemented by other means when needed. Signed-off-by: Henrik Rydberg <rydberg@bitmath.org> ------------------------------------------------------------ revno: 20 tags: v1.0.0 git commit: 40d6c7304cf431f13bfe81600656b268c881a4a2 author: Henrik Rydberg <rydberg@bitmath.org> committer: Henrik Rydberg <rydberg@euromail.se> timestamp: Thu 2010-08-05 22:48:38 +0200 message: Prepare a proper upstream package Make sure that tarballs can be made, and change the version to 1.0. Signed-off-by: Henrik Rydberg <rydberg@bitmath.org> ------------------------------------------------------------ revno: 19 git commit: 41be604bacf259d8dbcd6d5641fc3e6bb113dafc author: Henrik Rydberg <rydberg@bitmath.org> committer: Henrik Rydberg <rydberg@euromail.se> timestamp: Thu 2010-08-05 22:48:38 +0200 message: grail-gesture: Allow more versatile input The current code does not allow input in hex form. This patch switches to use strtoull, allowing for a 32/64 bitmask to be specified on commandline. Signed-off-by: Henrik Rydberg <rydberg@bitmath.org> ------------------------------------------------------------ revno: 18 git commit: 7559b3d7aa725cd75ee4e6746246205392fe1c0f author: Henrik Rydberg <rydberg@bitmath.org> committer: Henrik Rydberg <rydberg@euromail.se> timestamp: Thu 2010-08-05 22:48:38 +0200 message: Rename and install test binaries Install the test programs as grail-touch and grail-gesture. Signed-off-by: Henrik Rydberg <rydberg@bitmath.org> ------------------------------------------------------------ revno: 17 git commit: 8bbf06f8d0056ae30fdfaf260000e763fad2345c author: Henrik Rydberg <rydberg@bitmath.org> committer: Henrik Rydberg <rydberg@euromail.se> timestamp: Thu 2010-08-05 22:48:38 +0200 message: make event units public in the api Add grail_get_units() to the api, so so that applications can extract the min/max coordinates used in the gesture events. Signed-off-by: Henrik Rydberg <rydberg@bitmath.org> ------------------------------------------------------------ revno: 16 git commit: d5f810a0d3e0013a76136750eaff825ceec099a2 author: Henrik Rydberg <rydberg@bitmath.org> committer: Henrik Rydberg <rydberg@euromail.se> timestamp: Thu 2010-08-05 22:48:38 +0200 message: tapping: Cancel multi-finger taps when moving Cancel multi-finger taps when multi move is active, to avoid accidental tapping during quick gestures. Signed-off-by: Henrik Rydberg <rydberg@bitmath.org> ------------------------------------------------------------ revno: 15 git commit: d8e8d112aa907f8021ae99e6d7cd7856f1d90b70 author: Henrik Rydberg <rydberg@bitmath.org> committer: Henrik Rydberg <rydberg@euromail.se> timestamp: Thu 2010-08-05 22:48:38 +0200 message: Add four-finger and five-finger gestures Add four-finger and five-finger gestures, and move all gesture types out to a separate file. Signed-off-by: Henrik Rydberg <rydberg@bitmath.org> ------------------------------------------------------------ revno: 14 git commit: 00f7895d101de2703dbcea3600a68c4f653a0378 author: Henrik Rydberg <rydberg@bitmath.org> committer: Henrik Rydberg <rydberg@euromail.se> timestamp: Thu 2010-08-05 22:48:38 +0200 message: Correct mistake in api argument names The bitmask passed to get_clients takes the number of bytes in the bitmask as argument, not the number of types, as easily assumed given the argument name. This patch changes the name to type_bytes to avoid confusion. Signed-off-by: Henrik Rydberg <rydberg@bitmath.org> ------------------------------------------------------------ revno: 13 git commit: d7d89e2afae9151f4d16aa71a99eedbf920ecc1a author: Henrik Rydberg <rydberg@bitmath.org> committer: Henrik Rydberg <rydberg@euromail.se> timestamp: Thu 2010-08-05 22:48:38 +0200 message: tapping: Cancel early in case of one-finger movement Signed-off-by: Henrik Rydberg <rydberg@bitmath.org> ------------------------------------------------------------ revno: 12 git commit: 88dada465e0fad35b5a535a042e0a93046ffff7c author: Henrik Rydberg <rydberg@bitmath.org> committer: Henrik Rydberg <rydberg@euromail.se> timestamp: Thu 2010-08-05 22:48:38 +0200 message: Cleanup tapping and gesture code Improved tapping quality with this patch. Signed-off-by: Henrik Rydberg <rydberg@bitmath.org> ------------------------------------------------------------ revno: 11 git commit: 697b5b5c7d2b1c46387061fcbed24cbee51d98ce author: Henrik Rydberg <rydberg@bitmath.org> committer: Henrik Rydberg <rydberg@euromail.se> timestamp: Thu 2010-08-05 22:48:38 +0200 message: Introduce tapping Simplify some common parts of the recognizer code and add tapping to the gesture suite. Signed-off-by: Henrik Rydberg <rydberg@bitmath.org> ------------------------------------------------------------ revno: 10 git commit: 642d7ee26f347152a106d48ddad37a8059d36fb1 author: Henrik Rydberg <rydberg@bitmath.org> committer: Henrik Rydberg <rydberg@euromail.se> timestamp: Thu 2010-08-05 22:48:38 +0200 message: Fix hanging event bug The no-wait approach, where events are read and process asynchronously, resulted in spurious events getting stuck in the input queue. This patch reverts the behavior to synchronous buffer read and processing, resolving the problem for now. Signed-off-by: Henrik Rydberg <rydberg@bitmath.org> ------------------------------------------------------------ revno: 9 git commit: d07c43f9f19dc0ee38aaf44947cfc396f437490e author: Henrik Rydberg <rydberg@bitmath.org> committer: Henrik Rydberg <rydberg@euromail.se> timestamp: Thu 2010-08-05 22:48:38 +0200 message: Introduce zoom, rotate and combo gestures Introduce grail_mask bit functions, and add new gestures as separate functions, referring to the same move model. Signed-off-by: Henrik Rydberg <rydberg@bitmath.org> ------------------------------------------------------------ revno: 8 git commit: 342a43e7b2ceec1dd200bffa24b052fec33f5bdc author: Henrik Rydberg <rydberg@bitmath.org> committer: Henrik Rydberg <rydberg@euromail.se> timestamp: Thu 2010-08-05 22:48:38 +0200 message: Introduce threading In order to enable deferred events from grail, but the event processing in a separate thread, and have the calling thread return as quickly as possible. Signed-off-by: Henrik Rydberg <rydberg@bitmath.org> ------------------------------------------------------------ revno: 7 git commit: e0eb1015bf30fd0913db571b000ba6a83ea22660 author: Henrik Rydberg <rydberg@bitmath.org> committer: Henrik Rydberg <rydberg@euromail.se> timestamp: Thu 2010-08-05 22:48:38 +0200 message: Split the code into recognizer and inserter Refactor code to make more room for gesture recognition. Also simplify public headers. Signed-off-by: Henrik Rydberg <rydberg@bitmath.org> ------------------------------------------------------------ revno: 6 git commit: b76660d71e2ea77752025089bd71deffad64e325 author: Henrik Rydberg <rydberg@bitmath.org> committer: Henrik Rydberg <rydberg@euromail.se> timestamp: Thu 2010-08-05 22:48:38 +0200 message: Test implementation of grail api This patch introduces the grail API, and a program to test it (evlink). Signed-off-by: Henrik Rydberg <rydberg@bitmath.org> ------------------------------------------------------------ revno: 5 git commit: eb896e11aacab5f53e3915a8d19ffffd92ce8e10 author: Henrik Rydberg <rydberg@bitmath.org> committer: Henrik Rydberg <rydberg@euromail.se> timestamp: Thu 2010-08-05 22:48:38 +0200 message: Touch API changes Add touch time to the touch frame (Thanks Rafi) Add touch change counters to the touch frame Add event bypass callback Signed-off-by: Henrik Rydberg <rydberg@bitmath.org> ------------------------------------------------------------ revno: 4 git commit: 3b9c20f869a2f55bd9953665c9e7fd713db4ff43 author: Henrik Rydberg <rydberg@bitmath.org> committer: Henrik Rydberg <rydberg@euromail.se> timestamp: Thu 2010-08-05 22:48:37 +0200 message: Merge in fix of dev package. This patch moves header files around, and does not contain any logic changes. Signed-off-by: Henrik Rydberg <rydberg@bitmath.org> ------------------------------------------------------------ revno: 3 git commit: 49922aacc4e6361e2a11dd2ce8460c80b41ab493 author: Henrik Rydberg <rydberg@bitmath.org> committer: Henrik Rydberg <rydberg@euromail.se> timestamp: Thu 2010-08-05 22:48:37 +0200 message: Add grail problems and solutions documentation Signed-off-by: Henrik Rydberg <rydberg@bitmath.org> ------------------------------------------------------------ revno: 2 git commit: 7c277ee54e7d0ea0c44b304897049a01e2d1a44a author: Stephen M. Webb <stephen.webb@bregmasoft.ca> committer: Henrik Rydberg <rydberg@euromail.se> timestamp: Thu 2010-08-05 22:48:37 +0200 message: Configure fixes Adds the mtdev package dependency and fix some smaller issues. Signed-off-by: Stephen M. Webb <stephen.webb@bregmasoft.ca> Signed-off-by: Henrik Rydberg <rydberg@bitmath.org> ------------------------------------------------------------ revno: 1 git commit: 3b837806891de6cf77d4d74d04567e7e68c82fc0 committer: Henrik Rydberg <rydberg@bitmath.org> timestamp: Tue 2010-07-13 11:26:46 +0200 message: Gesture Recognition And Instantiation Library (grail) The aim of this first commit is to get down to hard testing of concepts, and the library currently has two test programs, touch and grail, which can be run on commandline. Touch tests the touch interface, and grail tests the gesture interface. Expect thinking errors and some glitches. Other than that, the code runs fine. Signed-off-by: Henrik Rydberg <rydberg@bitmath.org> ------------------------------------------------------------ Use --include-merges or -n0 to see merged revisions. |