5
ginn - Gesture to Keypress / Mouse Button injector
9
ginn [<specific configuration file>]
13
B<ginn> is a program to test support gestures in legacy applications without the
14
need to rewrite them. This support is made by injecting keypresses or mouse
15
buttons after matching rules from wishes.xml file.
17
You can define the matching rules by expressing I<wishes>. Each wish contains
18
the name of the gesture, number of fingers, the matching rules.
19
The keypress to inject is defined by I<key> tag, and the mouse button by
20
I<button>, you can add also up to 4 modifiers keys like I<Control_L>.
29
= <wish gesture="Drag" fingers="2">
30
= <action name="action5" when="update">
31
= <trigger prop="delta y" min="20" max="80"/>
37
= <application name="inkscape">
38
= <wish gesture="Pinch" fingers="2">
39
= <action name="action1" when="update">
40
= <trigger prop="radius delta" min="-200" max="-40"/>
41
= <key>KP_Subtract</key>
49
Gesture type can be : Drag, Pinch, Rotate or Tap
50
The time of injection can be selected by using I<update> to inject when the
51
gesture is received or I<finish> to inject when the gesture is finished.
53
The attributes used in trigger can be obtained by running geistest, you can
54
also refer to the list below.
55
You can use more than one trigger, but you need to use them in the same order
56
as they appear in the list below.
58
Sub-list of general attributes
60
"timestamp" = 180598198
61
"root window id" = 254
62
"event window id" = 159825921
63
"child window id" = 159825921
66
"gesture name" = "Drag"
69
Sub-list of attributes used with Drag gesture
72
"velocity x" = -0.638095
73
"velocity y" = 1.571429
74
"position x" = 634.533386
75
"position y" = 482.777771
77
Sub-list of attributes used with Rotate gesture
78
"angle delta" = -0.358113
79
"angular velocity" = -0.029843
82
Sub-list of attributes used with Pinch gesture
83
"radius delta" = -44.935688
84
"radial velocity" = -3.209692
87
Sub-list of attributes used with Tap gesture
88
"tap time" = 74.000000
89
"position x" = 740.933350
90
"position y" = 469.333344
92
Last attribues in the general list
93
"boundingbox x1" = 634.533386
94
"boundingbox y1" = 482.777771
95
"boundingbox x2" = 634.533386
96
"boundingbox y2" = 482.777771
97
"touch 0 id" = 1079.000000
98
"touch 0 x" = 634.533386
99
"touch 0 y" = 482.777771
102
The names of keys list can be obtained after removing the XK_ prefix from
103
/usr/include/X11/keysymdef.h file
105
The mouse buttons are written with their corresponding number
111
6 Horizontal Wheel Left
112
7 Horizontal Wheel Right
118
I</etc/ginn/wishes.xml>
119
User customized wishes file.
121
I</usr/share/ginn/wishes.xml>
122
Basic ginn wishes file installed for reference.
130
Mohamed Ikbel Boulabiar <boulabiar@gmail.com>
134
Copyright 2010-2011 by Canonical, Ltd.