widget/shared/NativeKeyToDOMKeyName.h

Thu, 22 Jan 2015 13:21:57 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Thu, 22 Jan 2015 13:21:57 +0100
branch
TOR_BUG_9701
changeset 15
b8a032363ba2
permissions
-rw-r--r--

Incorporate requested changes from Mozilla in review:
https://bugzilla.mozilla.org/show_bug.cgi?id=1123480#c6

michael@0 1 /* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
michael@0 2 /* vim: set ts=2 et sw=2 tw=80: */
michael@0 3 /* This Source Code Form is subject to the terms of the Mozilla Public
michael@0 4 * License, v. 2.0. If a copy of the MPL was not distributed with this file,
michael@0 5 * You can obtain one at http://mozilla.org/MPL/2.0/. */
michael@0 6
michael@0 7 /**
michael@0 8 * This header file defines simple key mapping between native keycode value and
michael@0 9 * DOM key name index.
michael@0 10 * You must define NS_NATIVE_KEY_TO_DOM_KEY_NAME_INDEX macro before include
michael@0 11 * this.
michael@0 12 *
michael@0 13 * It must have two arguments, (aNativeKey, aKeyNameIndex).
michael@0 14 * aNativeKey is a native keycode value.
michael@0 15 * aKeyNameIndex is the widget::KeyNameIndex value.
michael@0 16 */
michael@0 17
michael@0 18 // Windows (both Desktop and Metro)
michael@0 19 #define KEY_MAP_WIN(aCPPKeyName, aNativeKey)
michael@0 20 #define KEY_MAP_WIN_JPN(aCPPKeyName, aNativeKey)
michael@0 21 #define KEY_MAP_WIN_KOR(aCPPKeyName, aNativeKey)
michael@0 22 #define KEY_MAP_WIN_OTH(aCPPKeyName, aNativeKey)
michael@0 23 // OS/2
michael@0 24 #define KEY_MAP_OS2(aCPPKeyName, aNativeKey)
michael@0 25 // Mac OS X
michael@0 26 #define KEY_MAP_COCOA(aCPPKeyName, aNativeKey)
michael@0 27 // GTK
michael@0 28 #define KEY_MAP_GTK(aCPPKeyName, aNativeKey)
michael@0 29 // Qt
michael@0 30 #define KEY_MAP_QT(aCPPKeyName, aNativeKey)
michael@0 31 // Android and Gonk
michael@0 32 #define KEY_MAP_ANDROID(aCPPKeyName, aNativeKey)
michael@0 33
michael@0 34 #if defined(XP_WIN)
michael@0 35 // KEY_MAP_WIN() defines the mapping not depending on keyboard layout.
michael@0 36 #undef KEY_MAP_WIN
michael@0 37 #define KEY_MAP_WIN(aCPPKeyName, aNativeKey) \
michael@0 38 NS_NATIVE_KEY_TO_DOM_KEY_NAME_INDEX(aNativeKey, KEY_NAME_INDEX_##aCPPKeyName)
michael@0 39 // KEY_MAP_WIN_JPN() defines the mapping which is valid only with Japanese
michael@0 40 // keyboard layout.
michael@0 41 #undef KEY_MAP_WIN_JPN
michael@0 42 #define KEY_MAP_WIN_JPN(aCPPKeyName, aNativeKey) \
michael@0 43 NS_JAPANESE_NATIVE_KEY_TO_DOM_KEY_NAME_INDEX(aNativeKey, \
michael@0 44 KEY_NAME_INDEX_##aCPPKeyName)
michael@0 45 // KEY_MAP_WIN_KOR() defines the mapping which is valid only with Korean
michael@0 46 // keyboard layout.
michael@0 47 #undef KEY_MAP_WIN_KOR
michael@0 48 #define KEY_MAP_WIN_KOR(aCPPKeyName, aNativeKey) \
michael@0 49 NS_KOREAN_NATIVE_KEY_TO_DOM_KEY_NAME_INDEX(aNativeKey, \
michael@0 50 KEY_NAME_INDEX_##aCPPKeyName)
michael@0 51 // KEY_MAP_WIN_OTH() defines the mapping which is valid with neither
michael@0 52 // Japanese keyboard layout nor Korean keyboard layout.
michael@0 53 #undef KEY_MAP_WIN_OTH
michael@0 54 #define KEY_MAP_WIN_OTH(aCPPKeyName, aNativeKey) \
michael@0 55 NS_OTHER_NATIVE_KEY_TO_DOM_KEY_NAME_INDEX(aNativeKey, \
michael@0 56 KEY_NAME_INDEX_##aCPPKeyName)
michael@0 57 #elif defined(XP_MACOSX)
michael@0 58 #undef KEY_MAP_COCOA
michael@0 59 #define KEY_MAP_COCOA(aCPPKeyName, aNativeKey) \
michael@0 60 NS_NATIVE_KEY_TO_DOM_KEY_NAME_INDEX(aNativeKey, KEY_NAME_INDEX_##aCPPKeyName)
michael@0 61 #elif defined(MOZ_WIDGET_GTK)
michael@0 62 #undef KEY_MAP_GTK
michael@0 63 #define KEY_MAP_GTK(aCPPKeyName, aNativeKey) \
michael@0 64 NS_NATIVE_KEY_TO_DOM_KEY_NAME_INDEX(aNativeKey, KEY_NAME_INDEX_##aCPPKeyName)
michael@0 65 #elif defined(MOZ_WIDGET_QT)
michael@0 66 #undef KEY_MAP_QT
michael@0 67 #define KEY_MAP_QT(aCPPKeyName, aNativeKey) \
michael@0 68 NS_NATIVE_KEY_TO_DOM_KEY_NAME_INDEX(aNativeKey, KEY_NAME_INDEX_##aCPPKeyName)
michael@0 69 #elif defined(ANDROID)
michael@0 70 #undef KEY_MAP_ANDROID
michael@0 71 #define KEY_MAP_ANDROID(aCPPKeyName, aNativeKey) \
michael@0 72 NS_NATIVE_KEY_TO_DOM_KEY_NAME_INDEX(aNativeKey, KEY_NAME_INDEX_##aCPPKeyName)
michael@0 73 #endif
michael@0 74
michael@0 75 // Attn
michael@0 76 KEY_MAP_WIN_OTH (Attn, VK_ATTN) // not valid with Japanese keyboard layout
michael@0 77 KEY_MAP_GTK (Attn, GDK_3270_Attn) // legacy IBM keyboard layout
michael@0 78
michael@0 79 // Apps
michael@0 80 KEY_MAP_ANDROID (Apps, AKEYCODE_APP_SWITCH)
michael@0 81
michael@0 82 // Crsel
michael@0 83 KEY_MAP_WIN (Crsel, VK_CRSEL)
michael@0 84 KEY_MAP_GTK (Crsel, GDK_3270_CursorSelect) // legacy IBM keyboard layout
michael@0 85
michael@0 86 // Exsel
michael@0 87 KEY_MAP_WIN (Exsel, VK_EXSEL)
michael@0 88 KEY_MAP_GTK (Exsel, GDK_3270_ExSelect) // legacy IBM keyboard layout
michael@0 89
michael@0 90 // F1
michael@0 91 KEY_MAP_WIN (F1, VK_F1)
michael@0 92 KEY_MAP_COCOA (F1, kVK_F1)
michael@0 93 KEY_MAP_GTK (F1, GDK_F1)
michael@0 94 KEY_MAP_GTK (F1, GDK_KP_F1)
michael@0 95 KEY_MAP_QT (F1, Qt::Key_F1)
michael@0 96 KEY_MAP_ANDROID (F1, AKEYCODE_F1)
michael@0 97
michael@0 98 // F2
michael@0 99 KEY_MAP_WIN (F2, VK_F2)
michael@0 100 KEY_MAP_COCOA (F2, kVK_F2)
michael@0 101 KEY_MAP_GTK (F2, GDK_F2)
michael@0 102 KEY_MAP_GTK (F2, GDK_KP_F2)
michael@0 103 KEY_MAP_QT (F2, Qt::Key_F2)
michael@0 104 KEY_MAP_ANDROID (F2, AKEYCODE_F2)
michael@0 105
michael@0 106 // F3
michael@0 107 KEY_MAP_WIN (F3, VK_F3)
michael@0 108 KEY_MAP_COCOA (F3, kVK_F3)
michael@0 109 KEY_MAP_GTK (F3, GDK_F3)
michael@0 110 KEY_MAP_GTK (F3, GDK_KP_F3)
michael@0 111 KEY_MAP_QT (F3, Qt::Key_F3)
michael@0 112 KEY_MAP_ANDROID (F3, AKEYCODE_F3)
michael@0 113
michael@0 114 // F4
michael@0 115 KEY_MAP_WIN (F4, VK_F4)
michael@0 116 KEY_MAP_COCOA (F4, kVK_F4)
michael@0 117 KEY_MAP_GTK (F4, GDK_F4)
michael@0 118 KEY_MAP_GTK (F4, GDK_KP_F4)
michael@0 119 KEY_MAP_QT (F4, Qt::Key_F4)
michael@0 120 KEY_MAP_ANDROID (F4, AKEYCODE_F4)
michael@0 121
michael@0 122 // F5
michael@0 123 KEY_MAP_WIN (F5, VK_F5)
michael@0 124 KEY_MAP_COCOA (F5, kVK_F5)
michael@0 125 KEY_MAP_GTK (F5, GDK_F5)
michael@0 126 KEY_MAP_QT (F5, Qt::Key_F5)
michael@0 127 KEY_MAP_ANDROID (F5, AKEYCODE_F5)
michael@0 128
michael@0 129 // F6
michael@0 130 KEY_MAP_WIN (F6, VK_F6)
michael@0 131 KEY_MAP_COCOA (F6, kVK_F6)
michael@0 132 KEY_MAP_GTK (F6, GDK_F6)
michael@0 133 KEY_MAP_QT (F6, Qt::Key_F6)
michael@0 134 KEY_MAP_ANDROID (F6, AKEYCODE_F6)
michael@0 135
michael@0 136 // F7
michael@0 137 KEY_MAP_WIN (F7, VK_F7)
michael@0 138 KEY_MAP_COCOA (F7, kVK_F7)
michael@0 139 KEY_MAP_GTK (F7, GDK_F7)
michael@0 140 KEY_MAP_QT (F7, Qt::Key_F7)
michael@0 141 KEY_MAP_ANDROID (F7, AKEYCODE_F7)
michael@0 142
michael@0 143 // F8
michael@0 144 KEY_MAP_WIN (F8, VK_F8)
michael@0 145 KEY_MAP_COCOA (F8, kVK_F8)
michael@0 146 KEY_MAP_GTK (F8, GDK_F8)
michael@0 147 KEY_MAP_QT (F8, Qt::Key_F8)
michael@0 148 KEY_MAP_ANDROID (F8, AKEYCODE_F8)
michael@0 149
michael@0 150 // F9
michael@0 151 KEY_MAP_WIN (F9, VK_F9)
michael@0 152 KEY_MAP_COCOA (F9, kVK_F9)
michael@0 153 KEY_MAP_GTK (F9, GDK_F9)
michael@0 154 KEY_MAP_QT (F9, Qt::Key_F9)
michael@0 155 KEY_MAP_ANDROID (F9, AKEYCODE_F9)
michael@0 156
michael@0 157 // F10
michael@0 158 KEY_MAP_WIN (F10, VK_F10)
michael@0 159 KEY_MAP_COCOA (F10, kVK_F10)
michael@0 160 KEY_MAP_GTK (F10, GDK_F10)
michael@0 161 KEY_MAP_QT (F10, Qt::Key_F10)
michael@0 162 KEY_MAP_ANDROID (F10, AKEYCODE_F10)
michael@0 163
michael@0 164 // F11
michael@0 165 KEY_MAP_WIN (F11, VK_F11)
michael@0 166 KEY_MAP_COCOA (F11, kVK_F11)
michael@0 167 KEY_MAP_GTK (F11, GDK_F11 /* same as GDK_L1 */)
michael@0 168 KEY_MAP_QT (F11, Qt::Key_F11)
michael@0 169 KEY_MAP_ANDROID (F11, AKEYCODE_F11)
michael@0 170
michael@0 171 // F12
michael@0 172 KEY_MAP_WIN (F12, VK_F12)
michael@0 173 KEY_MAP_COCOA (F12, kVK_F12)
michael@0 174 KEY_MAP_GTK (F12, GDK_F12 /* same as GDK_L2 */)
michael@0 175 KEY_MAP_QT (F12, Qt::Key_F12)
michael@0 176 KEY_MAP_ANDROID (F12, AKEYCODE_F12)
michael@0 177
michael@0 178 // F13
michael@0 179 KEY_MAP_WIN (F13, VK_F13)
michael@0 180 KEY_MAP_COCOA (F13, kVK_F13)
michael@0 181 KEY_MAP_GTK (F13, GDK_F13 /* same as GDK_L3 */)
michael@0 182 KEY_MAP_QT (F13, Qt::Key_F13)
michael@0 183
michael@0 184 // F14
michael@0 185 KEY_MAP_WIN (F14, VK_F14)
michael@0 186 KEY_MAP_COCOA (F14, kVK_F14)
michael@0 187 KEY_MAP_GTK (F14, GDK_F14 /* same as GDK_L4 */)
michael@0 188 KEY_MAP_QT (F14, Qt::Key_F14)
michael@0 189
michael@0 190 // F15
michael@0 191 KEY_MAP_WIN (F15, VK_F15)
michael@0 192 KEY_MAP_COCOA (F15, kVK_F15)
michael@0 193 KEY_MAP_GTK (F15, GDK_F15 /* same as GDK_L5 */)
michael@0 194 KEY_MAP_QT (F15, Qt::Key_F15)
michael@0 195
michael@0 196 // F16
michael@0 197 KEY_MAP_WIN (F16, VK_F16)
michael@0 198 KEY_MAP_COCOA (F16, kVK_F16)
michael@0 199 KEY_MAP_GTK (F16, GDK_F16 /* same as GDK_L6 */)
michael@0 200 KEY_MAP_QT (F16, Qt::Key_F16)
michael@0 201
michael@0 202 // F17
michael@0 203 KEY_MAP_WIN (F17, VK_F17)
michael@0 204 KEY_MAP_COCOA (F17, kVK_F17)
michael@0 205 KEY_MAP_GTK (F17, GDK_F17 /* same as GDK_L7 */)
michael@0 206 KEY_MAP_QT (F17, Qt::Key_F17)
michael@0 207
michael@0 208 // F18
michael@0 209 KEY_MAP_WIN (F18, VK_F18)
michael@0 210 KEY_MAP_COCOA (F18, kVK_F18)
michael@0 211 KEY_MAP_GTK (F18, GDK_F18 /* same as GDK_L8 */)
michael@0 212 KEY_MAP_QT (F18, Qt::Key_F18)
michael@0 213
michael@0 214 // F19
michael@0 215 KEY_MAP_WIN (F19, VK_F19)
michael@0 216 KEY_MAP_COCOA (F19, kVK_F19)
michael@0 217 KEY_MAP_GTK (F19, GDK_F19 /* same as GDK_L9 */)
michael@0 218 KEY_MAP_QT (F19, Qt::Key_F19)
michael@0 219
michael@0 220 // F20
michael@0 221 KEY_MAP_WIN (F20, VK_F20)
michael@0 222 KEY_MAP_GTK (F20, GDK_F20 /* same as GDK_L10 */)
michael@0 223 KEY_MAP_QT (F20, Qt::Key_F20)
michael@0 224
michael@0 225 // F21
michael@0 226 KEY_MAP_WIN (F21, VK_F21)
michael@0 227 KEY_MAP_GTK (F21, GDK_F21 /* same as GDK_R1 */)
michael@0 228 KEY_MAP_QT (F21, Qt::Key_F21)
michael@0 229
michael@0 230 // F22
michael@0 231 KEY_MAP_WIN (F22, VK_F22)
michael@0 232 KEY_MAP_GTK (F22, GDK_F22 /* same as GDK_R2 */)
michael@0 233 KEY_MAP_QT (F22, Qt::Key_F22)
michael@0 234
michael@0 235 // F23
michael@0 236 KEY_MAP_WIN (F23, VK_F23)
michael@0 237 KEY_MAP_GTK (F23, GDK_F23 /* same as GDK_R3 */)
michael@0 238 KEY_MAP_QT (F23, Qt::Key_F23)
michael@0 239
michael@0 240 // F24
michael@0 241 KEY_MAP_WIN (F24, VK_F24)
michael@0 242 KEY_MAP_GTK (F24, GDK_F24 /* same as GDK_R4 */)
michael@0 243 KEY_MAP_QT (F24, Qt::Key_F24)
michael@0 244
michael@0 245 // F25
michael@0 246 KEY_MAP_GTK (F25, GDK_F25 /* same as GDK_R5 */)
michael@0 247 KEY_MAP_QT (F25, Qt::Key_F25)
michael@0 248
michael@0 249 // F26
michael@0 250 KEY_MAP_GTK (F26, GDK_F26 /* same as GDK_R6 */)
michael@0 251 KEY_MAP_QT (F26, Qt::Key_F26)
michael@0 252
michael@0 253 // F27
michael@0 254 KEY_MAP_GTK (F27, GDK_F27 /* same as GDK_R7 */)
michael@0 255 KEY_MAP_QT (F27, Qt::Key_F27)
michael@0 256
michael@0 257 // F28
michael@0 258 KEY_MAP_GTK (F28, GDK_F28 /* same as GDK_R8 */)
michael@0 259 KEY_MAP_QT (F28, Qt::Key_F28)
michael@0 260
michael@0 261 // F29
michael@0 262 KEY_MAP_GTK (F29, GDK_F29 /* same as GDK_R9 */)
michael@0 263 KEY_MAP_QT (F29, Qt::Key_F29)
michael@0 264
michael@0 265 // F30
michael@0 266 KEY_MAP_GTK (F30, GDK_F30 /* same as GDK_R10 */)
michael@0 267 KEY_MAP_QT (F30, Qt::Key_F30)
michael@0 268
michael@0 269 // F31
michael@0 270 KEY_MAP_GTK (F31, GDK_F31 /* same as GDK_R11 */)
michael@0 271 KEY_MAP_QT (F31, Qt::Key_F31)
michael@0 272
michael@0 273 // F32
michael@0 274 KEY_MAP_GTK (F32, GDK_F32 /* same as GDK_R12 */)
michael@0 275 KEY_MAP_QT (F32, Qt::Key_F32)
michael@0 276
michael@0 277 // F33
michael@0 278 KEY_MAP_GTK (F33, GDK_F33 /* same as GDK_R13 */)
michael@0 279 KEY_MAP_QT (F33, Qt::Key_F33)
michael@0 280
michael@0 281 // F34
michael@0 282 KEY_MAP_GTK (F34, GDK_F34 /* same as GDK_R14 */)
michael@0 283 KEY_MAP_QT (F34, Qt::Key_F34)
michael@0 284
michael@0 285 // F35
michael@0 286 KEY_MAP_GTK (F35, GDK_F35 /* same as GDK_R15 */)
michael@0 287 KEY_MAP_QT (F35, Qt::Key_F35)
michael@0 288
michael@0 289 // LaunchApplication1
michael@0 290 KEY_MAP_WIN (LaunchApplication1, VK_LAUNCH_APP1)
michael@0 291 KEY_MAP_GTK (LaunchApplication1, GDK_Launch0)
michael@0 292 KEY_MAP_QT (LaunchApplication1, Qt::Key_Launch0)
michael@0 293 KEY_MAP_ANDROID (LaunchApplication1, AKEYCODE_EXPLORER)
michael@0 294
michael@0 295 // LaunchApplication2
michael@0 296 KEY_MAP_WIN (LaunchApplication2, VK_LAUNCH_APP2)
michael@0 297 KEY_MAP_GTK (LaunchApplication2, GDK_Launch1)
michael@0 298 KEY_MAP_QT (LaunchApplication2, Qt::Key_Launch1)
michael@0 299
michael@0 300 // LaunchApplication3
michael@0 301 KEY_MAP_GTK (LaunchApplication3, GDK_Launch2)
michael@0 302 KEY_MAP_QT (LaunchApplication3, Qt::Key_Launch2)
michael@0 303
michael@0 304 // LaunchApplication4
michael@0 305 KEY_MAP_GTK (LaunchApplication4, GDK_Launch3)
michael@0 306 KEY_MAP_QT (LaunchApplication4, Qt::Key_Launch3)
michael@0 307
michael@0 308 // LaunchApplication5
michael@0 309 KEY_MAP_GTK (LaunchApplication5, GDK_Launch4)
michael@0 310 KEY_MAP_QT (LaunchApplication5, Qt::Key_Launch4)
michael@0 311
michael@0 312 // LaunchApplication6
michael@0 313 KEY_MAP_GTK (LaunchApplication6, GDK_Launch5)
michael@0 314 KEY_MAP_QT (LaunchApplication6, Qt::Key_Launch5)
michael@0 315
michael@0 316 // LaunchApplication7
michael@0 317 KEY_MAP_GTK (LaunchApplication7, GDK_Launch6)
michael@0 318 KEY_MAP_QT (LaunchApplication7, Qt::Key_Launch6)
michael@0 319
michael@0 320 // LaunchApplication8
michael@0 321 KEY_MAP_GTK (LaunchApplication8, GDK_Launch7)
michael@0 322 KEY_MAP_QT (LaunchApplication8, Qt::Key_Launch7)
michael@0 323
michael@0 324 // LaunchApplication9
michael@0 325 KEY_MAP_GTK (LaunchApplication9, GDK_Launch8)
michael@0 326 KEY_MAP_QT (LaunchApplication9, Qt::Key_Launch8)
michael@0 327
michael@0 328 // LaunchApplication10
michael@0 329 KEY_MAP_GTK (LaunchApplication10, GDK_Launch9)
michael@0 330 KEY_MAP_QT (LaunchApplication10, Qt::Key_Launch9)
michael@0 331
michael@0 332 // LaunchApplication11
michael@0 333 KEY_MAP_GTK (LaunchApplication11, GDK_LaunchA)
michael@0 334 KEY_MAP_QT (LaunchApplication11, Qt::Key_LaunchA)
michael@0 335
michael@0 336 // LaunchApplication12
michael@0 337 KEY_MAP_GTK (LaunchApplication12, GDK_LaunchB)
michael@0 338 KEY_MAP_QT (LaunchApplication12, Qt::Key_LaunchB)
michael@0 339
michael@0 340 // LaunchApplication13
michael@0 341 KEY_MAP_GTK (LaunchApplication13, GDK_LaunchC)
michael@0 342 KEY_MAP_QT (LaunchApplication13, Qt::Key_LaunchC)
michael@0 343
michael@0 344 // LaunchApplication14
michael@0 345 KEY_MAP_GTK (LaunchApplication14, GDK_LaunchD)
michael@0 346 KEY_MAP_QT (LaunchApplication14, Qt::Key_LaunchD)
michael@0 347
michael@0 348 // LaunchApplication15
michael@0 349 KEY_MAP_GTK (LaunchApplication15, GDK_LaunchE)
michael@0 350 KEY_MAP_QT (LaunchApplication15, Qt::Key_LaunchE)
michael@0 351
michael@0 352 // LaunchApplication16
michael@0 353 KEY_MAP_GTK (LaunchApplication16, GDK_LaunchF)
michael@0 354 KEY_MAP_QT (LaunchApplication16, Qt::Key_LaunchF)
michael@0 355
michael@0 356 // LaunchApplication17
michael@0 357 KEY_MAP_QT (LaunchApplication17, Qt::Key_LaunchG)
michael@0 358
michael@0 359 // LaunchApplication18
michael@0 360 KEY_MAP_QT (LaunchApplication18, Qt::Key_LaunchH)
michael@0 361
michael@0 362 // LaunchMail
michael@0 363 KEY_MAP_WIN (LaunchMail, VK_LAUNCH_MAIL)
michael@0 364 KEY_MAP_GTK (LaunchMail, GDK_Mail)
michael@0 365 KEY_MAP_QT (LaunchMail, Qt::Key_LaunchMail)
michael@0 366 KEY_MAP_ANDROID (LaunchMail, AKEYCODE_ENVELOPE)
michael@0 367
michael@0 368 // List
michael@0 369
michael@0 370 // Props
michael@0 371
michael@0 372 // Soft1
michael@0 373
michael@0 374 // Soft2
michael@0 375
michael@0 376 // Soft3
michael@0 377
michael@0 378 // Soft4
michael@0 379
michael@0 380 // Accept
michael@0 381 KEY_MAP_WIN (Accept, VK_ACCEPT)
michael@0 382 KEY_MAP_ANDROID (Accept, AKEYCODE_DPAD_CENTER)
michael@0 383
michael@0 384 // Again
michael@0 385
michael@0 386 // Enter
michael@0 387 KEY_MAP_WIN (Enter, VK_RETURN)
michael@0 388 KEY_MAP_COCOA (Enter, kVK_Return)
michael@0 389 KEY_MAP_COCOA (Enter, kVK_ANSI_KeypadEnter)
michael@0 390 KEY_MAP_COCOA (Enter, kVK_Powerbook_KeypadEnter)
michael@0 391 KEY_MAP_GTK (Enter, GDK_Return)
michael@0 392 KEY_MAP_GTK (Enter, GDK_KP_Enter)
michael@0 393 KEY_MAP_GTK (Enter, GDK_ISO_Enter)
michael@0 394 KEY_MAP_GTK (Enter, GDK_3270_Enter)
michael@0 395 KEY_MAP_QT (Enter, Qt::Key_Return)
michael@0 396 KEY_MAP_QT (Enter, Qt::Key_Enter)
michael@0 397 KEY_MAP_ANDROID (Enter, AKEYCODE_ENTER)
michael@0 398 KEY_MAP_ANDROID (Enter, AKEYCODE_NUMPAD_ENTER)
michael@0 399
michael@0 400 // Find
michael@0 401 KEY_MAP_GTK (Find, GDK_Find)
michael@0 402
michael@0 403 // Help
michael@0 404 KEY_MAP_WIN (Help, VK_HELP)
michael@0 405 KEY_MAP_COCOA (Help, kVK_Help)
michael@0 406 KEY_MAP_GTK (Help, GDK_Help)
michael@0 407 KEY_MAP_QT (Help, Qt::Key_Help)
michael@0 408 KEY_MAP_ANDROID (Help, AKEYCODE_ASSIST)
michael@0 409
michael@0 410 // Info
michael@0 411 KEY_MAP_ANDROID (Info, AKEYCODE_INFO)
michael@0 412
michael@0 413 // Menu
michael@0 414 KEY_MAP_WIN (Menu, VK_APPS)
michael@0 415 KEY_MAP_COCOA (Menu, kVK_PC_ContextMenu)
michael@0 416 KEY_MAP_GTK (Menu, GDK_Menu)
michael@0 417 KEY_MAP_QT (Menu, Qt::Key_Menu)
michael@0 418 KEY_MAP_ANDROID (Menu, AKEYCODE_MENU)
michael@0 419
michael@0 420 // Pause
michael@0 421 KEY_MAP_WIN (Pause, VK_PAUSE)
michael@0 422 KEY_MAP_GTK (Pause, GDK_Pause)
michael@0 423 // Break is typically mapped to Alt+Pause or Ctrl+Pause on GTK.
michael@0 424 KEY_MAP_GTK (Pause, GDK_Break)
michael@0 425 KEY_MAP_QT (Pause, Qt::Key_Pause)
michael@0 426 KEY_MAP_ANDROID (Pause, AKEYCODE_BREAK)
michael@0 427
michael@0 428 // Play
michael@0 429 KEY_MAP_WIN (Play, VK_PLAY)
michael@0 430 KEY_MAP_GTK (Play, GDK_3270_Play) // legacy IBM keyboard layout
michael@0 431 KEY_MAP_QT (Play, Qt::Key_Play)
michael@0 432
michael@0 433 // ScrollLock
michael@0 434 KEY_MAP_WIN (ScrollLock, VK_SCROLL)
michael@0 435 KEY_MAP_GTK (ScrollLock, GDK_Scroll_Lock)
michael@0 436 KEY_MAP_QT (ScrollLock, Qt::Key_ScrollLock)
michael@0 437 KEY_MAP_ANDROID (ScrollLock, AKEYCODE_SCROLL_LOCK)
michael@0 438
michael@0 439 // Execute
michael@0 440 KEY_MAP_WIN (Execute, VK_EXECUTE)
michael@0 441 KEY_MAP_GTK (Execute, GDK_Execute)
michael@0 442 KEY_MAP_QT (Execute, Qt::Key_Execute)
michael@0 443
michael@0 444 // Cancel
michael@0 445 KEY_MAP_WIN (Cancel, VK_CANCEL)
michael@0 446 KEY_MAP_GTK (Cancel, GDK_Cancel)
michael@0 447 KEY_MAP_QT (Cancel, Qt::Key_Cancel)
michael@0 448
michael@0 449 // Esc
michael@0 450 KEY_MAP_WIN (Esc, VK_ESCAPE)
michael@0 451 KEY_MAP_COCOA (Esc, kVK_Escape)
michael@0 452 KEY_MAP_GTK (Esc, GDK_Escape)
michael@0 453 KEY_MAP_QT (Esc, Qt::Key_Escape)
michael@0 454 KEY_MAP_ANDROID (Esc, AKEYCODE_ESCAPE)
michael@0 455
michael@0 456 // Exit
michael@0 457 KEY_MAP_ANDROID (Exit, AKEYCODE_HOME)
michael@0 458
michael@0 459 // Zoom
michael@0 460 KEY_MAP_WIN (Zoom, VK_ZOOM)
michael@0 461 KEY_MAP_QT (Zoom, Qt::Key_Zoom)
michael@0 462
michael@0 463 // BrightnessDown
michael@0 464 KEY_MAP_GTK (BrightnessDown, GDK_MonBrightnessDown)
michael@0 465 KEY_MAP_QT (BrightnessDown, Qt::Key_MonBrightnessDown)
michael@0 466
michael@0 467 // BrightnessUp
michael@0 468 KEY_MAP_GTK (BrightnessUp, GDK_MonBrightnessUp)
michael@0 469 KEY_MAP_QT (BrightnessUp, Qt::Key_MonBrightnessUp)
michael@0 470
michael@0 471 // Camera
michael@0 472 KEY_MAP_QT (Camera, Qt::Key_Camera)
michael@0 473 KEY_MAP_ANDROID (Camera, AKEYCODE_CAMERA)
michael@0 474
michael@0 475 // Eject
michael@0 476 KEY_MAP_GTK (Eject, GDK_Eject)
michael@0 477 KEY_MAP_QT (Eject, Qt::Key_Eject)
michael@0 478 KEY_MAP_ANDROID (Eject, AKEYCODE_MEDIA_EJECT)
michael@0 479
michael@0 480 // Power
michael@0 481 KEY_MAP_GTK (Power, GDK_PowerOff)
michael@0 482 KEY_MAP_QT (Power, Qt::Key_PowerOff)
michael@0 483 KEY_MAP_ANDROID (Power, AKEYCODE_POWER)
michael@0 484
michael@0 485 // PrintScreen
michael@0 486 KEY_MAP_WIN (PrintScreen, VK_SNAPSHOT)
michael@0 487 KEY_MAP_GTK (PrintScreen, GDK_3270_PrintScreen)
michael@0 488 KEY_MAP_GTK (PrintScreen, GDK_Print)
michael@0 489 KEY_MAP_GTK (PrintScreen, GDK_Sys_Req)
michael@0 490 KEY_MAP_QT (PrintScreen, Qt::Key_Print)
michael@0 491 KEY_MAP_QT (PrintScreen, Qt::Key_SysReq)
michael@0 492 KEY_MAP_ANDROID (PrintScreen, AKEYCODE_SYSRQ)
michael@0 493
michael@0 494 // BrowserFavorites
michael@0 495 KEY_MAP_WIN (BrowserFavorites, VK_BROWSER_FAVORITES)
michael@0 496 KEY_MAP_QT (BrowserFavorites, Qt::Key_Favorites)
michael@0 497 KEY_MAP_ANDROID (BrowserFavorites, AKEYCODE_BOOKMARK)
michael@0 498
michael@0 499 // BrowserHome
michael@0 500 KEY_MAP_WIN (BrowserHome, VK_BROWSER_HOME)
michael@0 501 KEY_MAP_GTK (BrowserHome, GDK_HomePage)
michael@0 502 KEY_MAP_QT (BrowserHome, Qt::Key_HomePage)
michael@0 503
michael@0 504 // BrowserRefresh
michael@0 505 KEY_MAP_WIN (BrowserRefresh, VK_BROWSER_REFRESH)
michael@0 506 KEY_MAP_GTK (BrowserRefresh, GDK_Refresh)
michael@0 507 KEY_MAP_GTK (BrowserRefresh, GDK_Reload)
michael@0 508 KEY_MAP_QT (BrowserRefresh, Qt::Key_Refresh)
michael@0 509 KEY_MAP_QT (BrowserRefresh, Qt::Key_Reload)
michael@0 510
michael@0 511 // BrowserSearch
michael@0 512 KEY_MAP_WIN (BrowserSearch, VK_BROWSER_SEARCH)
michael@0 513 KEY_MAP_GTK (BrowserSearch, GDK_Search)
michael@0 514 KEY_MAP_QT (BrowserSearch, Qt::Key_Search)
michael@0 515 KEY_MAP_ANDROID (BrowserSearch, AKEYCODE_SEARCH)
michael@0 516
michael@0 517 // BrowserStop
michael@0 518 KEY_MAP_WIN (BrowserStop, VK_BROWSER_STOP)
michael@0 519 KEY_MAP_GTK (BrowserStop, GDK_Stop)
michael@0 520 KEY_MAP_QT (BrowserStop, Qt::Key_Stop)
michael@0 521
michael@0 522 // BrowserBack
michael@0 523 KEY_MAP_WIN (BrowserBack, VK_BROWSER_BACK)
michael@0 524 KEY_MAP_GTK (BrowserBack, GDK_Back)
michael@0 525 KEY_MAP_QT (BrowserBack, Qt::Key_Back)
michael@0 526 KEY_MAP_ANDROID (BrowserBack, AKEYCODE_BACK)
michael@0 527
michael@0 528 // BrowserForward
michael@0 529 KEY_MAP_WIN (BrowserForward, VK_BROWSER_FORWARD)
michael@0 530 KEY_MAP_GTK (BrowserForward, GDK_Forward)
michael@0 531 KEY_MAP_QT (BrowserForward, Qt::Key_Forward)
michael@0 532 KEY_MAP_ANDROID (BrowserForward, AKEYCODE_FORWARD)
michael@0 533
michael@0 534 // Left
michael@0 535 KEY_MAP_WIN (Left, VK_LEFT)
michael@0 536 KEY_MAP_COCOA (Left, kVK_LeftArrow)
michael@0 537 KEY_MAP_GTK (Left, GDK_Left)
michael@0 538 KEY_MAP_GTK (Left, GDK_KP_Left)
michael@0 539 KEY_MAP_QT (Left, Qt::Key_Left)
michael@0 540 KEY_MAP_ANDROID (Left, AKEYCODE_DPAD_LEFT)
michael@0 541
michael@0 542 // PageDown
michael@0 543 KEY_MAP_WIN (PageDown, VK_NEXT)
michael@0 544 KEY_MAP_COCOA (PageDown, kVK_PageDown)
michael@0 545 KEY_MAP_GTK (PageDown, GDK_Page_Down /* same as GDK_Next */)
michael@0 546 KEY_MAP_GTK (PageDown, GDK_KP_Page_Down /* same as GDK_KP_Next */)
michael@0 547 KEY_MAP_QT (PageDown, Qt::Key_PageDown)
michael@0 548 KEY_MAP_ANDROID (PageDown, AKEYCODE_PAGE_DOWN)
michael@0 549
michael@0 550 // PageUp
michael@0 551 KEY_MAP_WIN (PageUp, VK_PRIOR)
michael@0 552 KEY_MAP_COCOA (PageUp, kVK_PageUp)
michael@0 553 KEY_MAP_GTK (PageUp, GDK_Page_Up /* same as GDK_Prior */)
michael@0 554 KEY_MAP_GTK (PageUp, GDK_KP_Page_Up /* same as GDK_KP_Prior */)
michael@0 555 KEY_MAP_QT (PageUp, Qt::Key_PageUp)
michael@0 556 KEY_MAP_ANDROID (PageUp, AKEYCODE_PAGE_UP)
michael@0 557
michael@0 558 // Right
michael@0 559 KEY_MAP_WIN (Right, VK_RIGHT)
michael@0 560 KEY_MAP_COCOA (Right, kVK_RightArrow)
michael@0 561 KEY_MAP_GTK (Right, GDK_Right)
michael@0 562 KEY_MAP_GTK (Right, GDK_KP_Right)
michael@0 563 KEY_MAP_QT (Right, Qt::Key_Right)
michael@0 564 KEY_MAP_ANDROID (Right, AKEYCODE_DPAD_RIGHT)
michael@0 565
michael@0 566 // Up
michael@0 567 KEY_MAP_WIN (Up, VK_UP)
michael@0 568 KEY_MAP_COCOA (Up, kVK_UpArrow)
michael@0 569 KEY_MAP_GTK (Up, GDK_Up)
michael@0 570 KEY_MAP_GTK (Up, GDK_KP_Up)
michael@0 571 KEY_MAP_QT (Up, Qt::Key_Up)
michael@0 572 KEY_MAP_ANDROID (Up, AKEYCODE_DPAD_UP)
michael@0 573
michael@0 574 // UpLeft
michael@0 575
michael@0 576 // UpRight
michael@0 577
michael@0 578 // Down
michael@0 579 KEY_MAP_WIN (Down, VK_DOWN)
michael@0 580 KEY_MAP_COCOA (Down, kVK_DownArrow)
michael@0 581 KEY_MAP_GTK (Down, GDK_Down)
michael@0 582 KEY_MAP_GTK (Down, GDK_KP_Down)
michael@0 583 KEY_MAP_QT (Down, Qt::Key_Down)
michael@0 584 KEY_MAP_ANDROID (Down, AKEYCODE_DPAD_DOWN)
michael@0 585
michael@0 586 // DownLeft
michael@0 587
michael@0 588 // DownRight
michael@0 589
michael@0 590 // Home
michael@0 591 KEY_MAP_WIN (Home, VK_HOME)
michael@0 592 KEY_MAP_COCOA (Home, kVK_Home)
michael@0 593 KEY_MAP_GTK (Home, GDK_Home)
michael@0 594 KEY_MAP_GTK (Home, GDK_KP_Home)
michael@0 595 KEY_MAP_QT (Home, Qt::Key_Home)
michael@0 596 KEY_MAP_ANDROID (Home, AKEYCODE_MOVE_HOME)
michael@0 597
michael@0 598 // End
michael@0 599 KEY_MAP_WIN (End, VK_END)
michael@0 600 KEY_MAP_COCOA (End, kVK_End)
michael@0 601 KEY_MAP_GTK (End, GDK_End)
michael@0 602 KEY_MAP_GTK (End, GDK_KP_End)
michael@0 603 KEY_MAP_QT (End, Qt::Key_End)
michael@0 604 KEY_MAP_ANDROID (End, AKEYCODE_MOVE_END)
michael@0 605
michael@0 606 // Select
michael@0 607 KEY_MAP_WIN (Select, VK_SELECT)
michael@0 608 KEY_MAP_GTK (Select, GDK_Select)
michael@0 609
michael@0 610 // Tab
michael@0 611 KEY_MAP_WIN (Tab, VK_TAB)
michael@0 612 KEY_MAP_COCOA (Tab, kVK_Tab)
michael@0 613 KEY_MAP_GTK (Tab, GDK_Tab)
michael@0 614 KEY_MAP_GTK (Tab, GDK_KP_Tab)
michael@0 615 KEY_MAP_QT (Tab, Qt::Key_Tab)
michael@0 616 KEY_MAP_ANDROID (Tab, AKEYCODE_TAB)
michael@0 617
michael@0 618 // Backspace
michael@0 619 KEY_MAP_WIN (Backspace, VK_BACK)
michael@0 620 KEY_MAP_COCOA (Backspace, kVK_PC_Backspace)
michael@0 621 KEY_MAP_GTK (Backspace, GDK_BackSpace)
michael@0 622 KEY_MAP_QT (Backspace, Qt::Key_Backspace)
michael@0 623 KEY_MAP_ANDROID (Backspace, AKEYCODE_DEL)
michael@0 624
michael@0 625 // Clear
michael@0 626 KEY_MAP_WIN (Clear, VK_CLEAR)
michael@0 627 KEY_MAP_WIN (Clear, VK_OEM_CLEAR)
michael@0 628 KEY_MAP_COCOA (Clear, kVK_ANSI_KeypadClear)
michael@0 629 KEY_MAP_GTK (Clear, GDK_Clear)
michael@0 630 KEY_MAP_QT (Clear, Qt::Key_Clear)
michael@0 631 KEY_MAP_ANDROID (Clear, AKEYCODE_CLEAR)
michael@0 632
michael@0 633 // Copy
michael@0 634 KEY_MAP_GTK (Copy, GDK_Copy)
michael@0 635 KEY_MAP_QT (Copy, Qt::Key_Copy)
michael@0 636
michael@0 637 // Cut
michael@0 638 KEY_MAP_GTK (Cut, GDK_Cut)
michael@0 639 KEY_MAP_QT (Cut, Qt::Key_Cut)
michael@0 640
michael@0 641 // Del
michael@0 642 KEY_MAP_WIN (Del, VK_DELETE)
michael@0 643 KEY_MAP_COCOA (Del, kVK_PC_Delete)
michael@0 644 KEY_MAP_GTK (Del, GDK_Delete)
michael@0 645 KEY_MAP_GTK (Del, GDK_KP_Delete)
michael@0 646 KEY_MAP_QT (Del, Qt::Key_Delete)
michael@0 647 KEY_MAP_ANDROID (Del, AKEYCODE_FORWARD_DEL)
michael@0 648
michael@0 649 // EraseEof
michael@0 650 KEY_MAP_WIN (EraseEof, VK_EREOF)
michael@0 651 KEY_MAP_GTK (EraseEof, GDK_3270_EraseEOF) // legacy IBM keyboard layout
michael@0 652
michael@0 653 // Insert
michael@0 654 KEY_MAP_WIN (Insert, VK_INSERT)
michael@0 655 KEY_MAP_GTK (Insert, GDK_Insert)
michael@0 656 KEY_MAP_GTK (Insert, GDK_KP_Insert)
michael@0 657 KEY_MAP_QT (Insert, Qt::Key_Insert)
michael@0 658 KEY_MAP_ANDROID (Insert, AKEYCODE_INSERT)
michael@0 659
michael@0 660 // Paste
michael@0 661 KEY_MAP_GTK (Paste, GDK_Paste)
michael@0 662 KEY_MAP_QT (Paste, Qt::Key_Paste)
michael@0 663
michael@0 664 // Undo
michael@0 665 KEY_MAP_GTK (Undo, GDK_Undo)
michael@0 666
michael@0 667 // DeadGrave
michael@0 668 KEY_MAP_GTK (DeadGrave, GDK_dead_grave)
michael@0 669 KEY_MAP_QT (DeadGrave, Qt::Key_Dead_Grave)
michael@0 670
michael@0 671 // DeadAcute
michael@0 672 KEY_MAP_GTK (DeadAcute, GDK_dead_acute)
michael@0 673 KEY_MAP_QT (DeadAcute, Qt::Key_Dead_Acute)
michael@0 674
michael@0 675 // DeadCircumflex
michael@0 676 KEY_MAP_GTK (DeadCircumflex, GDK_dead_circumflex)
michael@0 677 KEY_MAP_QT (DeadCircumflex, Qt::Key_Dead_Circumflex)
michael@0 678
michael@0 679 // DeadTilde
michael@0 680 KEY_MAP_GTK (DeadTilde, GDK_dead_tilde)
michael@0 681 KEY_MAP_QT (DeadTilde, Qt::Key_Dead_Tilde)
michael@0 682
michael@0 683 // DeadMacron
michael@0 684 KEY_MAP_GTK (DeadMacron, GDK_dead_macron)
michael@0 685 KEY_MAP_QT (DeadMacron, Qt::Key_Dead_Macron)
michael@0 686
michael@0 687 // DeadBreve
michael@0 688 KEY_MAP_GTK (DeadBreve, GDK_dead_breve)
michael@0 689 KEY_MAP_QT (DeadBreve, Qt::Key_Dead_Breve)
michael@0 690
michael@0 691 // DeadAboveDot
michael@0 692 KEY_MAP_GTK (DeadAboveDot, GDK_dead_abovedot)
michael@0 693 KEY_MAP_QT (DeadAboveDot, Qt::Key_Dead_Abovedot)
michael@0 694
michael@0 695 // DeadUmlaut
michael@0 696 KEY_MAP_GTK (DeadUmlaut, GDK_dead_diaeresis)
michael@0 697 KEY_MAP_QT (DeadUmlaut, Qt::Key_Dead_Diaeresis)
michael@0 698
michael@0 699 // DeadAboveRing
michael@0 700 KEY_MAP_GTK (DeadAboveRing, GDK_dead_abovering)
michael@0 701 KEY_MAP_QT (DeadAboveRing, Qt::Key_Dead_Abovering)
michael@0 702
michael@0 703 // DeadDoubleacute
michael@0 704 KEY_MAP_GTK (DeadDoubleacute, GDK_dead_doubleacute)
michael@0 705 KEY_MAP_QT (DeadDoubleacute, Qt::Key_Dead_Doubleacute)
michael@0 706
michael@0 707 // DeadCaron
michael@0 708 KEY_MAP_GTK (DeadCaron, GDK_dead_caron)
michael@0 709 KEY_MAP_QT (DeadCaron, Qt::Key_Dead_Caron)
michael@0 710
michael@0 711 // DeadCedilla
michael@0 712 KEY_MAP_GTK (DeadCedilla, GDK_dead_cedilla)
michael@0 713 KEY_MAP_QT (DeadCedilla, Qt::Key_Dead_Cedilla)
michael@0 714
michael@0 715 // DeadOgonek
michael@0 716 KEY_MAP_GTK (DeadOgonek, GDK_dead_ogonek)
michael@0 717 KEY_MAP_QT (DeadOgonek, Qt::Key_Dead_Ogonek)
michael@0 718
michael@0 719 // DeadIota
michael@0 720 KEY_MAP_GTK (DeadIota, GDK_dead_iota)
michael@0 721 KEY_MAP_QT (DeadIota, Qt::Key_Dead_Iota)
michael@0 722
michael@0 723 // DeadVoicedSound
michael@0 724 KEY_MAP_GTK (DeadVoicedSound, GDK_dead_voiced_sound)
michael@0 725 KEY_MAP_QT (DeadVoicedSound, Qt::Key_Dead_Voiced_Sound)
michael@0 726
michael@0 727 // DeadSemivoicedSound
michael@0 728 KEY_MAP_GTK (DeadSemivoicedSound, GDK_dead_semivoiced_sound)
michael@0 729 KEY_MAP_QT (DeadSemivoicedSound, Qt::Key_Dead_Semivoiced_Sound)
michael@0 730
michael@0 731 // Alphanumeric
michael@0 732 KEY_MAP_WIN_JPN (Alphanumeric, VK_OEM_ATTN)
michael@0 733 KEY_MAP_GTK (Alphanumeric, GDK_Eisu_Shift)
michael@0 734 KEY_MAP_GTK (Alphanumeric, GDK_Eisu_toggle)
michael@0 735 KEY_MAP_QT (Alphanumeric, Qt::Key_Eisu_Shift)
michael@0 736 KEY_MAP_QT (Alphanumeric, Qt::Key_Eisu_toggle)
michael@0 737
michael@0 738 // Alt
michael@0 739 KEY_MAP_WIN (Alt, VK_MENU)
michael@0 740 KEY_MAP_WIN (Alt, VK_LMENU)
michael@0 741 KEY_MAP_WIN (Alt, VK_RMENU)
michael@0 742 KEY_MAP_COCOA (Alt, kVK_Option)
michael@0 743 KEY_MAP_COCOA (Alt, kVK_RightOption)
michael@0 744 KEY_MAP_GTK (Alt, GDK_Alt_L)
michael@0 745 KEY_MAP_GTK (Alt, GDK_Alt_R)
michael@0 746 KEY_MAP_QT (Alt, Qt::Key_Alt)
michael@0 747 KEY_MAP_ANDROID (Alt, AKEYCODE_ALT_LEFT)
michael@0 748 KEY_MAP_ANDROID (Alt, AKEYCODE_ALT_RIGHT)
michael@0 749
michael@0 750 // AltGraph
michael@0 751 KEY_MAP_GTK (AltGraph, GDK_Mode_switch /* same as GDK_kana_switch,
michael@0 752 GDK_ISO_Group_Shift and
michael@0 753 GDK_script_switch */)
michael@0 754 // Let's treat both Level 3 shift and Level 5 shift as AltGr.
michael@0 755 // And also, let's treat Latch key and Lock key as AltGr key too like
michael@0 756 // GDK_Shift_Lock.
michael@0 757 KEY_MAP_GTK (AltGraph, GDK_ISO_Level3_Shift)
michael@0 758 KEY_MAP_GTK (AltGraph, GDK_ISO_Level3_Latch)
michael@0 759 KEY_MAP_GTK (AltGraph, GDK_ISO_Level3_Lock)
michael@0 760 KEY_MAP_GTK (AltGraph, GDK_ISO_Level5_Shift)
michael@0 761 KEY_MAP_GTK (AltGraph, GDK_ISO_Level5_Latch)
michael@0 762 KEY_MAP_GTK (AltGraph, GDK_ISO_Level5_Lock)
michael@0 763 KEY_MAP_QT (AltGraph, Qt::Key_AltGr)
michael@0 764 KEY_MAP_QT (AltGraph, Qt::Key_Mode_switch)
michael@0 765
michael@0 766 // CapsLock
michael@0 767 KEY_MAP_WIN (CapsLock, VK_CAPITAL)
michael@0 768 KEY_MAP_COCOA (CapsLock, kVK_CapsLock)
michael@0 769 KEY_MAP_GTK (CapsLock, GDK_Caps_Lock)
michael@0 770 KEY_MAP_QT (CapsLock, Qt::Key_CapsLock)
michael@0 771 KEY_MAP_ANDROID (CapsLock, AKEYCODE_CAPS_LOCK)
michael@0 772
michael@0 773 // Control
michael@0 774 KEY_MAP_WIN (Control, VK_CONTROL)
michael@0 775 KEY_MAP_WIN (Control, VK_LCONTROL)
michael@0 776 KEY_MAP_WIN (Control, VK_RCONTROL)
michael@0 777 KEY_MAP_COCOA (Control, kVK_Control)
michael@0 778 KEY_MAP_COCOA (Control, kVK_RightControl)
michael@0 779 KEY_MAP_GTK (Control, GDK_Control_L)
michael@0 780 KEY_MAP_GTK (Control, GDK_Control_R)
michael@0 781 KEY_MAP_QT (Control, Qt::Key_Control)
michael@0 782 KEY_MAP_ANDROID (Control, AKEYCODE_CTRL_LEFT)
michael@0 783 KEY_MAP_ANDROID (Control, AKEYCODE_CTRL_RIGHT)
michael@0 784
michael@0 785 // Fn
michael@0 786 KEY_MAP_COCOA (Fn, kVK_Function)
michael@0 787 KEY_MAP_ANDROID (Fn, AKEYCODE_FUNCTION)
michael@0 788
michael@0 789 // FnLock
michael@0 790
michael@0 791 // Meta
michael@0 792 KEY_MAP_COCOA (Meta, kVK_Command)
michael@0 793 KEY_MAP_COCOA (Meta, kVK_RightCommand)
michael@0 794 KEY_MAP_GTK (Meta, GDK_Meta_L)
michael@0 795 KEY_MAP_GTK (Meta, GDK_Meta_R)
michael@0 796 KEY_MAP_QT (Meta, Qt::Key_Meta)
michael@0 797 KEY_MAP_ANDROID (Meta, AKEYCODE_META_LEFT)
michael@0 798 KEY_MAP_ANDROID (Meta, AKEYCODE_META_RIGHT)
michael@0 799
michael@0 800 // Process
michael@0 801
michael@0 802 // NumLock
michael@0 803 KEY_MAP_WIN (NumLock, VK_NUMLOCK)
michael@0 804 KEY_MAP_GTK (NumLock, GDK_Num_Lock)
michael@0 805 KEY_MAP_QT (NumLock, Qt::Key_NumLock)
michael@0 806 KEY_MAP_ANDROID (NumLock, AKEYCODE_NUM_LOCK)
michael@0 807
michael@0 808 // Shift
michael@0 809 KEY_MAP_WIN (Shift, VK_SHIFT)
michael@0 810 KEY_MAP_WIN (Shift, VK_LSHIFT)
michael@0 811 KEY_MAP_WIN (Shift, VK_RSHIFT)
michael@0 812 KEY_MAP_COCOA (Shift, kVK_Shift)
michael@0 813 KEY_MAP_COCOA (Shift, kVK_RightShift)
michael@0 814 KEY_MAP_GTK (Shift, GDK_Shift_L)
michael@0 815 KEY_MAP_GTK (Shift, GDK_Shift_R)
michael@0 816 KEY_MAP_GTK (Shift, GDK_Shift_Lock) // Let's treat as Shift key (bug 769159)
michael@0 817 KEY_MAP_QT (Shift, Qt::Key_Shift)
michael@0 818 KEY_MAP_ANDROID (Shift, AKEYCODE_SHIFT_LEFT)
michael@0 819 KEY_MAP_ANDROID (Shift, AKEYCODE_SHIFT_RIGHT)
michael@0 820
michael@0 821 // SymbolLock
michael@0 822
michael@0 823 // OS
michael@0 824 KEY_MAP_WIN (OS, VK_LWIN)
michael@0 825 KEY_MAP_WIN (OS, VK_RWIN)
michael@0 826 KEY_MAP_GTK (OS, GDK_Super_L)
michael@0 827 KEY_MAP_GTK (OS, GDK_Super_R)
michael@0 828 KEY_MAP_GTK (OS, GDK_Hyper_L)
michael@0 829 KEY_MAP_GTK (OS, GDK_Hyper_R)
michael@0 830 KEY_MAP_QT (OS, Qt::Key_Super_L)
michael@0 831 KEY_MAP_QT (OS, Qt::Key_Super_R)
michael@0 832 KEY_MAP_QT (OS, Qt::Key_Hyper_L)
michael@0 833 KEY_MAP_QT (OS, Qt::Key_Hyper_R)
michael@0 834
michael@0 835 // Compose
michael@0 836 KEY_MAP_GTK (Compose, GDK_Multi_key) // "Multi Key" is "Compose key" on X
michael@0 837 KEY_MAP_QT (Compose, Qt::Key_Multi_key)
michael@0 838
michael@0 839 // AllCandidates
michael@0 840 KEY_MAP_GTK (AllCandidates, GDK_MultipleCandidate) // OADG 109, Zen Koho
michael@0 841 KEY_MAP_QT (AllCandidates, Qt::Key_MultipleCandidate)
michael@0 842
michael@0 843 // NextCandidate
michael@0 844
michael@0 845 // PreviousCandidate
michael@0 846 KEY_MAP_GTK (PreviousCandidate, GDK_PreviousCandidate) // OADG 109, Mae Koho
michael@0 847 KEY_MAP_QT (PreviousCandidate, Qt::Key_PreviousCandidate)
michael@0 848
michael@0 849 // CodeInput
michael@0 850 KEY_MAP_GTK (CodeInput, GDK_Codeinput) // OADG 109, Kanji Bangou
michael@0 851 KEY_MAP_QT (CodeInput, Qt::Key_Codeinput)
michael@0 852
michael@0 853 // Convert
michael@0 854 KEY_MAP_WIN (Convert, VK_CONVERT)
michael@0 855 KEY_MAP_GTK (Convert, GDK_Henkan)
michael@0 856 KEY_MAP_QT (Convert, Qt::Key_Henkan)
michael@0 857 KEY_MAP_ANDROID (Convert, AKEYCODE_HENKAN)
michael@0 858
michael@0 859 // Nonconvert
michael@0 860 KEY_MAP_WIN (Nonconvert, VK_NONCONVERT)
michael@0 861 KEY_MAP_GTK (Nonconvert, GDK_Muhenkan)
michael@0 862 KEY_MAP_QT (Nonconvert, Qt::Key_Muhenkan)
michael@0 863 KEY_MAP_ANDROID (Nonconvert, AKEYCODE_MUHENKAN)
michael@0 864
michael@0 865 // FinalMode
michael@0 866 KEY_MAP_WIN (FinalMode, VK_FINAL)
michael@0 867
michael@0 868 // FullWidth
michael@0 869 KEY_MAP_WIN_JPN (FullWidth, VK_OEM_ENLW)
michael@0 870 KEY_MAP_GTK (FullWidth, GDK_Zenkaku)
michael@0 871 KEY_MAP_QT (FullWidth, Qt::Key_Zenkaku)
michael@0 872
michael@0 873 // HalfWidth
michael@0 874 KEY_MAP_WIN_JPN (HalfWidth, VK_OEM_AUTO)
michael@0 875 KEY_MAP_GTK (HalfWidth, GDK_Hankaku)
michael@0 876 KEY_MAP_QT (HalfWidth, Qt::Key_Hankaku)
michael@0 877
michael@0 878 // ModeChange
michael@0 879 KEY_MAP_WIN (ModeChange, VK_MODECHANGE)
michael@0 880 KEY_MAP_ANDROID (ModeChange, AKEYCODE_SWITCH_CHARSET)
michael@0 881
michael@0 882 // RomanCharacters
michael@0 883 KEY_MAP_WIN_JPN (RomanCharacters, VK_OEM_BACKTAB)
michael@0 884 KEY_MAP_COCOA (RomanCharacters, kVK_JIS_Eisu)
michael@0 885 KEY_MAP_GTK (RomanCharacters, GDK_Romaji)
michael@0 886 KEY_MAP_QT (RomanCharacters, Qt::Key_Romaji)
michael@0 887 // Assuming that EISU key of Android is the Eisu key on Mac keyboard.
michael@0 888 KEY_MAP_ANDROID (RomanCharacters, AKEYCODE_EISU)
michael@0 889
michael@0 890 // HangulMode
michael@0 891 KEY_MAP_WIN_KOR (HangulMode, VK_HANGUL /* same as VK_KANA */)
michael@0 892
michael@0 893 // HanjaMode
michael@0 894 KEY_MAP_WIN_KOR (HanjaMode, VK_HANJA /* same as VK_KANJI */)
michael@0 895
michael@0 896 // JunjaMode
michael@0 897 KEY_MAP_WIN (JunjaMode, VK_JUNJA)
michael@0 898
michael@0 899 // Hiragana
michael@0 900 KEY_MAP_WIN_JPN (Hiragana, VK_OEM_COPY)
michael@0 901 KEY_MAP_GTK (Hiragana, GDK_Hiragana)
michael@0 902 KEY_MAP_QT (Hiragana, Qt::Key_Hiragana)
michael@0 903
michael@0 904 // KanaMode
michael@0 905 // VK_KANA is never used with modern Japanese keyboard, however, IE maps it to
michael@0 906 // KanaMode, therefore, we should use same map for it.
michael@0 907 KEY_MAP_WIN_JPN (KanaMode, VK_KANA /* same as VK_HANGUL */)
michael@0 908 KEY_MAP_WIN_JPN (KanaMode, VK_ATTN)
michael@0 909 KEY_MAP_GTK (KanaMode, GDK_Kana_Lock)
michael@0 910 KEY_MAP_GTK (KanaMode, GDK_Kana_Shift)
michael@0 911 KEY_MAP_QT (KanaMode, Qt::Key_Kana_Lock)
michael@0 912 KEY_MAP_QT (KanaMode, Qt::Key_Kana_Shift)
michael@0 913
michael@0 914 // KanjiMode
michael@0 915 KEY_MAP_WIN_JPN (KanjiMode, VK_KANJI /* same as VK_HANJA */)
michael@0 916 KEY_MAP_COCOA (KanjiMode, kVK_JIS_Kana) // Kana key opens IME
michael@0 917 KEY_MAP_GTK (KanjiMode, GDK_Kanji) // Typically, Alt + Hankaku/Zenkaku key
michael@0 918 KEY_MAP_QT (KanjiMode, Qt::Key_Kanji)
michael@0 919 // Assuming that KANA key of Android is the Kana key on Mac keyboard.
michael@0 920 KEY_MAP_ANDROID (KanjiMode, AKEYCODE_KANA)
michael@0 921
michael@0 922 // Katakana
michael@0 923 KEY_MAP_WIN_JPN (Katakana, VK_OEM_FINISH)
michael@0 924 KEY_MAP_GTK (Katakana, GDK_Katakana)
michael@0 925 KEY_MAP_QT (Katakana, Qt::Key_Katakana)
michael@0 926
michael@0 927 // AudioFaderFront
michael@0 928
michael@0 929 // AudioFaderRear
michael@0 930
michael@0 931 // AudioBalanceLeft
michael@0 932
michael@0 933 // AudioBalanceRight
michael@0 934
michael@0 935 // AudioBassBoostDown
michael@0 936 KEY_MAP_QT (AudioBassBoostDown, Qt::Key_BassDown)
michael@0 937
michael@0 938 // AudioBassBoostUp
michael@0 939 KEY_MAP_QT (AudioBassBoostUp, Qt::Key_BassUp)
michael@0 940
michael@0 941 // VolumeMute
michael@0 942 KEY_MAP_WIN (VolumeMute, VK_VOLUME_MUTE)
michael@0 943 KEY_MAP_COCOA (VolumeMute, kVK_Mute)
michael@0 944 KEY_MAP_GTK (VolumeMute, GDK_AudioMute)
michael@0 945 KEY_MAP_QT (VolumeMute, Qt::Key_VolumeMute)
michael@0 946 KEY_MAP_ANDROID (VolumeMute, AKEYCODE_VOLUME_MUTE)
michael@0 947
michael@0 948 // VolumeDown
michael@0 949 KEY_MAP_WIN (VolumeDown, VK_VOLUME_DOWN)
michael@0 950 KEY_MAP_COCOA (VolumeDown, kVK_VolumeDown)
michael@0 951 KEY_MAP_GTK (VolumeDown, GDK_AudioLowerVolume)
michael@0 952 KEY_MAP_QT (VolumeDown, Qt::Key_VolumeDown)
michael@0 953 KEY_MAP_ANDROID (VolumeDown, AKEYCODE_VOLUME_DOWN)
michael@0 954
michael@0 955 // VolumeUp
michael@0 956 KEY_MAP_WIN (VolumeUp, VK_VOLUME_UP)
michael@0 957 KEY_MAP_COCOA (VolumeUp, kVK_VolumeUp)
michael@0 958 KEY_MAP_GTK (VolumeUp, GDK_AudioRaiseVolume)
michael@0 959 KEY_MAP_QT (VolumeUp, Qt::Key_VolumeUp)
michael@0 960 KEY_MAP_ANDROID (VolumeUp, AKEYCODE_VOLUME_UP)
michael@0 961
michael@0 962 // MediaPause
michael@0 963 KEY_MAP_GTK (MediaPause, GDK_AudioPause)
michael@0 964 KEY_MAP_QT (MediaPause, Qt::Key_MediaPause)
michael@0 965 KEY_MAP_ANDROID (MediaPause, AKEYCODE_MEDIA_PAUSE)
michael@0 966
michael@0 967 // MediaPlay
michael@0 968 KEY_MAP_GTK (MediaPlay, GDK_AudioPlay)
michael@0 969 KEY_MAP_QT (MediaPlay, Qt::Key_MediaPlay)
michael@0 970 KEY_MAP_ANDROID (MediaPlay, AKEYCODE_MEDIA_PLAY)
michael@0 971
michael@0 972 // MediaStop
michael@0 973 KEY_MAP_WIN (MediaStop, VK_MEDIA_STOP)
michael@0 974 KEY_MAP_GTK (MediaStop, GDK_AudioStop)
michael@0 975 KEY_MAP_QT (MediaStop, Qt::Key_MediaStop)
michael@0 976 KEY_MAP_ANDROID (MediaStop, AKEYCODE_MEDIA_STOP)
michael@0 977
michael@0 978 // MediaNextTrack
michael@0 979 KEY_MAP_WIN (MediaNextTrack, VK_MEDIA_NEXT_TRACK)
michael@0 980 KEY_MAP_GTK (MediaNextTrack, GDK_AudioNext)
michael@0 981 KEY_MAP_QT (MediaNextTrack, Qt::Key_MediaNext)
michael@0 982 KEY_MAP_ANDROID (MediaNextTrack, AKEYCODE_MEDIA_NEXT)
michael@0 983
michael@0 984 // MediaPreviousTrack
michael@0 985 KEY_MAP_WIN (MediaPreviousTrack, VK_MEDIA_PREV_TRACK)
michael@0 986 KEY_MAP_GTK (MediaPreviousTrack, GDK_AudioPrev)
michael@0 987 KEY_MAP_QT (MediaPreviousTrack, Qt::Key_MediaPrevious)
michael@0 988 KEY_MAP_ANDROID (MediaPreviousTrack, AKEYCODE_MEDIA_PREVIOUS)
michael@0 989
michael@0 990 // MediaPlayPause
michael@0 991 KEY_MAP_WIN (MediaPlayPause, VK_MEDIA_PLAY_PAUSE)
michael@0 992 KEY_MAP_QT (MediaPlayPause, Qt::Key_MediaTogglePlayPause)
michael@0 993 KEY_MAP_ANDROID (MediaPlayPause, AKEYCODE_MEDIA_PLAY_PAUSE)
michael@0 994
michael@0 995 // MediaTrackSkip
michael@0 996
michael@0 997 // MediaTrackStart
michael@0 998
michael@0 999 // MediaTrackEnd
michael@0 1000
michael@0 1001 // SelectMedia
michael@0 1002 KEY_MAP_WIN (SelectMedia, VK_LAUNCH_MEDIA_SELECT)
michael@0 1003
michael@0 1004 // Blue
michael@0 1005 KEY_MAP_GTK (Blue, GDK_Blue)
michael@0 1006 KEY_MAP_ANDROID (Blue, AKEYCODE_PROG_BLUE)
michael@0 1007
michael@0 1008 // Brown
michael@0 1009
michael@0 1010 // ChannelDown
michael@0 1011 KEY_MAP_ANDROID (ChannelDown, AKEYCODE_CHANNEL_DOWN)
michael@0 1012
michael@0 1013 // ChannelUp
michael@0 1014 KEY_MAP_ANDROID (ChannelUp, AKEYCODE_CHANNEL_UP)
michael@0 1015
michael@0 1016 // ClearFavorite0
michael@0 1017
michael@0 1018 // ClearFavorite1
michael@0 1019
michael@0 1020 // ClearFavorite2
michael@0 1021
michael@0 1022 // ClearFavorite3
michael@0 1023
michael@0 1024 // Dimmer
michael@0 1025 KEY_MAP_GTK (Dimmer, GDK_BrightnessAdjust)
michael@0 1026 KEY_MAP_QT (Dimmer, Qt::Key_BrightnessAdjust)
michael@0 1027
michael@0 1028 // DisplaySwap
michael@0 1029
michael@0 1030 // FastFwd
michael@0 1031 KEY_MAP_QT (FastFwd, Qt::Key_AudioForward)
michael@0 1032 KEY_MAP_ANDROID (FastFwd, AKEYCODE_MEDIA_FAST_FORWARD)
michael@0 1033
michael@0 1034 // Green
michael@0 1035 KEY_MAP_GTK (Green, GDK_Green)
michael@0 1036 KEY_MAP_ANDROID (Green, AKEYCODE_PROG_GREEN)
michael@0 1037
michael@0 1038 // Grey
michael@0 1039
michael@0 1040 // Guide
michael@0 1041 KEY_MAP_ANDROID (Guide, AKEYCODE_GUIDE)
michael@0 1042
michael@0 1043 // InstantReplay
michael@0 1044
michael@0 1045 // MediaLast
michael@0 1046 KEY_MAP_QT (MediaLast, Qt::Key_MediaLast)
michael@0 1047
michael@0 1048 // Link
michael@0 1049
michael@0 1050 // Live
michael@0 1051 KEY_MAP_ANDROID (Live, AKEYCODE_TV)
michael@0 1052
michael@0 1053 // Lock
michael@0 1054
michael@0 1055 // NextDay
michael@0 1056
michael@0 1057 // NextFavoriteChannel
michael@0 1058
michael@0 1059 // OnDemand
michael@0 1060
michael@0 1061 // PinPDown
michael@0 1062
michael@0 1063 // PinPMove
michael@0 1064
michael@0 1065 // PinPToggle
michael@0 1066 KEY_MAP_ANDROID (PinPToggle, AKEYCODE_WINDOW)
michael@0 1067
michael@0 1068 // PinPUp
michael@0 1069
michael@0 1070 // PlaySpeedDown
michael@0 1071
michael@0 1072 // PlaySpeedReset
michael@0 1073
michael@0 1074 // PlaySpeedUp
michael@0 1075
michael@0 1076 // PrevDay
michael@0 1077
michael@0 1078 // RandomToggle
michael@0 1079 KEY_MAP_GTK (RandomToggle, GDK_AudioRandomPlay)
michael@0 1080 KEY_MAP_QT (RandomToggle, Qt::Key_AudioRandomPlay)
michael@0 1081
michael@0 1082 // RecallFavorite0
michael@0 1083
michael@0 1084 // RecallFavorite1
michael@0 1085
michael@0 1086 // RecallFavorite2
michael@0 1087
michael@0 1088 // RecallFavorite3
michael@0 1089
michael@0 1090 // MediaRecord
michael@0 1091 KEY_MAP_GTK (MediaRecord, GDK_AudioRecord)
michael@0 1092 KEY_MAP_QT (MediaRecord, Qt::Key_MediaRecord)
michael@0 1093 KEY_MAP_ANDROID (MediaRecord, AKEYCODE_MEDIA_RECORD)
michael@0 1094
michael@0 1095 // RecordSpeedNext
michael@0 1096
michael@0 1097 // Red
michael@0 1098 KEY_MAP_GTK (Red, GDK_Red)
michael@0 1099 KEY_MAP_ANDROID (Red, AKEYCODE_PROG_RED)
michael@0 1100
michael@0 1101 // MediaRewind
michael@0 1102 KEY_MAP_GTK (MediaRewind, GDK_AudioRewind)
michael@0 1103 KEY_MAP_QT (MediaRewind, Qt::Key_AudioRewind)
michael@0 1104 KEY_MAP_ANDROID (MediaRewind, AKEYCODE_MEDIA_REWIND)
michael@0 1105
michael@0 1106 // RfBypass
michael@0 1107
michael@0 1108 // ScanChannelsToggle
michael@0 1109
michael@0 1110 // ScreenModeNext
michael@0 1111
michael@0 1112 // Settings
michael@0 1113 KEY_MAP_ANDROID (Settings, AKEYCODE_SETTINGS)
michael@0 1114
michael@0 1115 // SplitScreenToggle
michael@0 1116
michael@0 1117 // StoreFavorite0
michael@0 1118
michael@0 1119 // StoreFavorite1
michael@0 1120
michael@0 1121 // StoreFavorite2
michael@0 1122
michael@0 1123 // StoreFavorite3
michael@0 1124
michael@0 1125 // Subtitle
michael@0 1126 KEY_MAP_GTK (Subtitle, GDK_Subtitle)
michael@0 1127 KEY_MAP_QT (Subtitle, Qt::Key_Subtitle)
michael@0 1128 KEY_MAP_ANDROID (Subtitle, AKEYCODE_CAPTIONS)
michael@0 1129
michael@0 1130 // AudioSurroundModeNext
michael@0 1131
michael@0 1132 // Teletext
michael@0 1133
michael@0 1134 // VideoModeNext
michael@0 1135
michael@0 1136 // DisplayWide
michael@0 1137
michael@0 1138 // Wink
michael@0 1139
michael@0 1140 // Yellow
michael@0 1141 KEY_MAP_GTK (Yellow, GDK_Yellow)
michael@0 1142 KEY_MAP_ANDROID (Yellow, AKEYCODE_PROG_YELLOW)
michael@0 1143
michael@0 1144 #undef KEY_MAP_WIN
michael@0 1145 #undef KEY_MAP_WIN_JPN
michael@0 1146 #undef KEY_MAP_WIN_KOR
michael@0 1147 #undef KEY_MAP_WIN_OTH
michael@0 1148 #undef KEY_MAP_OS2
michael@0 1149 #undef KEY_MAP_COCOA
michael@0 1150 #undef KEY_MAP_GTK
michael@0 1151 #undef KEY_MAP_QT
michael@0 1152 #undef KEY_MAP_ANDROID

mercurial