Submit A Tip Alternative Tip Form

Ginn – Forcing non-multitouch-aware applications to support multitouch in Ubuntu

With the release of Canonical’s uTouch framework providing Multi-touch support in Ubuntu 10.10 many of us have been wondering how everyday applications, those not designed for multi-touch per se but rather clicks and keyboard presses, will handle this.

Mohamed Ikbel Boulabiar stopped by the OMG! Mail box to share ace project he’s been working on that aims to address this…

“Applications which are non-multitouch-aware only recognize events which come from the keyboard and the mouse like key-presses and mouse clicks.” he began. “Last year in the LII-ENAC Lab in Toulouse, we were discussing on how to deal with advanced input devices handling and how to develop this inside operating systems like Linux.”

“One of the ideas is to consider the input as bricks which can be chained, modifying and enriching the information in each phase. And in the end of the chain, the input should take place in receivers, and
one of the methods is to inject them in a way the application can recognize easily.”

Enter Ginn, which stands for Gesture Injector: No-GEIS, No-GTK. Ginn is a daemon service which listens to ‘gestures’ from the uTouch stack and injects ‘common keypress events inside applications according to the predefined rules.’

Sounds good but does it work?

Below are two videos demonstrating the concept and showing what it is possible to do with the multitouch stack.

Evince
Inkscape

Catching the next Dbus

Ginn doesn’t use DBus communication API facilities currently but support for this could easily be added later to get direct control on applications.

“It can be also useful for closed-source applications running on Linux as they will be forced to accept multitouch events even completely without detecting them”

Thanks to Mohamed Ikbel Boulabiar