summaryrefslogtreecommitdiff
path: root/src/grail-recognizer.h
Commit message (Collapse)AuthorAgeFilesLines
* Introduce touch gesture eventsHenrik Rydberg2011-03-281-0/+2
| | | | | | | Touch gesture events follow the same logic as drags, except they cannot be held back but are emitted immediately. Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
* Introduce gesture timeoutsHenrik Rydberg2011-03-141-8/+0
| | | | | | | | | 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. Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
* Add in time boundaries for recognitionChase Douglas2011-03-141-0/+8
| | | | | | | | | | | | | | | | | | | | | 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. [rydberg@euromail.se: this patch is severely restrictive and not final] Signed-off-by: Chase Douglas <chase.douglas@canonical.com> Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
* Replace touch logic with utouch frame engineHenrik Rydberg2011-01-021-2/+1
| | | | | | | | | | | 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. Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
* Add environment and meta gesturesHenrik Rydberg2010-08-111-0/+3
| | | | | | | | | | | 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. Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
* always send pointer movement gesturesHenrik Rydberg2010-08-101-1/+0
| | | | | | | 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. Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
* api: Rename gestures to conform to design docsHenrik Rydberg2010-08-101-2/+1
| | | | | | Use the names drag, pinch and rotate, and remove the combo gesture. Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
* Add configurable pointer gestureHenrik Rydberg2010-08-071-0/+1
| | | | | | | | 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@euromail.se>
* Update README and copyright in all filesHenrik Rydberg2010-08-061-3/+1
| | | | | | Add the author to the copyright, courtesy of Canonical Ltd. Signed-off-by: Henrik Rydberg <rydberg@bitmath.org>
* initial bzr repo at rev 27Henrik Rydberg2010-08-061-0/+44