summaryrefslogtreecommitdiff
path: root/src/grail-impl.h
Commit message (Collapse)AuthorAgeFilesLines
* Update copyright informationHEADmasterHenrik Rydberg2011-04-281-2/+1
| | | | | | | | The license information was always right, but the copyright information for this particular project was never quite right. Corrected with this patch. No functional changes. Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
* Introduce gesture framesHenrik Rydberg2011-04-281-0/+38
| | | | | | | | | | This patch extends the API with parallel new/delete functions, aiming to eventually replace the open/close function. The new functions give access to the grail gesture frames, containing gestural transform information. This information is useful in its own right, and will eventually replace the internal recognizer. Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
* Prepare for gesture frame additionsHenrik Rydberg2011-04-281-1/+1
| | | | | | | Rename internal variables and fix makefile to make room for new targets. Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
* Allow replay of device data through grailHenrik Rydberg2011-04-041-0/+1
| | | | | | | | | | | This patch adds replay capabilities to grail. If the specified device points to a valid evemu file, the device properties will be extracted from that file instead. Any appended event data will be replayed in realtime when calling grail_pull_mtdev(). In practise, grail_gesture may be executed with a test file. Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
* Introduce gesture timeoutsHenrik Rydberg2011-03-141-0/+2
| | | | | | | | | 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>
* Remove pointer emulationChase Douglas2011-03-141-7/+0
| | | | | | | | With the assumption that X will be handle to handle the gesture cases correctly, remove the pointer emulation 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-3/+14
| | | | | | | | | | | 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>
* Prepare for queued event handlingHenrik Rydberg2011-01-021-0/+2
| | | | | | | | | 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. Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
* Use a unified pointer emulation modelHenrik Rydberg2010-11-171-0/+1
| | | | | | | | | | | | | | | 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. Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
* Split pointer status and report statusHenrik Rydberg2010-09-211-0/+2
| | | | | | | Separate out reporting of the touch state, such that reporting can be deferred. Does not introduce any logic changes. Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
* bug: Only report position change eventsHenrik Rydberg2010-09-211-0/+1
| | | | | | | This bug was introduced in v1.0.11. Only report events when the pointer position is actually changing. Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
* Correct abs event handlingHenrik Rydberg2010-08-261-1/+2
| | | | | | | | | | 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. Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
* Make grail implementation visible to all local filesHenrik Rydberg2010-08-191-0/+36
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>