Created by Chase Douglas on 2011-02-08 and last modified on 2011-02-08
Get this branch:
bzr branch lp:~oif-team/grail/no-local-gesture-timeouts
Members of Open Input Framework Team can upload to this branch. Log in for directions.

Branch merges

Related bugs

Related blueprints

Branch information

Open Input Framework Team

Recent revisions

112. By Chase Douglas on 2011-02-08

Only usurp touches for global gestures

The previous change introduced two main functions:

1. Add timeouts within which a gesture must be recognized
2. Withold events from X when a gesture is recognized

While these two are needed for global, system-level gestures, they are
not needed for non-global ("local") gestures. Instead, local gestures are
now sent along side xi 2.1 events, and the client must reconcile the two
as it feels appropriate. This allows for a greater amount of flexibility
and control for gesture and multitouch clients.

111. By Chase Douglas on 2011-02-03

Don't treat key events differently anymore

Left over from grail pointer emulation.

110. By Chase Douglas on 2011-02-03

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

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.

109. By Chase Douglas on 2011-02-02

Remove pointer emulation, X will handle it

108. By Chase Douglas on 2011-02-02

Small compilation warning fixes

Found by using -Wall -Werror

107. By Henrik Rydberg on 2011-01-03

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.

106. By Henrik Rydberg on 2011-01-02

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.

105. By Henrik Rydberg on 2011-01-02

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.

104. By Henrik Rydberg on 2011-01-02

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

103. By Henrik Rydberg on 2011-01-02

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.

Branch metadata

Branch format:
Branch format 7
Repository format:
Bazaar repository format 2a (needs bzr 1.16 or later)
Stacked on:
This branch contains Public information 
Everyone can see this information.