1 /*
2  * Copyright (c) 2021-2023 Huawei Device Co., Ltd.
3  * Licensed under the Apache License, Version 2.0 (the "License");
4  * you may not use this file except in compliance with the License.
5  * You may obtain a copy of the License at
6  *
7  *     http://www.apache.org/licenses/LICENSE-2.0
8  *
9  * Unless required by applicable law or agreed to in writing, software
10  * distributed under the License is distributed on an "AS IS" BASIS,
11  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12  * See the License for the specific language governing permissions and
13  * limitations under the License.
14  */
15 
16 /**
17  * @addtogroup OH_NativeXComponent Native XComponent
18  * @{
19  */
20 
21 /**
22  * @file native_xcomponent_key_event.h
23  *
24  * @brief Declares enums for key event of Native XComponent.
25  *
26  * @since 10
27  * @version 1.0
28  */
29 
30 #ifndef _NATIVE_INTERFACE_XCOMPONENT_KEY_EVENT_H_
31 #define _NATIVE_INTERFACE_XCOMPONENT_KEY_EVENT_H_
32 
33 #ifdef __cplusplus
34 extern "C" {
35 #endif
36 
37 /**
38  * @brief Represents the key event code.
39  *
40  * @since 10
41  * @version 1.0
42  */
43 typedef enum {
44     KEY_UNKNOWN = -1,
45     KEY_FN = 0,
46     KEY_HOME = 1,
47     KEY_BACK = 2,
48     KEY_MEDIA_PLAY_PAUSE = 10,
49     KEY_MEDIA_STOP = 11,
50     KEY_MEDIA_NEXT = 12,
51     KEY_MEDIA_PREVIOUS = 13,
52     KEY_MEDIA_REWIND = 14,
53     KEY_MEDIA_FAST_FORWARD = 15,
54     KEY_VOLUME_UP = 16,
55     KEY_VOLUME_DOWN = 17,
56     KEY_POWER = 18,
57     KEY_CAMERA = 19,
58     KEY_VOLUME_MUTE = 22,
59     KEY_MUTE = 23,
60     KEY_BRIGHTNESS_UP = 40,
61     KEY_BRIGHTNESS_DOWN = 41,
62     KEY_0 = 2000,
63     KEY_1 = 2001,
64     KEY_2 = 2002,
65     KEY_3 = 2003,
66     KEY_4 = 2004,
67     KEY_5 = 2005,
68     KEY_6 = 2006,
69     KEY_7 = 2007,
70     KEY_8 = 2008,
71     KEY_9 = 2009,
72     KEY_STAR = 2010,
73     KEY_POUND = 2011,
74     KEY_DPAD_UP = 2012,
75     KEY_DPAD_DOWN = 2013,
76     KEY_DPAD_LEFT = 2014,
77     KEY_DPAD_RIGHT = 2015,
78     KEY_DPAD_CENTER = 2016,
79     KEY_A = 2017,
80     KEY_B = 2018,
81     KEY_C = 2019,
82     KEY_D = 2020,
83     KEY_E = 2021,
84     KEY_F = 2022,
85     KEY_G = 2023,
86     KEY_H = 2024,
87     KEY_I = 2025,
88     KEY_J = 2026,
89     KEY_K = 2027,
90     KEY_L = 2028,
91     KEY_M = 2029,
92     KEY_N = 2030,
93     KEY_O = 2031,
94     KEY_P = 2032,
95     KEY_Q = 2033,
96     KEY_R = 2034,
97     KEY_S = 2035,
98     KEY_T = 2036,
99     KEY_U = 2037,
100     KEY_V = 2038,
101     KEY_W = 2039,
102     KEY_X = 2040,
103     KEY_Y = 2041,
104     KEY_Z = 2042,
105     KEY_COMMA = 2043,
106     KEY_PERIOD = 2044,
107     KEY_ALT_LEFT = 2045,
108     KEY_ALT_RIGHT = 2046,
109     KEY_SHIFT_LEFT = 2047,
110     KEY_SHIFT_RIGHT = 2048,
111     KEY_TAB = 2049,
112     KEY_SPACE = 2050,
113     KEY_SYM = 2051,
114     KEY_EXPLORER = 2052,
115     KEY_ENVELOPE = 2053,
116     KEY_ENTER = 2054,
117     KEY_DEL = 2055,
118     KEY_GRAVE = 2056,
119     KEY_MINUS = 2057,
120     KEY_EQUALS = 2058,
121     KEY_LEFT_BRACKET = 2059,
122     KEY_RIGHT_BRACKET = 2060,
123     KEY_BACKSLASH = 2061,
124     KEY_SEMICOLON = 2062,
125     KEY_APOSTROPHE = 2063,
126     KEY_SLASH = 2064,
127     KEY_AT = 2065,
128     KEY_PLUS = 2066,
129     KEY_MENU = 2067,
130     KEY_PAGE_UP = 2068,
131     KEY_PAGE_DOWN = 2069,
132     KEY_ESCAPE = 2070,
133     KEY_FORWARD_DEL = 2071,
134     KEY_CTRL_LEFT = 2072,
135     KEY_CTRL_RIGHT = 2073,
136     KEY_CAPS_LOCK = 2074,
137     KEY_SCROLL_LOCK = 2075,
138     KEY_META_LEFT = 2076,
139     KEY_META_RIGHT = 2077,
140     KEY_FUNCTION = 2078,
141     KEY_SYSRQ = 2079,
142     KEY_BREAK = 2080,
143     KEY_MOVE_HOME = 2081,
144     KEY_MOVE_END = 2082,
145     KEY_INSERT = 2083,
146     KEY_FORWARD = 2084,
147     KEY_MEDIA_PLAY = 2085,
148     KEY_MEDIA_PAUSE = 2086,
149     KEY_MEDIA_CLOSE = 2087,
150     KEY_MEDIA_EJECT = 2088,
151     KEY_MEDIA_RECORD = 2089,
152     KEY_F1 = 2090,
153     KEY_F2 = 2091,
154     KEY_F3 = 2092,
155     KEY_F4 = 2093,
156     KEY_F5 = 2094,
157     KEY_F6 = 2095,
158     KEY_F7 = 2096,
159     KEY_F8 = 2097,
160     KEY_F9 = 2098,
161     KEY_F10 = 2099,
162     KEY_F11 = 2100,
163     KEY_F12 = 2101,
164     KEY_NUM_LOCK = 2102,
165     KEY_NUMPAD_0 = 2103,
166     KEY_NUMPAD_1 = 2104,
167     KEY_NUMPAD_2 = 2105,
168     KEY_NUMPAD_3 = 2106,
169     KEY_NUMPAD_4 = 2107,
170     KEY_NUMPAD_5 = 2108,
171     KEY_NUMPAD_6 = 2109,
172     KEY_NUMPAD_7 = 2110,
173     KEY_NUMPAD_8 = 2111,
174     KEY_NUMPAD_9 = 2112,
175     KEY_NUMPAD_DIVIDE = 2113,
176     KEY_NUMPAD_MULTIPLY = 2114,
177     KEY_NUMPAD_SUBTRACT = 2115,
178     KEY_NUMPAD_ADD = 2116,
179     KEY_NUMPAD_DOT = 2117,
180     KEY_NUMPAD_COMMA = 2118,
181     KEY_NUMPAD_ENTER = 2119,
182     KEY_NUMPAD_EQUALS = 2120,
183     KEY_NUMPAD_LEFT_PAREN = 2121,
184     KEY_NUMPAD_RIGHT_PAREN = 2122,
185     KEY_VIRTUAL_MULTITASK = 2210,
186     KEY_SLEEP = 2600,
187     KEY_ZENKAKU_HANKAKU = 2601,
188     KEY_102ND = 2602,
189     KEY_RO = 2603,
190     KEY_KATAKANA = 2604,
191     KEY_HIRAGANA = 2605,
192     KEY_HENKAN = 2606,
193     KEY_KATAKANA_HIRAGANA = 2607,
194     KEY_MUHENKAN = 2608,
195     KEY_LINEFEED = 2609,
196     KEY_MACRO = 2610,
197     KEY_NUMPAD_PLUSMINUS = 2611,
198     KEY_SCALE = 2612,
199     KEY_HANGUEL = 2613,
200     KEY_HANJA = 2614,
201     KEY_YEN = 2615,
202     KEY_STOP = 2616,
203     KEY_AGAIN = 2617,
204     KEY_PROPS = 2618,
205     KEY_UNDO = 2619,
206     KEY_COPY = 2620,
207     KEY_OPEN = 2621,
208     KEY_PASTE = 2622,
209     KEY_FIND = 2623,
210     KEY_CUT = 2624,
211     KEY_HELP = 2625,
212     KEY_CALC = 2626,
213     KEY_FILE = 2627,
214     KEY_BOOKMARKS = 2628,
215     KEY_NEXT = 2629,
216     KEY_PLAYPAUSE = 2630,
217     KEY_PREVIOUS = 2631,
218     KEY_STOPCD = 2632,
219     KEY_CONFIG = 2634,
220     KEY_REFRESH = 2635,
221     KEY_EXIT = 2636,
222     KEY_EDIT = 2637,
223     KEY_SCROLLUP = 2638,
224     KEY_SCROLLDOWN = 2639,
225     KEY_NEW = 2640,
226     KEY_REDO = 2641,
227     KEY_CLOSE = 2642,
228     KEY_PLAY = 2643,
229     KEY_BASSBOOST = 2644,
230     KEY_PRINT = 2645,
231     KEY_CHAT = 2646,
232     KEY_FINANCE = 2647,
233     KEY_CANCEL = 2648,
234     KEY_KBDILLUM_TOGGLE = 2649,
235     KEY_KBDILLUM_DOWN = 2650,
236     KEY_KBDILLUM_UP = 2651,
237     KEY_SEND = 2652,
238     KEY_REPLY = 2653,
239     KEY_FORWARDMAIL = 2654,
240     KEY_SAVE = 2655,
241     KEY_DOCUMENTS = 2656,
242     KEY_VIDEO_NEXT = 2657,
243     KEY_VIDEO_PREV = 2658,
244     KEY_BRIGHTNESS_CYCLE = 2659,
245     KEY_BRIGHTNESS_ZERO = 2660,
246     KEY_DISPLAY_OFF = 2661,
247     KEY_BTN_MISC = 2662,
248     KEY_GOTO = 2663,
249     KEY_INFO = 2664,
250     KEY_PROGRAM = 2665,
251     KEY_PVR = 2666,
252     KEY_SUBTITLE = 2667,
253     KEY_FULL_SCREEN = 2668,
254     KEY_KEYBOARD = 2669,
255     KEY_ASPECT_RATIO = 2670,
256     KEY_PC = 2671,
257     KEY_TV = 2672,
258     KEY_TV2 = 2673,
259     KEY_VCR = 2674,
260     KEY_VCR2 = 2675,
261     KEY_SAT = 2676,
262     KEY_CD = 2677,
263     KEY_TAPE = 2678,
264     KEY_TUNER = 2679,
265     KEY_PLAYER = 2680,
266     KEY_DVD = 2681,
267     KEY_AUDIO = 2682,
268     KEY_VIDEO = 2683,
269     KEY_MEMO = 2684,
270     KEY_CALENDAR = 2685,
271     KEY_RED = 2686,
272     KEY_GREEN = 2687,
273     KEY_YELLOW = 2688,
274     KEY_BLUE = 2689,
275     KEY_CHANNELUP = 2690,
276     KEY_CHANNELDOWN = 2691,
277     KEY_LAST = 2692,
278     KEY_RESTART = 2693,
279     KEY_SLOW = 2694,
280     KEY_SHUFFLE = 2695,
281     KEY_VIDEOPHONE = 2696,
282     KEY_GAMES = 2697,
283     KEY_ZOOMIN = 2698,
284     KEY_ZOOMOUT = 2699,
285     KEY_ZOOMRESET = 2700,
286     KEY_WORDPROCESSOR = 2701,
287     KEY_EDITOR = 2702,
288     KEY_SPREADSHEET = 2703,
289     KEY_GRAPHICSEDITOR = 2704,
290     KEY_PRESENTATION = 2705,
291     KEY_DATABASE = 2706,
292     KEY_NEWS = 2707,
293     KEY_VOICEMAIL = 2708,
294     KEY_ADDRESSBOOK = 2709,
295     KEY_MESSENGER = 2710,
296     KEY_BRIGHTNESS_TOGGLE = 2711,
297     KEY_SPELLCHECK = 2712,
298     KEY_COFFEE = 2713,
299     KEY_MEDIA_REPEAT = 2714,
300     KEY_IMAGES = 2715,
301     KEY_BUTTONCONFIG = 2716,
302     KEY_TASKMANAGER = 2717,
303     KEY_JOURNAL = 2718,
304     KEY_CONTROLPANEL = 2719,
305     KEY_APPSELECT = 2720,
306     KEY_SCREENSAVER = 2721,
307     KEY_ASSISTANT = 2722,
308     KEY_KBD_LAYOUT_NEXT = 2723,
309     KEY_BRIGHTNESS_MIN = 2724,
310     KEY_BRIGHTNESS_MAX = 2725,
311     KEY_KBDINPUTASSIST_PREV = 2726,
312     KEY_KBDINPUTASSIST_NEXT = 2727,
313     KEY_KBDINPUTASSIST_PREVGROUP = 2728,
314     KEY_KBDINPUTASSIST_NEXTGROUP = 2729,
315     KEY_KBDINPUTASSIST_ACCEPT = 2730,
316     KEY_KBDINPUTASSIST_CANCEL = 2731,
317     KEY_FRONT = 2800,
318     KEY_SETUP = 2801,
319     KEY_WAKEUP = 2802,
320     KEY_SENDFILE = 2803,
321     KEY_DELETEFILE = 2804,
322     KEY_XFER = 2805,
323     KEY_PROG1 = 2806,
324     KEY_PROG2 = 2807,
325     KEY_MSDOS = 2808,
326     KEY_SCREENLOCK = 2809,
327     KEY_DIRECTION_ROTATE_DISPLAY = 2810,
328     KEY_CYCLEWINDOWS = 2811,
329     KEY_COMPUTER = 2812,
330     KEY_EJECTCLOSECD = 2813,
331     KEY_ISO = 2814,
332     KEY_MOVE = 2815,
333     KEY_F13 = 2816,
334     KEY_F14 = 2817,
335     KEY_F15 = 2818,
336     KEY_F16 = 2819,
337     KEY_F17 = 2820,
338     KEY_F18 = 2821,
339     KEY_F19 = 2822,
340     KEY_F20 = 2823,
341     KEY_F21 = 2824,
342     KEY_F22 = 2825,
343     KEY_F23 = 2826,
344     KEY_F24 = 2827,
345     KEY_PROG3 = 2828,
346     KEY_PROG4 = 2829,
347     KEY_DASHBOARD = 2830,
348     KEY_SUSPEND = 2831,
349     KEY_HP = 2832,
350     KEY_SOUND = 2833,
351     KEY_QUESTION = 2834,
352     KEY_CONNECT = 2836,
353     KEY_SPORT = 2837,
354     KEY_SHOP = 2838,
355     KEY_ALTERASE = 2839,
356     KEY_SWITCHVIDEOMODE = 2841,
357     KEY_BATTERY = 2842,
358     KEY_BLUETOOTH = 2843,
359     KEY_WLAN = 2844,
360     KEY_UWB = 2845,
361     KEY_WWAN_WIMAX = 2846,
362     KEY_RFKILL = 2847,
363     KEY_CHANNEL = 3001,
364     KEY_BTN_0 = 3100,
365     KEY_BTN_1 = 3101,
366     KEY_BTN_2 = 3102,
367     KEY_BTN_3 = 3103,
368     KEY_BTN_4 = 3104,
369     KEY_BTN_5 = 3105,
370     KEY_BTN_6 = 3106,
371     KEY_BTN_7 = 3107,
372     KEY_BTN_8 = 3108,
373     KEY_BTN_9 = 3109,
374 } OH_NativeXComponent_KeyCode;
375 
376 /**
377  * @brief Represents the key event action.
378  *
379  * @since 10
380  * @version 1.0
381  */
382 typedef enum {
383     OH_NATIVEXCOMPONENT_KEY_ACTION_UNKNOWN = -1,
384     OH_NATIVEXCOMPONENT_KEY_ACTION_DOWN = 0,
385     OH_NATIVEXCOMPONENT_KEY_ACTION_UP,
386 } OH_NativeXComponent_KeyAction;
387 
388 #ifdef __cplusplus
389 };
390 #endif
391 #endif // _NATIVE_INTERFACE_XCOMPONENT_KEY_EVENT_H_
392