blob: 747925de7054a9eb06f02baa08e524ca9de266ed [file] [log] [blame]
The Android Open Source Project7c1b96a2008-10-21 07:00:00 -07001/*
2 * Copyright (C) 2008 The Android Open Source Project
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16
17#ifndef _UI_KEYCODE_LABELS_H
18#define _UI_KEYCODE_LABELS_H
19
20struct KeycodeLabel {
21 const char *literal;
22 int value;
23};
24
25static const KeycodeLabel KEYCODES[] = {
26 { "SOFT_LEFT", 1 },
27 { "SOFT_RIGHT", 2 },
28 { "HOME", 3 },
29 { "BACK", 4 },
30 { "CALL", 5 },
31 { "ENDCALL", 6 },
32 { "0", 7 },
33 { "1", 8 },
34 { "2", 9 },
35 { "3", 10 },
36 { "4", 11 },
37 { "5", 12 },
38 { "6", 13 },
39 { "7", 14 },
40 { "8", 15 },
41 { "9", 16 },
42 { "STAR", 17 },
43 { "POUND", 18 },
44 { "DPAD_UP", 19 },
45 { "DPAD_DOWN", 20 },
46 { "DPAD_LEFT", 21 },
47 { "DPAD_RIGHT", 22 },
48 { "DPAD_CENTER", 23 },
49 { "VOLUME_UP", 24 },
50 { "VOLUME_DOWN", 25 },
51 { "POWER", 26 },
52 { "CAMERA", 27 },
53 { "CLEAR", 28 },
54 { "A", 29 },
55 { "B", 30 },
56 { "C", 31 },
57 { "D", 32 },
58 { "E", 33 },
59 { "F", 34 },
60 { "G", 35 },
61 { "H", 36 },
62 { "I", 37 },
63 { "J", 38 },
64 { "K", 39 },
65 { "L", 40 },
66 { "M", 41 },
67 { "N", 42 },
68 { "O", 43 },
69 { "P", 44 },
70 { "Q", 45 },
71 { "R", 46 },
72 { "S", 47 },
73 { "T", 48 },
74 { "U", 49 },
75 { "V", 50 },
76 { "W", 51 },
77 { "X", 52 },
78 { "Y", 53 },
79 { "Z", 54 },
80 { "COMMA", 55 },
81 { "PERIOD", 56 },
82 { "ALT_LEFT", 57 },
83 { "ALT_RIGHT", 58 },
84 { "SHIFT_LEFT", 59 },
85 { "SHIFT_RIGHT", 60 },
86 { "TAB", 61 },
87 { "SPACE", 62 },
88 { "SYM", 63 },
89 { "EXPLORER", 64 },
90 { "ENVELOPE", 65 },
91 { "ENTER", 66 },
92 { "DEL", 67 },
93 { "GRAVE", 68 },
94 { "MINUS", 69 },
95 { "EQUALS", 70 },
96 { "LEFT_BRACKET", 71 },
97 { "RIGHT_BRACKET", 72 },
98 { "BACKSLASH", 73 },
99 { "SEMICOLON", 74 },
100 { "APOSTROPHE", 75 },
101 { "SLASH", 76 },
102 { "AT", 77 },
103 { "NUM", 78 },
104 { "HEADSETHOOK", 79 },
105 { "FOCUS", 80 },
106 { "PLUS", 81 },
107 { "MENU", 82 },
108 { "NOTIFICATION", 83 },
109 { "SEARCH", 84 },
110
111 // NOTE: If you add a new keycode here you must also add it to:
112 // (enum KeyCode, in this file)
113 // java/android/android/view/KeyEvent.java
114 // tools/puppet_master/PuppetMaster.nav_keys.py
115 // apps/common/res/values/attrs.xml
116
117 { NULL, 0 }
118};
119
120// These constants need to match the above mappings.
121typedef enum KeyCode {
122 kKeyCodeUnknown = 0,
123
124 kKeyCodeSoftLeft = 1,
125 kKeyCodeSoftRight = 2,
126 kKeyCodeHome = 3,
127 kKeyCodeBack = 4,
128 kKeyCodeCall = 5,
129 kKeyCodeEndCall = 6,
130 kKeyCode0 = 7,
131 kKeyCode1 = 8,
132 kKeyCode2 = 9,
133 kKeyCode3 = 10,
134 kKeyCode4 = 11,
135 kKeyCode5 = 12,
136 kKeyCode6 = 13,
137 kKeyCode7 = 14,
138 kKeyCode8 = 15,
139 kKeyCode9 = 16,
140 kKeyCodeStar = 17,
141 kKeyCodePound = 18,
142 kKeyCodeDpadUp = 19,
143 kKeyCodeDpadDown = 20,
144 kKeyCodeDpadLeft = 21,
145 kKeyCodeDpadRight = 22,
146 kKeyCodeDpadCenter = 23,
147 kKeyCodeVolumeUp = 24,
148 kKeyCodeVolumeDown = 25,
149 kKeyCodePower = 26,
150 kKeyCodeCamera = 27,
151 kKeyCodeClear = 28,
152 kKeyCodeA = 29,
153 kKeyCodeB = 30,
154 kKeyCodeC = 31,
155 kKeyCodeD = 32,
156 kKeyCodeE = 33,
157 kKeyCodeF = 34,
158 kKeyCodeG = 35,
159 kKeyCodeH = 36,
160 kKeyCodeI = 37,
161 kKeyCodeJ = 38,
162 kKeyCodeK = 39,
163 kKeyCodeL = 40,
164 kKeyCodeM = 41,
165 kKeyCodeN = 42,
166 kKeyCodeO = 43,
167 kKeyCodeP = 44,
168 kKeyCodeQ = 45,
169 kKeyCodeR = 46,
170 kKeyCodeS = 47,
171 kKeyCodeT = 48,
172 kKeyCodeU = 49,
173 kKeyCodeV = 50,
174 kKeyCodeW = 51,
175 kKeyCodeX = 52,
176 kKeyCodeY = 53,
177 kKeyCodeZ = 54,
178 kKeyCodeComma = 55,
179 kKeyCodePeriod = 56,
180 kKeyCodeAltLeft = 57,
181 kKeyCodeAltRight = 58,
182 kKeyCodeShiftLeft = 59,
183 kKeyCodeShiftRight = 60,
184 kKeyCodeTab = 61,
185 kKeyCodeSpace = 62,
186 kKeyCodeSym = 63,
187 kKeyCodeExplorer = 64,
188 kKeyCodeEnvelope = 65,
189 kKeyCodeNewline = 66,
190 kKeyCodeDel = 67,
191 kKeyCodeGrave = 68,
192 kKeyCodeMinus = 69,
193 kKeyCodeEquals = 70,
194 kKeyCodeLeftBracket = 71,
195 kKeyCodeRightBracket = 72,
196 kKeyCodeBackslash = 73,
197 kKeyCodeSemicolon = 74,
198 kKeyCodeApostrophe = 75,
199 kKeyCodeSlash = 76,
200 kKeyCodeAt = 77,
201 kKeyCodeNum = 78,
202 kKeyCodeHeadSetHook = 79,
203 kKeyCodeFocus = 80,
204 kKeyCodePlus = 81,
205 kKeyCodeMenu = 82,
206 kKeyCodeNotification = 83,
207 kKeyCodeSearch = 84
208} KeyCode;
209
210static const KeycodeLabel FLAGS[] = {
211 { "WAKE", 0x00000001 },
212 { "WAKE_DROPPED", 0x00000002 },
213 { "SHIFT", 0x00000004 },
214 { "CAPS_LOCK", 0x00000008 },
215 { "ALT", 0x00000010 },
216 { "ALT_GR", 0x00000020 },
217 { "MENU", 0x00000040 },
218 { "LAUNCHER", 0x00000080 },
219 { NULL, 0 }
220};
221
222#endif // _UI_KEYCODE_LABELS_H