blob: 195797e41ec4330627780948139201fc6734faaa [file] [log] [blame]
The Android Open Source Project8b23a6c2009-03-03 19:30:32 -08001#ifndef _INPUT_H
2#define _INPUT_H
3
4/*
5 * Copyright (c) 1999-2002 Vojtech Pavlik
6 *
7 * This program is free software; you can redistribute it and/or modify it
8 * under the terms of the GNU General Public License version 2 as published by
9 * the Free Software Foundation.
10 */
11
12/*
13 * Keys and buttons
14 */
15
16#define KEY_RESERVED 0
17#define KEY_ESC 1
18#define KEY_1 2
19#define KEY_2 3
20#define KEY_3 4
21#define KEY_4 5
22#define KEY_5 6
23#define KEY_6 7
24#define KEY_7 8
25#define KEY_8 9
26#define KEY_9 10
27#define KEY_0 11
28#define KEY_MINUS 12
29#define KEY_EQUAL 13
30#define KEY_BACKSPACE 14
31#define KEY_TAB 15
32#define KEY_Q 16
33#define KEY_W 17
34#define KEY_E 18
35#define KEY_R 19
36#define KEY_T 20
37#define KEY_Y 21
38#define KEY_U 22
39#define KEY_I 23
40#define KEY_O 24
41#define KEY_P 25
42#define KEY_LEFTBRACE 26
43#define KEY_RIGHTBRACE 27
44#define KEY_ENTER 28
45#define KEY_LEFTCTRL 29
46#define KEY_A 30
47#define KEY_S 31
48#define KEY_D 32
49#define KEY_F 33
50#define KEY_G 34
51#define KEY_H 35
52#define KEY_J 36
53#define KEY_K 37
54#define KEY_L 38
55#define KEY_SEMICOLON 39
56#define KEY_APOSTROPHE 40
57#define KEY_GRAVE 41
58#define KEY_LEFTSHIFT 42
59#define KEY_BACKSLASH 43
60#define KEY_Z 44
61#define KEY_X 45
62#define KEY_C 46
63#define KEY_V 47
64#define KEY_B 48
65#define KEY_N 49
66#define KEY_M 50
67#define KEY_COMMA 51
68#define KEY_DOT 52
69#define KEY_SLASH 53
70#define KEY_RIGHTSHIFT 54
71#define KEY_KPASTERISK 55
72#define KEY_LEFTALT 56
73#define KEY_SPACE 57
74#define KEY_CAPSLOCK 58
75#define KEY_F1 59
76#define KEY_F2 60
77#define KEY_F3 61
78#define KEY_F4 62
79#define KEY_F5 63
80#define KEY_F6 64
81#define KEY_F7 65
82#define KEY_F8 66
83#define KEY_F9 67
84#define KEY_F10 68
85#define KEY_NUMLOCK 69
86#define KEY_SCROLLLOCK 70
87#define KEY_KP7 71
88#define KEY_KP8 72
89#define KEY_KP9 73
90#define KEY_KPMINUS 74
91#define KEY_KP4 75
92#define KEY_KP5 76
93#define KEY_KP6 77
94#define KEY_KPPLUS 78
95#define KEY_KP1 79
96#define KEY_KP2 80
97#define KEY_KP3 81
98#define KEY_KP0 82
99#define KEY_KPDOT 83
100
101#define KEY_ZENKAKUHANKAKU 85
102#define KEY_102ND 86
103#define KEY_F11 87
104#define KEY_F12 88
105#define KEY_RO 89
106#define KEY_KATAKANA 90
107#define KEY_HIRAGANA 91
108#define KEY_HENKAN 92
109#define KEY_KATAKANAHIRAGANA 93
110#define KEY_MUHENKAN 94
111#define KEY_KPJPCOMMA 95
112#define KEY_KPENTER 96
113#define KEY_RIGHTCTRL 97
114#define KEY_KPSLASH 98
115#define KEY_SYSRQ 99
116#define KEY_RIGHTALT 100
117#define KEY_LINEFEED 101
118#define KEY_HOME 102
119#define KEY_UP 103
120#define KEY_PAGEUP 104
121#define KEY_LEFT 105
122#define KEY_RIGHT 106
123#define KEY_END 107
124#define KEY_DOWN 108
125#define KEY_PAGEDOWN 109
126#define KEY_INSERT 110
127#define KEY_DELETE 111
128#define KEY_MACRO 112
129#define KEY_MUTE 113
130#define KEY_VOLUMEDOWN 114
131#define KEY_VOLUMEUP 115
132#define KEY_POWER 116
133#define KEY_KPEQUAL 117
134#define KEY_KPPLUSMINUS 118
135#define KEY_PAUSE 119
136
137#define KEY_KPCOMMA 121
138#define KEY_HANGEUL 122
139#define KEY_HANGUEL KEY_HANGEUL
140#define KEY_HANJA 123
141#define KEY_YEN 124
142#define KEY_LEFTMETA 125
143#define KEY_RIGHTMETA 126
144#define KEY_COMPOSE 127
145
146#define KEY_STOP 128
147#define KEY_AGAIN 129
148#define KEY_PROPS 130
149#define KEY_UNDO 131
150#define KEY_FRONT 132
151#define KEY_COPY 133
152#define KEY_OPEN 134
153#define KEY_PASTE 135
154#define KEY_FIND 136
155#define KEY_CUT 137
156#define KEY_HELP 138
157#define KEY_MENU 139
158#define KEY_CALC 140
159#define KEY_SETUP 141
160#define KEY_SLEEP 142
161#define KEY_WAKEUP 143
162#define KEY_FILE 144
163#define KEY_SENDFILE 145
164#define KEY_DELETEFILE 146
165#define KEY_XFER 147
166#define KEY_PROG1 148
167#define KEY_PROG2 149
168#define KEY_WWW 150
169#define KEY_MSDOS 151
170#define KEY_COFFEE 152
171#define KEY_DIRECTION 153
172#define KEY_CYCLEWINDOWS 154
173#define KEY_MAIL 155
174#define KEY_BOOKMARKS 156
175#define KEY_COMPUTER 157
176#define KEY_BACK 158
177#define KEY_FORWARD 159
178#define KEY_CLOSECD 160
179#define KEY_EJECTCD 161
180#define KEY_EJECTCLOSECD 162
181#define KEY_NEXTSONG 163
182#define KEY_PLAYPAUSE 164
183#define KEY_PREVIOUSSONG 165
184#define KEY_STOPCD 166
185#define KEY_RECORD 167
186#define KEY_REWIND 168
187#define KEY_PHONE 169
188#define KEY_ISO 170
189#define KEY_CONFIG 171
190#define KEY_HOMEPAGE 172
191#define KEY_REFRESH 173
192#define KEY_EXIT 174
193#define KEY_MOVE 175
194#define KEY_EDIT 176
195#define KEY_SCROLLUP 177
196#define KEY_SCROLLDOWN 178
197#define KEY_KPLEFTPAREN 179
198#define KEY_KPRIGHTPAREN 180
199#define KEY_NEW 181
200#define KEY_REDO 182
201
202#define KEY_F13 183
203#define KEY_F14 184
204#define KEY_F15 185
205#define KEY_F16 186
206#define KEY_F17 187
207#define KEY_F18 188
208#define KEY_F19 189
209#define KEY_F20 190
210#define KEY_F21 191
211#define KEY_F22 192
212#define KEY_F23 193
213#define KEY_F24 194
214
215#define KEY_PLAYCD 200
216#define KEY_PAUSECD 201
217#define KEY_PROG3 202
218#define KEY_PROG4 203
219#define KEY_SUSPEND 205
220#define KEY_CLOSE 206
221#define KEY_PLAY 207
222#define KEY_FASTFORWARD 208
223#define KEY_BASSBOOST 209
224#define KEY_PRINT 210
225#define KEY_HP 211
226#define KEY_CAMERA 212
227#define KEY_SOUND 213
228#define KEY_QUESTION 214
229#define KEY_EMAIL 215
230#define KEY_CHAT 216
231#define KEY_SEARCH 217
232#define KEY_CONNECT 218
233#define KEY_FINANCE 219
234#define KEY_SPORT 220
235#define KEY_SHOP 221
236#define KEY_ALTERASE 222
237#define KEY_CANCEL 223
238#define KEY_BRIGHTNESSDOWN 224
239#define KEY_BRIGHTNESSUP 225
240#define KEY_MEDIA 226
241
242
243/*Zeus: these keys are defined for OMAP730 Perseus2*/
244#define KEY_STAR 227
245#define KEY_SHARP 228
246#define KEY_SOFT1 229
247#define KEY_SOFT2 230
248#define KEY_SEND 231
249#define KEY_CENTER 232
250#define KEY_HEADSETHOOK 233
251#define KEY_0_5 234
252#define KEY_2_5 235
253
254#define KEY_SWITCHVIDEOMODE 236
255#define KEY_KBDILLUMTOGGLE 237
256#define KEY_KBDILLUMDOWN 238
257#define KEY_KBDILLUMUP 239
258
259#define KEY_SEND 231
260#define KEY_REPLY 232
261#define KEY_FORWARDMAIL 233
262#define KEY_SAVE 234
263#define KEY_DOCUMENTS 235
264
265#define KEY_BATTERY 236
266
267#define KEY_UNKNOWN 240
268
269#define KEY_NUM 241
270#define KEY_FOCUS 242
271#define KEY_PLUS 243
272#define KEY_NOTIFICATION 244
273
274#define BTN_MISC 0x100
275#define BTN_0 0x100
276#define BTN_1 0x101
277#define BTN_2 0x102
278#define BTN_3 0x103
279#define BTN_4 0x104
280#define BTN_5 0x105
281#define BTN_6 0x106
282#define BTN_7 0x107
283#define BTN_8 0x108
284#define BTN_9 0x109
285
286#define BTN_MOUSE 0x110
287#define BTN_LEFT 0x110
288#define BTN_RIGHT 0x111
289#define BTN_MIDDLE 0x112
290#define BTN_SIDE 0x113
291#define BTN_EXTRA 0x114
292#define BTN_FORWARD 0x115
293#define BTN_BACK 0x116
294#define BTN_TASK 0x117
295
296#define BTN_JOYSTICK 0x120
297#define BTN_TRIGGER 0x120
298#define BTN_THUMB 0x121
299#define BTN_THUMB2 0x122
300#define BTN_TOP 0x123
301#define BTN_TOP2 0x124
302#define BTN_PINKIE 0x125
303#define BTN_BASE 0x126
304#define BTN_BASE2 0x127
305#define BTN_BASE3 0x128
306#define BTN_BASE4 0x129
307#define BTN_BASE5 0x12a
308#define BTN_BASE6 0x12b
309#define BTN_DEAD 0x12f
310
311#define BTN_GAMEPAD 0x130
312#define BTN_A 0x130
313#define BTN_B 0x131
314#define BTN_C 0x132
315#define BTN_X 0x133
316#define BTN_Y 0x134
317#define BTN_Z 0x135
318#define BTN_TL 0x136
319#define BTN_TR 0x137
320#define BTN_TL2 0x138
321#define BTN_TR2 0x139
322#define BTN_SELECT 0x13a
323#define BTN_START 0x13b
324#define BTN_MODE 0x13c
325#define BTN_THUMBL 0x13d
326#define BTN_THUMBR 0x13e
327
328#define BTN_DIGI 0x140
329#define BTN_TOOL_PEN 0x140
330#define BTN_TOOL_RUBBER 0x141
331#define BTN_TOOL_BRUSH 0x142
332#define BTN_TOOL_PENCIL 0x143
333#define BTN_TOOL_AIRBRUSH 0x144
334#define BTN_TOOL_FINGER 0x145
335#define BTN_TOOL_MOUSE 0x146
336#define BTN_TOOL_LENS 0x147
337#define BTN_TOUCH 0x14a
338#define BTN_STYLUS 0x14b
339#define BTN_STYLUS2 0x14c
340#define BTN_TOOL_DOUBLETAP 0x14d
341#define BTN_TOOL_TRIPLETAP 0x14e
342
343#define BTN_WHEEL 0x150
344#define BTN_GEAR_DOWN 0x150
345#define BTN_GEAR_UP 0x151
346
347#define KEY_OK 0x160
348#define KEY_SELECT 0x161
349#define KEY_GOTO 0x162
350#define KEY_CLEAR 0x163
351#define KEY_POWER2 0x164
352#define KEY_OPTION 0x165
353#define KEY_INFO 0x166
354#define KEY_TIME 0x167
355#define KEY_VENDOR 0x168
356#define KEY_ARCHIVE 0x169
357#define KEY_PROGRAM 0x16a
358#define KEY_CHANNEL 0x16b
359#define KEY_FAVORITES 0x16c
360#define KEY_EPG 0x16d
361#define KEY_PVR 0x16e
362#define KEY_MHP 0x16f
363#define KEY_LANGUAGE 0x170
364#define KEY_TITLE 0x171
365#define KEY_SUBTITLE 0x172
366#define KEY_ANGLE 0x173
367#define KEY_ZOOM 0x174
368#define KEY_MODE 0x175
369#define KEY_KEYBOARD 0x176
370#define KEY_SCREEN 0x177
371#define KEY_PC 0x178
372#define KEY_TV 0x179
373#define KEY_TV2 0x17a
374#define KEY_VCR 0x17b
375#define KEY_VCR2 0x17c
376#define KEY_SAT 0x17d
377#define KEY_SAT2 0x17e
378#define KEY_CD 0x17f
379#define KEY_TAPE 0x180
380#define KEY_RADIO 0x181
381#define KEY_TUNER 0x182
382#define KEY_PLAYER 0x183
383#define KEY_TEXT 0x184
384#define KEY_DVD 0x185
385#define KEY_AUX 0x186
386#define KEY_MP3 0x187
387#define KEY_AUDIO 0x188
388#define KEY_VIDEO 0x189
389#define KEY_DIRECTORY 0x18a
390#define KEY_LIST 0x18b
391#define KEY_MEMO 0x18c
392#define KEY_CALENDAR 0x18d
393#define KEY_RED 0x18e
394#define KEY_GREEN 0x18f
395#define KEY_YELLOW 0x190
396#define KEY_BLUE 0x191
397#define KEY_CHANNELUP 0x192
398#define KEY_CHANNELDOWN 0x193
399#define KEY_FIRST 0x194
400#define KEY_LAST 0x195
401#define KEY_AB 0x196
402#define KEY_NEXT 0x197
403#define KEY_RESTART 0x198
404#define KEY_SLOW 0x199
405#define KEY_SHUFFLE 0x19a
406#define KEY_BREAK 0x19b
407#define KEY_PREVIOUS 0x19c
408#define KEY_DIGITS 0x19d
409#define KEY_TEEN 0x19e
410#define KEY_TWEN 0x19f
411
412#define KEY_DEL_EOL 0x1c0
413#define KEY_DEL_EOS 0x1c1
414#define KEY_INS_LINE 0x1c2
415#define KEY_DEL_LINE 0x1c3
416
417#define KEY_FN 0x1d0
418#define KEY_FN_ESC 0x1d1
419#define KEY_FN_F1 0x1d2
420#define KEY_FN_F2 0x1d3
421#define KEY_FN_F3 0x1d4
422#define KEY_FN_F4 0x1d5
423#define KEY_FN_F5 0x1d6
424#define KEY_FN_F6 0x1d7
425#define KEY_FN_F7 0x1d8
426#define KEY_FN_F8 0x1d9
427#define KEY_FN_F9 0x1da
428#define KEY_FN_F10 0x1db
429#define KEY_FN_F11 0x1dc
430#define KEY_FN_F12 0x1dd
431#define KEY_FN_1 0x1de
432#define KEY_FN_2 0x1df
433#define KEY_FN_D 0x1e0
434#define KEY_FN_E 0x1e1
435#define KEY_FN_F 0x1e2
436#define KEY_FN_S 0x1e3
437#define KEY_FN_B 0x1e4
438
439#define KEY_BRL_DOT1 0x1f1
440#define KEY_BRL_DOT2 0x1f2
441#define KEY_BRL_DOT3 0x1f3
442#define KEY_BRL_DOT4 0x1f4
443#define KEY_BRL_DOT5 0x1f5
444#define KEY_BRL_DOT6 0x1f6
445#define KEY_BRL_DOT7 0x1f7
446#define KEY_BRL_DOT8 0x1f8
447
448/* We avoid low common keys in module aliases so they don't get huge. */
449#define KEY_MIN_INTERESTING KEY_MUTE
450#define KEY_MAX 0x1ff
451
Vladimir Chtchetkine8dd31e82012-02-15 17:16:04 -0800452#ifndef ABS_MT_SLOT
453#define ABS_MT_SLOT 0x2f /* MT slot being modified */
454#endif
455#ifndef ABS_MT_TOUCH_MAJOR
456#define ABS_MT_TOUCH_MAJOR 0x30 /* Major axis of touching ellipse */
457#endif
458#ifndef ABS_MT_TOUCH_MINOR
459#define ABS_MT_TOUCH_MINOR 0x31 /* Minor axis (omit if circular) */
460#endif
461#ifndef ABS_MT_WIDTH_MAJOR
462#define ABS_MT_WIDTH_MAJOR 0x32 /* Major axis of approaching ellipse */
463#endif
464#ifndef ABS_MT_WIDTH_MINOR
465#define ABS_MT_WIDTH_MINOR 0x33 /* Minor axis (omit if circular) */
466#endif
467#ifndef ABS_MT_ORIENTATION
468#define ABS_MT_ORIENTATION 0x34 /* Ellipse orientation */
469#endif
470#ifndef ABS_MT_POSITION_X
471#define ABS_MT_POSITION_X 0x35 /* Center X ellipse position */
472#endif
473#ifndef ABS_MT_POSITION_Y
474#define ABS_MT_POSITION_Y 0x36 /* Center Y ellipse position */
475#endif
476#ifndef ABS_MT_TOOL_TYPE
477#define ABS_MT_TOOL_TYPE 0x37 /* Type of touching device */
478#endif
479#ifndef ABS_MT_BLOB_ID
480#define ABS_MT_BLOB_ID 0x38 /* Group a set of packets as a blob */
481#endif
482#ifndef ABS_MT_TRACKING_ID
483#define ABS_MT_TRACKING_ID 0x39 /* Unique ID of initiated contact */
484#endif
485#ifndef ABS_MT_PRESSURE
486#define ABS_MT_PRESSURE 0x3a /* Pressure on contact area */
487#endif
488#ifndef ABS_MT_DISTANCE
489#define ABS_MT_DISTANCE 0x3b /* Contact hover distance */
490#endif
491#ifndef ABS_MAX
492#define ABS_MAX 0x3f
493#endif
494
495#ifndef SYN_REPORT
496#define SYN_REPORT 0
497#endif
498#ifndef SYN_CONFIG
499#define SYN_CONFIG 1
500#endif
501#ifndef SYN_MT_REPORT
502#define SYN_MT_REPORT 2
503#endif
504#ifndef SYN_DROPPED
505#define SYN_DROPPED 3
506#endif
507
The Android Open Source Project8b23a6c2009-03-03 19:30:32 -0800508#endif