1 /* 2 * Copyright (c) 2024 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 #ifndef OH_KEY_CODE_H 17 #define OH_KEY_CODE_H 18 19 /** 20 * @addtogroup input 21 * @{ 22 * 23 * @brief Provides the C interface in the multi-modal input domain. 24 * 25 * @since 12 26 */ 27 28 /** 29 * @file oh_key_code.h 30 * 31 * @brief Defines the key event structure and related enumeration values. 32 * 33 * @syscap SystemCapability.MultimodalInput.Input.Core 34 * @library libohinput.so 35 * @since 12 36 */ 37 38 #ifdef __cplusplus 39 extern "C" { 40 #endif 41 42 /** 43 * @brief Enumerated values of OpenHarmony key code. 44 * 45 * @since 12 46 */ 47 typedef enum { 48 /** Unknown key */ 49 KEYCODE_UNKNOWN = -1, 50 /** Function (Fn) key */ 51 KEYCODE_FN = 0, 52 /** Volume Up key */ 53 KEYCODE_VOLUME_UP = 16, 54 /** Volume Down button */ 55 KEYCODE_VOLUME_DOWN = 17, 56 /** Power key */ 57 KEYCODE_POWER = 18, 58 /** Shutter key */ 59 KEYCODE_CAMERA = 19, 60 /** Speaker Mute key */ 61 KEYCODE_VOLUME_MUTE = 22, 62 /** Mute key */ 63 KEYCODE_MUTE = 23, 64 /** Brightness Up key */ 65 KEYCODE_BRIGHTNESS_UP = 40, 66 /** Brightness Down key */ 67 KEYCODE_BRIGHTNESS_DOWN = 41, 68 /** Key 0 */ 69 KEYCODE_0 = 2000, 70 /** Key 1 */ 71 KEYCODE_1 = 2001, 72 /** Key 2 */ 73 KEYCODE_2 = 2002, 74 /** Key 3 */ 75 KEYCODE_3 = 2003, 76 /** Key 4 */ 77 KEYCODE_4 = 2004, 78 /** Key 5 */ 79 KEYCODE_5 = 2005, 80 /** Key 6 */ 81 KEYCODE_6 = 2006, 82 /** Key 7 */ 83 KEYCODE_7 = 2007, 84 /** Key 8 */ 85 KEYCODE_8 = 2008, 86 /** Key 9 */ 87 KEYCODE_9 = 2009, 88 /** Key * */ 89 KEYCODE_STAR = 2010, 90 /** Key # */ 91 KEYCODE_POUND = 2011, 92 /** Up key on D-pad */ 93 KEYCODE_DPAD_UP = 2012, 94 /** Down key on D-pad */ 95 KEYCODE_DPAD_DOWN = 2013, 96 /** Left key on D-pad */ 97 KEYCODE_DPAD_LEFT = 2014, 98 /** Right key on D-pad */ 99 KEYCODE_DPAD_RIGHT = 2015, 100 /** OK key on D-pad */ 101 KEYCODE_DPAD_CENTER = 2016, 102 /** Key A */ 103 KEYCODE_A = 2017, 104 /** Key B */ 105 KEYCODE_B = 2018, 106 /** Key C */ 107 KEYCODE_C = 2019, 108 /** Key D */ 109 KEYCODE_D = 2020, 110 /** Key E */ 111 KEYCODE_E = 2021, 112 /** Key F */ 113 KEYCODE_F = 2022, 114 /** Key G */ 115 KEYCODE_G = 2023, 116 /** Key H */ 117 KEYCODE_H = 2024, 118 /** Key I */ 119 KEYCODE_I = 2025, 120 /** Key J */ 121 KEYCODE_J = 2026, 122 /** Key K */ 123 KEYCODE_K = 2027, 124 /** Key L */ 125 KEYCODE_L = 2028, 126 /** Key M */ 127 KEYCODE_M = 2029, 128 /** Key N */ 129 KEYCODE_N = 2030, 130 /** Key O */ 131 KEYCODE_O = 2031, 132 /** Key P */ 133 KEYCODE_P = 2032, 134 /** Key Q */ 135 KEYCODE_Q = 2033, 136 /** Key R */ 137 KEYCODE_R = 2034, 138 /** Key S */ 139 KEYCODE_S = 2035, 140 /** Key T */ 141 KEYCODE_T = 2036, 142 /** Key U */ 143 KEYCODE_U = 2037, 144 /** Key V */ 145 KEYCODE_V = 2038, 146 /** Key W */ 147 KEYCODE_W = 2039, 148 /** Key X */ 149 KEYCODE_X = 2040, 150 /** Key Y */ 151 KEYCODE_Y = 2041, 152 /** Key Z */ 153 KEYCODE_Z = 2042, 154 /** Key , */ 155 KEYCODE_COMMA = 2043, 156 /** Key . */ 157 KEYCODE_PERIOD = 2044, 158 /** Left Alt key */ 159 KEYCODE_ALT_LEFT = 2045, 160 /** Right Alt key */ 161 KEYCODE_ALT_RIGHT = 2046, 162 /** Left Shift key */ 163 KEYCODE_SHIFT_LEFT = 2047, 164 /** Right Shift key */ 165 KEYCODE_SHIFT_RIGHT = 2048, 166 /** Tab key */ 167 KEYCODE_TAB = 2049, 168 /** Space key */ 169 KEYCODE_SPACE = 2050, 170 /** Symbol key */ 171 KEYCODE_SYM = 2051, 172 /** Explorer key, used to start the explorer application */ 173 KEYCODE_EXPLORER = 2052, 174 /** Email key, used to start the email application */ 175 KEYCODE_ENVELOPE = 2053, 176 /** Enter key */ 177 KEYCODE_ENTER = 2054, 178 /** Backspace key */ 179 KEYCODE_DEL = 2055, 180 /** Key * */ 181 KEYCODE_GRAVE = 2056, 182 /** Key - */ 183 KEYCODE_MINUS = 2057, 184 /** Key = */ 185 KEYCODE_EQUALS = 2058, 186 /** Key [ */ 187 KEYCODE_LEFT_BRACKET = 2059, 188 /** Key ] */ 189 KEYCODE_RIGHT_BRACKET = 2060, 190 /** Key \ */ 191 KEYCODE_BACKSLASH = 2061, 192 /** Key ; */ 193 KEYCODE_SEMICOLON = 2062, 194 /** Key ' */ 195 KEYCODE_APOSTROPHE = 2063, 196 /** Key / */ 197 KEYCODE_SLASH = 2064, 198 /** Key @ */ 199 KEYCODE_AT = 2065, 200 /** Key + */ 201 KEYCODE_PLUS = 2066, 202 /** Menu key */ 203 KEYCODE_MENU = 2067, 204 /** Page Up key */ 205 KEYCODE_PAGE_UP = 2068, 206 /** Page Down key */ 207 KEYCODE_PAGE_DOWN = 2069, 208 /** ESC key */ 209 KEYCODE_ESCAPE = 2070, 210 /** Delete key */ 211 KEYCODE_FORWARD_DEL = 2071, 212 /** Left Ctrl key */ 213 KEYCODE_CTRL_LEFT = 2072, 214 /** Right Ctrl key */ 215 KEYCODE_CTRL_RIGHT = 2073, 216 /** Caps Lock key */ 217 KEYCODE_CAPS_LOCK = 2074, 218 /** Scroll Lock key */ 219 KEYCODE_SCROLL_LOCK = 2075, 220 /** Left Meta key */ 221 KEYCODE_META_LEFT = 2076, 222 /** Right Meta key */ 223 KEYCODE_META_RIGHT = 2077, 224 /** Function key */ 225 KEYCODE_FUNCTION = 2078, 226 /** System Request/Print Screen key */ 227 KEYCODE_SYSRQ = 2079, 228 /** Break/Pause key */ 229 KEYCODE_BREAK = 2080, 230 /** Move to Home key */ 231 KEYCODE_MOVE_HOME = 2081, 232 /** Move to End key */ 233 KEYCODE_MOVE_END = 2082, 234 /** Insert key */ 235 KEYCODE_INSERT = 2083, 236 /** Forward key */ 237 KEYCODE_FORWARD = 2084, 238 /** Play key */ 239 KEYCODE_MEDIA_PLAY = 2085, 240 /** Pause key */ 241 KEYCODE_MEDIA_PAUSE = 2086, 242 /** Close key */ 243 KEYCODE_MEDIA_CLOSE = 2087, 244 /** Eject key */ 245 KEYCODE_MEDIA_EJECT = 2088, 246 /** Record key */ 247 KEYCODE_MEDIA_RECORD = 2089, 248 /** F1 key */ 249 KEYCODE_F1 = 2090, 250 /** F2 key */ 251 KEYCODE_F2 = 2091, 252 /** F3 key */ 253 KEYCODE_F3 = 2092, 254 /** F4 key */ 255 KEYCODE_F4 = 2093, 256 /** F5 key */ 257 KEYCODE_F5 = 2094, 258 /** F6 key */ 259 KEYCODE_F6 = 2095, 260 /** F7 key */ 261 KEYCODE_F7 = 2096, 262 /** F8 key */ 263 KEYCODE_F8 = 2097, 264 /** F9 key */ 265 KEYCODE_F9 = 2098, 266 /** F10 key */ 267 KEYCODE_F10 = 2099, 268 /** F11 key */ 269 KEYCODE_F11 = 2100, 270 /** F12 key */ 271 KEYCODE_F12 = 2101, 272 /** Number Lock key on numeric keypad */ 273 KEYCODE_NUM_LOCK = 2102, 274 /** Key 0 on numeric keypad */ 275 KEYCODE_NUMPAD_0 = 2103, 276 /** Key 1 on numeric keypad */ 277 KEYCODE_NUMPAD_1 = 2104, 278 /** Key 2 on numeric keypad */ 279 KEYCODE_NUMPAD_2 = 2105, 280 /** Key 3 on numeric keypad */ 281 KEYCODE_NUMPAD_3 = 2106, 282 /** Key 4 on numeric keypad */ 283 KEYCODE_NUMPAD_4 = 2107, 284 /** Key 5 on numeric keypad */ 285 KEYCODE_NUMPAD_5 = 2108, 286 /** Key 6 on numeric keypad */ 287 KEYCODE_NUMPAD_6 = 2109, 288 /** Key 7 on numeric keypad */ 289 KEYCODE_NUMPAD_7 = 2110, 290 /** Key 8 on numeric keypad */ 291 KEYCODE_NUMPAD_8 = 2111, 292 /** Key 9 on numeric keypad */ 293 KEYCODE_NUMPAD_9 = 2112, 294 /** Key / on numeric keypad */ 295 KEYCODE_NUMPAD_DIVIDE = 2113, 296 /** Key * on numeric keypad */ 297 KEYCODE_NUMPAD_MULTIPLY = 2114, 298 /** Key - on numeric keypad */ 299 KEYCODE_NUMPAD_SUBTRACT = 2115, 300 /** Key + on numeric keypad */ 301 KEYCODE_NUMPAD_ADD = 2116, 302 /** Key . on numeric keypad */ 303 KEYCODE_NUMPAD_DOT = 2117, 304 /** Key , on numeric keypad */ 305 KEYCODE_NUMPAD_COMMA = 2118, 306 /** Enter key on numeric keypad */ 307 KEYCODE_NUMPAD_ENTER = 2119, 308 /** Key = on numeric keypad */ 309 KEYCODE_NUMPAD_EQUALS = 2120, 310 /** Key ( on numeric keypad */ 311 KEYCODE_NUMPAD_LEFT_PAREN = 2121, 312 /** Key ) on numeric keypad */ 313 KEYCODE_NUMPAD_RIGHT_PAREN = 2122 314 } Input_KeyCode; 315 316 #ifdef __cplusplus 317 } 318 #endif 319 /** @} */ 320 321 #endif /* OH_KEY_CODE_H */ 322