| // Copyright 2014 The Flutter Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| // DO NOT EDIT -- DO NOT EDIT -- DO NOT EDIT |
| // This file is generated by dev/tools/gen_keycodes/bin/gen_keycodes.dart and |
| // should not be edited directly. |
| // |
| // Edit the template dev/tools/gen_keycodes/data/keyboard_maps.tmpl instead. |
| // See dev/tools/gen_keycodes/README.md for more information. |
| |
| import 'keyboard_key.dart'; |
| |
| /// Maps Android-specific key codes to the matching [LogicalKeyboardKey]. |
| const Map<int, LogicalKeyboardKey> kAndroidToLogicalKey = <int, LogicalKeyboardKey>{ |
| 0: LogicalKeyboardKey.none, |
| 223: LogicalKeyboardKey.sleep, |
| 224: LogicalKeyboardKey.wakeUp, |
| 29: LogicalKeyboardKey.keyA, |
| 30: LogicalKeyboardKey.keyB, |
| 31: LogicalKeyboardKey.keyC, |
| 32: LogicalKeyboardKey.keyD, |
| 33: LogicalKeyboardKey.keyE, |
| 34: LogicalKeyboardKey.keyF, |
| 35: LogicalKeyboardKey.keyG, |
| 36: LogicalKeyboardKey.keyH, |
| 37: LogicalKeyboardKey.keyI, |
| 38: LogicalKeyboardKey.keyJ, |
| 39: LogicalKeyboardKey.keyK, |
| 40: LogicalKeyboardKey.keyL, |
| 41: LogicalKeyboardKey.keyM, |
| 42: LogicalKeyboardKey.keyN, |
| 43: LogicalKeyboardKey.keyO, |
| 44: LogicalKeyboardKey.keyP, |
| 45: LogicalKeyboardKey.keyQ, |
| 46: LogicalKeyboardKey.keyR, |
| 47: LogicalKeyboardKey.keyS, |
| 48: LogicalKeyboardKey.keyT, |
| 49: LogicalKeyboardKey.keyU, |
| 50: LogicalKeyboardKey.keyV, |
| 51: LogicalKeyboardKey.keyW, |
| 52: LogicalKeyboardKey.keyX, |
| 53: LogicalKeyboardKey.keyY, |
| 54: LogicalKeyboardKey.keyZ, |
| 8: LogicalKeyboardKey.digit1, |
| 9: LogicalKeyboardKey.digit2, |
| 10: LogicalKeyboardKey.digit3, |
| 11: LogicalKeyboardKey.digit4, |
| 12: LogicalKeyboardKey.digit5, |
| 13: LogicalKeyboardKey.digit6, |
| 14: LogicalKeyboardKey.digit7, |
| 15: LogicalKeyboardKey.digit8, |
| 16: LogicalKeyboardKey.digit9, |
| 7: LogicalKeyboardKey.digit0, |
| 66: LogicalKeyboardKey.enter, |
| 111: LogicalKeyboardKey.escape, |
| 67: LogicalKeyboardKey.backspace, |
| 61: LogicalKeyboardKey.tab, |
| 62: LogicalKeyboardKey.space, |
| 69: LogicalKeyboardKey.minus, |
| 70: LogicalKeyboardKey.equal, |
| 71: LogicalKeyboardKey.bracketLeft, |
| 72: LogicalKeyboardKey.bracketRight, |
| 73: LogicalKeyboardKey.backslash, |
| 74: LogicalKeyboardKey.semicolon, |
| 75: LogicalKeyboardKey.quote, |
| 68: LogicalKeyboardKey.backquote, |
| 55: LogicalKeyboardKey.comma, |
| 56: LogicalKeyboardKey.period, |
| 76: LogicalKeyboardKey.slash, |
| 115: LogicalKeyboardKey.capsLock, |
| 131: LogicalKeyboardKey.f1, |
| 132: LogicalKeyboardKey.f2, |
| 133: LogicalKeyboardKey.f3, |
| 134: LogicalKeyboardKey.f4, |
| 135: LogicalKeyboardKey.f5, |
| 136: LogicalKeyboardKey.f6, |
| 137: LogicalKeyboardKey.f7, |
| 138: LogicalKeyboardKey.f8, |
| 139: LogicalKeyboardKey.f9, |
| 140: LogicalKeyboardKey.f10, |
| 141: LogicalKeyboardKey.f11, |
| 142: LogicalKeyboardKey.f12, |
| 120: LogicalKeyboardKey.printScreen, |
| 116: LogicalKeyboardKey.scrollLock, |
| 121: LogicalKeyboardKey.pause, |
| 124: LogicalKeyboardKey.insert, |
| 122: LogicalKeyboardKey.home, |
| 92: LogicalKeyboardKey.pageUp, |
| 112: LogicalKeyboardKey.delete, |
| 123: LogicalKeyboardKey.end, |
| 93: LogicalKeyboardKey.pageDown, |
| 22: LogicalKeyboardKey.arrowRight, |
| 21: LogicalKeyboardKey.arrowLeft, |
| 20: LogicalKeyboardKey.arrowDown, |
| 19: LogicalKeyboardKey.arrowUp, |
| 143: LogicalKeyboardKey.numLock, |
| 154: LogicalKeyboardKey.numpadDivide, |
| 155: LogicalKeyboardKey.numpadMultiply, |
| 156: LogicalKeyboardKey.numpadSubtract, |
| 157: LogicalKeyboardKey.numpadAdd, |
| 160: LogicalKeyboardKey.numpadEnter, |
| 145: LogicalKeyboardKey.numpad1, |
| 146: LogicalKeyboardKey.numpad2, |
| 147: LogicalKeyboardKey.numpad3, |
| 148: LogicalKeyboardKey.numpad4, |
| 149: LogicalKeyboardKey.numpad5, |
| 150: LogicalKeyboardKey.numpad6, |
| 151: LogicalKeyboardKey.numpad7, |
| 152: LogicalKeyboardKey.numpad8, |
| 153: LogicalKeyboardKey.numpad9, |
| 144: LogicalKeyboardKey.numpad0, |
| 158: LogicalKeyboardKey.numpadDecimal, |
| 82: LogicalKeyboardKey.contextMenu, |
| 26: LogicalKeyboardKey.power, |
| 161: LogicalKeyboardKey.numpadEqual, |
| 259: LogicalKeyboardKey.help, |
| 23: LogicalKeyboardKey.select, |
| 277: LogicalKeyboardKey.cut, |
| 278: LogicalKeyboardKey.copy, |
| 279: LogicalKeyboardKey.paste, |
| 164: LogicalKeyboardKey.audioVolumeMute, |
| 24: LogicalKeyboardKey.audioVolumeUp, |
| 25: LogicalKeyboardKey.audioVolumeDown, |
| 159: LogicalKeyboardKey.numpadComma, |
| 214: LogicalKeyboardKey.convert, |
| 213: LogicalKeyboardKey.nonConvert, |
| 162: LogicalKeyboardKey.numpadParenLeft, |
| 163: LogicalKeyboardKey.numpadParenRight, |
| 113: LogicalKeyboardKey.controlLeft, |
| 59: LogicalKeyboardKey.shiftLeft, |
| 57: LogicalKeyboardKey.altLeft, |
| 117: LogicalKeyboardKey.metaLeft, |
| 114: LogicalKeyboardKey.controlRight, |
| 60: LogicalKeyboardKey.shiftRight, |
| 58: LogicalKeyboardKey.altRight, |
| 118: LogicalKeyboardKey.metaRight, |
| 165: LogicalKeyboardKey.info, |
| 175: LogicalKeyboardKey.closedCaptionToggle, |
| 221: LogicalKeyboardKey.brightnessUp, |
| 220: LogicalKeyboardKey.brightnessDown, |
| 229: LogicalKeyboardKey.mediaLast, |
| 166: LogicalKeyboardKey.channelUp, |
| 167: LogicalKeyboardKey.channelDown, |
| 126: LogicalKeyboardKey.mediaPlay, |
| 127: LogicalKeyboardKey.mediaPause, |
| 130: LogicalKeyboardKey.mediaRecord, |
| 90: LogicalKeyboardKey.mediaFastForward, |
| 89: LogicalKeyboardKey.mediaRewind, |
| 87: LogicalKeyboardKey.mediaTrackNext, |
| 88: LogicalKeyboardKey.mediaTrackPrevious, |
| 86: LogicalKeyboardKey.mediaStop, |
| 129: LogicalKeyboardKey.eject, |
| 85: LogicalKeyboardKey.mediaPlayPause, |
| 65: LogicalKeyboardKey.launchMail, |
| 207: LogicalKeyboardKey.launchContacts, |
| 208: LogicalKeyboardKey.launchCalendar, |
| 219: LogicalKeyboardKey.launchAssistant, |
| 128: LogicalKeyboardKey.close, |
| 84: LogicalKeyboardKey.browserSearch, |
| 125: LogicalKeyboardKey.browserForward, |
| 174: LogicalKeyboardKey.browserFavorites, |
| 168: LogicalKeyboardKey.zoomIn, |
| 169: LogicalKeyboardKey.zoomOut, |
| 255: LogicalKeyboardKey.zoomToggle, |
| 188: LogicalKeyboardKey.gameButton1, |
| 189: LogicalKeyboardKey.gameButton2, |
| 190: LogicalKeyboardKey.gameButton3, |
| 191: LogicalKeyboardKey.gameButton4, |
| 192: LogicalKeyboardKey.gameButton5, |
| 193: LogicalKeyboardKey.gameButton6, |
| 194: LogicalKeyboardKey.gameButton7, |
| 195: LogicalKeyboardKey.gameButton8, |
| 196: LogicalKeyboardKey.gameButton9, |
| 197: LogicalKeyboardKey.gameButton10, |
| 198: LogicalKeyboardKey.gameButton11, |
| 199: LogicalKeyboardKey.gameButton12, |
| 200: LogicalKeyboardKey.gameButton13, |
| 201: LogicalKeyboardKey.gameButton14, |
| 202: LogicalKeyboardKey.gameButton15, |
| 203: LogicalKeyboardKey.gameButton16, |
| 96: LogicalKeyboardKey.gameButtonA, |
| 97: LogicalKeyboardKey.gameButtonB, |
| 98: LogicalKeyboardKey.gameButtonC, |
| 102: LogicalKeyboardKey.gameButtonLeft1, |
| 104: LogicalKeyboardKey.gameButtonLeft2, |
| 110: LogicalKeyboardKey.gameButtonMode, |
| 103: LogicalKeyboardKey.gameButtonRight1, |
| 105: LogicalKeyboardKey.gameButtonRight2, |
| 109: LogicalKeyboardKey.gameButtonSelect, |
| 108: LogicalKeyboardKey.gameButtonStart, |
| 106: LogicalKeyboardKey.gameButtonThumbLeft, |
| 107: LogicalKeyboardKey.gameButtonThumbRight, |
| 99: LogicalKeyboardKey.gameButtonX, |
| 100: LogicalKeyboardKey.gameButtonY, |
| 101: LogicalKeyboardKey.gameButtonZ, |
| 119: LogicalKeyboardKey.fn, |
| }; |
| |
| /// Maps Android-specific scan codes to the matching [PhysicalKeyboardKey]. |
| const Map<int, PhysicalKeyboardKey> kAndroidToPhysicalKey = <int, PhysicalKeyboardKey>{ |
| 205: PhysicalKeyboardKey.suspend, |
| 142: PhysicalKeyboardKey.sleep, |
| 143: PhysicalKeyboardKey.wakeUp, |
| 30: PhysicalKeyboardKey.keyA, |
| 48: PhysicalKeyboardKey.keyB, |
| 46: PhysicalKeyboardKey.keyC, |
| 32: PhysicalKeyboardKey.keyD, |
| 18: PhysicalKeyboardKey.keyE, |
| 33: PhysicalKeyboardKey.keyF, |
| 34: PhysicalKeyboardKey.keyG, |
| 35: PhysicalKeyboardKey.keyH, |
| 23: PhysicalKeyboardKey.keyI, |
| 36: PhysicalKeyboardKey.keyJ, |
| 37: PhysicalKeyboardKey.keyK, |
| 38: PhysicalKeyboardKey.keyL, |
| 50: PhysicalKeyboardKey.keyM, |
| 49: PhysicalKeyboardKey.keyN, |
| 24: PhysicalKeyboardKey.keyO, |
| 25: PhysicalKeyboardKey.keyP, |
| 16: PhysicalKeyboardKey.keyQ, |
| 19: PhysicalKeyboardKey.keyR, |
| 31: PhysicalKeyboardKey.keyS, |
| 20: PhysicalKeyboardKey.keyT, |
| 22: PhysicalKeyboardKey.keyU, |
| 47: PhysicalKeyboardKey.keyV, |
| 17: PhysicalKeyboardKey.keyW, |
| 45: PhysicalKeyboardKey.keyX, |
| 21: PhysicalKeyboardKey.keyY, |
| 44: PhysicalKeyboardKey.keyZ, |
| 2: PhysicalKeyboardKey.digit1, |
| 3: PhysicalKeyboardKey.digit2, |
| 4: PhysicalKeyboardKey.digit3, |
| 5: PhysicalKeyboardKey.digit4, |
| 6: PhysicalKeyboardKey.digit5, |
| 7: PhysicalKeyboardKey.digit6, |
| 8: PhysicalKeyboardKey.digit7, |
| 9: PhysicalKeyboardKey.digit8, |
| 10: PhysicalKeyboardKey.digit9, |
| 11: PhysicalKeyboardKey.digit0, |
| 28: PhysicalKeyboardKey.enter, |
| 1: PhysicalKeyboardKey.escape, |
| 14: PhysicalKeyboardKey.backspace, |
| 15: PhysicalKeyboardKey.tab, |
| 57: PhysicalKeyboardKey.space, |
| 12: PhysicalKeyboardKey.minus, |
| 13: PhysicalKeyboardKey.equal, |
| 26: PhysicalKeyboardKey.bracketLeft, |
| 27: PhysicalKeyboardKey.bracketRight, |
| 43: PhysicalKeyboardKey.backslash, |
| 86: PhysicalKeyboardKey.backslash, |
| 39: PhysicalKeyboardKey.semicolon, |
| 40: PhysicalKeyboardKey.quote, |
| 41: PhysicalKeyboardKey.backquote, |
| 51: PhysicalKeyboardKey.comma, |
| 52: PhysicalKeyboardKey.period, |
| 53: PhysicalKeyboardKey.slash, |
| 58: PhysicalKeyboardKey.capsLock, |
| 59: PhysicalKeyboardKey.f1, |
| 60: PhysicalKeyboardKey.f2, |
| 61: PhysicalKeyboardKey.f3, |
| 62: PhysicalKeyboardKey.f4, |
| 63: PhysicalKeyboardKey.f5, |
| 64: PhysicalKeyboardKey.f6, |
| 65: PhysicalKeyboardKey.f7, |
| 66: PhysicalKeyboardKey.f8, |
| 67: PhysicalKeyboardKey.f9, |
| 68: PhysicalKeyboardKey.f10, |
| 87: PhysicalKeyboardKey.f11, |
| 88: PhysicalKeyboardKey.f12, |
| 99: PhysicalKeyboardKey.printScreen, |
| 70: PhysicalKeyboardKey.scrollLock, |
| 119: PhysicalKeyboardKey.pause, |
| 411: PhysicalKeyboardKey.pause, |
| 110: PhysicalKeyboardKey.insert, |
| 102: PhysicalKeyboardKey.home, |
| 104: PhysicalKeyboardKey.pageUp, |
| 177: PhysicalKeyboardKey.pageUp, |
| 111: PhysicalKeyboardKey.delete, |
| 107: PhysicalKeyboardKey.end, |
| 109: PhysicalKeyboardKey.pageDown, |
| 178: PhysicalKeyboardKey.pageDown, |
| 106: PhysicalKeyboardKey.arrowRight, |
| 105: PhysicalKeyboardKey.arrowLeft, |
| 108: PhysicalKeyboardKey.arrowDown, |
| 103: PhysicalKeyboardKey.arrowUp, |
| 69: PhysicalKeyboardKey.numLock, |
| 98: PhysicalKeyboardKey.numpadDivide, |
| 55: PhysicalKeyboardKey.numpadMultiply, |
| 74: PhysicalKeyboardKey.numpadSubtract, |
| 78: PhysicalKeyboardKey.numpadAdd, |
| 96: PhysicalKeyboardKey.numpadEnter, |
| 79: PhysicalKeyboardKey.numpad1, |
| 80: PhysicalKeyboardKey.numpad2, |
| 81: PhysicalKeyboardKey.numpad3, |
| 75: PhysicalKeyboardKey.numpad4, |
| 76: PhysicalKeyboardKey.numpad5, |
| 77: PhysicalKeyboardKey.numpad6, |
| 71: PhysicalKeyboardKey.numpad7, |
| 72: PhysicalKeyboardKey.numpad8, |
| 73: PhysicalKeyboardKey.numpad9, |
| 82: PhysicalKeyboardKey.numpad0, |
| 83: PhysicalKeyboardKey.numpadDecimal, |
| 127: PhysicalKeyboardKey.contextMenu, |
| 139: PhysicalKeyboardKey.contextMenu, |
| 116: PhysicalKeyboardKey.power, |
| 152: PhysicalKeyboardKey.power, |
| 117: PhysicalKeyboardKey.numpadEqual, |
| 183: PhysicalKeyboardKey.f13, |
| 184: PhysicalKeyboardKey.f14, |
| 185: PhysicalKeyboardKey.f15, |
| 186: PhysicalKeyboardKey.f16, |
| 187: PhysicalKeyboardKey.f17, |
| 188: PhysicalKeyboardKey.f18, |
| 189: PhysicalKeyboardKey.f19, |
| 190: PhysicalKeyboardKey.f20, |
| 191: PhysicalKeyboardKey.f21, |
| 192: PhysicalKeyboardKey.f22, |
| 193: PhysicalKeyboardKey.f23, |
| 194: PhysicalKeyboardKey.f24, |
| 134: PhysicalKeyboardKey.open, |
| 138: PhysicalKeyboardKey.help, |
| 353: PhysicalKeyboardKey.select, |
| 129: PhysicalKeyboardKey.again, |
| 131: PhysicalKeyboardKey.undo, |
| 137: PhysicalKeyboardKey.cut, |
| 133: PhysicalKeyboardKey.copy, |
| 135: PhysicalKeyboardKey.paste, |
| 136: PhysicalKeyboardKey.find, |
| 113: PhysicalKeyboardKey.audioVolumeMute, |
| 115: PhysicalKeyboardKey.audioVolumeUp, |
| 114: PhysicalKeyboardKey.audioVolumeDown, |
| 95: PhysicalKeyboardKey.numpadComma, |
| 121: PhysicalKeyboardKey.numpadComma, |
| 92: PhysicalKeyboardKey.convert, |
| 94: PhysicalKeyboardKey.nonConvert, |
| 90: PhysicalKeyboardKey.lang3, |
| 91: PhysicalKeyboardKey.lang4, |
| 130: PhysicalKeyboardKey.props, |
| 179: PhysicalKeyboardKey.numpadParenLeft, |
| 180: PhysicalKeyboardKey.numpadParenRight, |
| 29: PhysicalKeyboardKey.controlLeft, |
| 42: PhysicalKeyboardKey.shiftLeft, |
| 56: PhysicalKeyboardKey.altLeft, |
| 125: PhysicalKeyboardKey.metaLeft, |
| 97: PhysicalKeyboardKey.controlRight, |
| 54: PhysicalKeyboardKey.shiftRight, |
| 100: PhysicalKeyboardKey.altRight, |
| 126: PhysicalKeyboardKey.metaRight, |
| 358: PhysicalKeyboardKey.info, |
| 225: PhysicalKeyboardKey.brightnessUp, |
| 224: PhysicalKeyboardKey.brightnessDown, |
| 174: PhysicalKeyboardKey.exit, |
| 402: PhysicalKeyboardKey.channelUp, |
| 403: PhysicalKeyboardKey.channelDown, |
| 200: PhysicalKeyboardKey.mediaPlay, |
| 207: PhysicalKeyboardKey.mediaPlay, |
| 201: PhysicalKeyboardKey.mediaPause, |
| 167: PhysicalKeyboardKey.mediaRecord, |
| 208: PhysicalKeyboardKey.mediaFastForward, |
| 168: PhysicalKeyboardKey.mediaRewind, |
| 163: PhysicalKeyboardKey.mediaTrackNext, |
| 165: PhysicalKeyboardKey.mediaTrackPrevious, |
| 128: PhysicalKeyboardKey.mediaStop, |
| 166: PhysicalKeyboardKey.mediaStop, |
| 161: PhysicalKeyboardKey.eject, |
| 162: PhysicalKeyboardKey.eject, |
| 164: PhysicalKeyboardKey.mediaPlayPause, |
| 209: PhysicalKeyboardKey.bassBoost, |
| 155: PhysicalKeyboardKey.launchMail, |
| 215: PhysicalKeyboardKey.launchMail, |
| 429: PhysicalKeyboardKey.launchContacts, |
| 397: PhysicalKeyboardKey.launchCalendar, |
| 181: PhysicalKeyboardKey.newKey, |
| 160: PhysicalKeyboardKey.close, |
| 206: PhysicalKeyboardKey.close, |
| 210: PhysicalKeyboardKey.print, |
| 217: PhysicalKeyboardKey.browserSearch, |
| 159: PhysicalKeyboardKey.browserForward, |
| 156: PhysicalKeyboardKey.browserFavorites, |
| 182: PhysicalKeyboardKey.redo, |
| 256: PhysicalKeyboardKey.gameButton1, |
| 288: PhysicalKeyboardKey.gameButton1, |
| 257: PhysicalKeyboardKey.gameButton2, |
| 289: PhysicalKeyboardKey.gameButton2, |
| 258: PhysicalKeyboardKey.gameButton3, |
| 290: PhysicalKeyboardKey.gameButton3, |
| 259: PhysicalKeyboardKey.gameButton4, |
| 291: PhysicalKeyboardKey.gameButton4, |
| 260: PhysicalKeyboardKey.gameButton5, |
| 292: PhysicalKeyboardKey.gameButton5, |
| 261: PhysicalKeyboardKey.gameButton6, |
| 293: PhysicalKeyboardKey.gameButton6, |
| 262: PhysicalKeyboardKey.gameButton7, |
| 294: PhysicalKeyboardKey.gameButton7, |
| 263: PhysicalKeyboardKey.gameButton8, |
| 295: PhysicalKeyboardKey.gameButton8, |
| 264: PhysicalKeyboardKey.gameButton9, |
| 296: PhysicalKeyboardKey.gameButton9, |
| 265: PhysicalKeyboardKey.gameButton10, |
| 297: PhysicalKeyboardKey.gameButton10, |
| 266: PhysicalKeyboardKey.gameButton11, |
| 298: PhysicalKeyboardKey.gameButton11, |
| 267: PhysicalKeyboardKey.gameButton12, |
| 299: PhysicalKeyboardKey.gameButton12, |
| 268: PhysicalKeyboardKey.gameButton13, |
| 300: PhysicalKeyboardKey.gameButton13, |
| 269: PhysicalKeyboardKey.gameButton14, |
| 301: PhysicalKeyboardKey.gameButton14, |
| 270: PhysicalKeyboardKey.gameButton15, |
| 302: PhysicalKeyboardKey.gameButton15, |
| 271: PhysicalKeyboardKey.gameButton16, |
| 303: PhysicalKeyboardKey.gameButton16, |
| 304: PhysicalKeyboardKey.gameButtonA, |
| 305: PhysicalKeyboardKey.gameButtonB, |
| 306: PhysicalKeyboardKey.gameButtonC, |
| 310: PhysicalKeyboardKey.gameButtonLeft1, |
| 312: PhysicalKeyboardKey.gameButtonLeft2, |
| 316: PhysicalKeyboardKey.gameButtonMode, |
| 311: PhysicalKeyboardKey.gameButtonRight1, |
| 313: PhysicalKeyboardKey.gameButtonRight2, |
| 314: PhysicalKeyboardKey.gameButtonSelect, |
| 315: PhysicalKeyboardKey.gameButtonStart, |
| 317: PhysicalKeyboardKey.gameButtonThumbLeft, |
| 318: PhysicalKeyboardKey.gameButtonThumbRight, |
| 307: PhysicalKeyboardKey.gameButtonX, |
| 308: PhysicalKeyboardKey.gameButtonY, |
| 309: PhysicalKeyboardKey.gameButtonZ, |
| 464: PhysicalKeyboardKey.fn, |
| }; |
| |
| /// A map of Android key codes which have printable representations, but appear |
| /// on the number pad. Used to provide different key objects for keys like |
| /// KEY_EQUALS and NUMPAD_EQUALS. |
| const Map<int, LogicalKeyboardKey> kAndroidNumPadMap = <int, LogicalKeyboardKey>{ |
| 154: LogicalKeyboardKey.numpadDivide, |
| 155: LogicalKeyboardKey.numpadMultiply, |
| 156: LogicalKeyboardKey.numpadSubtract, |
| 157: LogicalKeyboardKey.numpadAdd, |
| 145: LogicalKeyboardKey.numpad1, |
| 146: LogicalKeyboardKey.numpad2, |
| 147: LogicalKeyboardKey.numpad3, |
| 148: LogicalKeyboardKey.numpad4, |
| 149: LogicalKeyboardKey.numpad5, |
| 150: LogicalKeyboardKey.numpad6, |
| 151: LogicalKeyboardKey.numpad7, |
| 152: LogicalKeyboardKey.numpad8, |
| 153: LogicalKeyboardKey.numpad9, |
| 144: LogicalKeyboardKey.numpad0, |
| 158: LogicalKeyboardKey.numpadDecimal, |
| 161: LogicalKeyboardKey.numpadEqual, |
| 159: LogicalKeyboardKey.numpadComma, |
| 162: LogicalKeyboardKey.numpadParenLeft, |
| 163: LogicalKeyboardKey.numpadParenRight, |
| }; |
| |
| /// Maps Fuchsia-specific IDs to the matching [LogicalKeyboardKey]. |
| const Map<int, LogicalKeyboardKey> kFuchsiaToLogicalKey = <int, LogicalKeyboardKey>{ |
| 0x100000000: LogicalKeyboardKey.none, |
| 0x100000010: LogicalKeyboardKey.hyper, |
| 0x100000011: LogicalKeyboardKey.superKey, |
| 0x100000013: LogicalKeyboardKey.fnLock, |
| 0x100000014: LogicalKeyboardKey.suspend, |
| 0x100000015: LogicalKeyboardKey.resume, |
| 0x100000016: LogicalKeyboardKey.turbo, |
| 0x100000017: LogicalKeyboardKey.privacyScreenToggle, |
| 0x100010082: LogicalKeyboardKey.sleep, |
| 0x100010083: LogicalKeyboardKey.wakeUp, |
| 0x1000100b5: LogicalKeyboardKey.displayToggleIntExt, |
| 0x100070000: LogicalKeyboardKey.usbReserved, |
| 0x100070001: LogicalKeyboardKey.usbErrorRollOver, |
| 0x100070002: LogicalKeyboardKey.usbPostFail, |
| 0x100070003: LogicalKeyboardKey.usbErrorUndefined, |
| 0x00000061: LogicalKeyboardKey.keyA, |
| 0x00000062: LogicalKeyboardKey.keyB, |
| 0x00000063: LogicalKeyboardKey.keyC, |
| 0x00000064: LogicalKeyboardKey.keyD, |
| 0x00000065: LogicalKeyboardKey.keyE, |
| 0x00000066: LogicalKeyboardKey.keyF, |
| 0x00000067: LogicalKeyboardKey.keyG, |
| 0x00000068: LogicalKeyboardKey.keyH, |
| 0x00000069: LogicalKeyboardKey.keyI, |
| 0x0000006a: LogicalKeyboardKey.keyJ, |
| 0x0000006b: LogicalKeyboardKey.keyK, |
| 0x0000006c: LogicalKeyboardKey.keyL, |
| 0x0000006d: LogicalKeyboardKey.keyM, |
| 0x0000006e: LogicalKeyboardKey.keyN, |
| 0x0000006f: LogicalKeyboardKey.keyO, |
| 0x00000070: LogicalKeyboardKey.keyP, |
| 0x00000071: LogicalKeyboardKey.keyQ, |
| 0x00000072: LogicalKeyboardKey.keyR, |
| 0x00000073: LogicalKeyboardKey.keyS, |
| 0x00000074: LogicalKeyboardKey.keyT, |
| 0x00000075: LogicalKeyboardKey.keyU, |
| 0x00000076: LogicalKeyboardKey.keyV, |
| 0x00000077: LogicalKeyboardKey.keyW, |
| 0x00000078: LogicalKeyboardKey.keyX, |
| 0x00000079: LogicalKeyboardKey.keyY, |
| 0x0000007a: LogicalKeyboardKey.keyZ, |
| 0x00000031: LogicalKeyboardKey.digit1, |
| 0x00000032: LogicalKeyboardKey.digit2, |
| 0x00000033: LogicalKeyboardKey.digit3, |
| 0x00000034: LogicalKeyboardKey.digit4, |
| 0x00000035: LogicalKeyboardKey.digit5, |
| 0x00000036: LogicalKeyboardKey.digit6, |
| 0x00000037: LogicalKeyboardKey.digit7, |
| 0x00000038: LogicalKeyboardKey.digit8, |
| 0x00000039: LogicalKeyboardKey.digit9, |
| 0x00000030: LogicalKeyboardKey.digit0, |
| 0x100070028: LogicalKeyboardKey.enter, |
| 0x100070029: LogicalKeyboardKey.escape, |
| 0x10007002a: LogicalKeyboardKey.backspace, |
| 0x10007002b: LogicalKeyboardKey.tab, |
| 0x00000020: LogicalKeyboardKey.space, |
| 0x0000002d: LogicalKeyboardKey.minus, |
| 0x0000003d: LogicalKeyboardKey.equal, |
| 0x0000005b: LogicalKeyboardKey.bracketLeft, |
| 0x0000005d: LogicalKeyboardKey.bracketRight, |
| 0x0000005c: LogicalKeyboardKey.backslash, |
| 0x0000003b: LogicalKeyboardKey.semicolon, |
| 0x00000027: LogicalKeyboardKey.quote, |
| 0x00000060: LogicalKeyboardKey.backquote, |
| 0x0000002c: LogicalKeyboardKey.comma, |
| 0x0000002e: LogicalKeyboardKey.period, |
| 0x0000002f: LogicalKeyboardKey.slash, |
| 0x100070039: LogicalKeyboardKey.capsLock, |
| 0x10007003a: LogicalKeyboardKey.f1, |
| 0x10007003b: LogicalKeyboardKey.f2, |
| 0x10007003c: LogicalKeyboardKey.f3, |
| 0x10007003d: LogicalKeyboardKey.f4, |
| 0x10007003e: LogicalKeyboardKey.f5, |
| 0x10007003f: LogicalKeyboardKey.f6, |
| 0x100070040: LogicalKeyboardKey.f7, |
| 0x100070041: LogicalKeyboardKey.f8, |
| 0x100070042: LogicalKeyboardKey.f9, |
| 0x100070043: LogicalKeyboardKey.f10, |
| 0x100070044: LogicalKeyboardKey.f11, |
| 0x100070045: LogicalKeyboardKey.f12, |
| 0x100070046: LogicalKeyboardKey.printScreen, |
| 0x100070047: LogicalKeyboardKey.scrollLock, |
| 0x100070048: LogicalKeyboardKey.pause, |
| 0x100070049: LogicalKeyboardKey.insert, |
| 0x10007004a: LogicalKeyboardKey.home, |
| 0x10007004b: LogicalKeyboardKey.pageUp, |
| 0x10007004c: LogicalKeyboardKey.delete, |
| 0x10007004d: LogicalKeyboardKey.end, |
| 0x10007004e: LogicalKeyboardKey.pageDown, |
| 0x10007004f: LogicalKeyboardKey.arrowRight, |
| 0x100070050: LogicalKeyboardKey.arrowLeft, |
| 0x100070051: LogicalKeyboardKey.arrowDown, |
| 0x100070052: LogicalKeyboardKey.arrowUp, |
| 0x100070053: LogicalKeyboardKey.numLock, |
| 0x100070054: LogicalKeyboardKey.numpadDivide, |
| 0x100070055: LogicalKeyboardKey.numpadMultiply, |
| 0x100070056: LogicalKeyboardKey.numpadSubtract, |
| 0x100070057: LogicalKeyboardKey.numpadAdd, |
| 0x100070058: LogicalKeyboardKey.numpadEnter, |
| 0x100070059: LogicalKeyboardKey.numpad1, |
| 0x10007005a: LogicalKeyboardKey.numpad2, |
| 0x10007005b: LogicalKeyboardKey.numpad3, |
| 0x10007005c: LogicalKeyboardKey.numpad4, |
| 0x10007005d: LogicalKeyboardKey.numpad5, |
| 0x10007005e: LogicalKeyboardKey.numpad6, |
| 0x10007005f: LogicalKeyboardKey.numpad7, |
| 0x100070060: LogicalKeyboardKey.numpad8, |
| 0x100070061: LogicalKeyboardKey.numpad9, |
| 0x100070062: LogicalKeyboardKey.numpad0, |
| 0x100070063: LogicalKeyboardKey.numpadDecimal, |
| 0x100070064: LogicalKeyboardKey.intlBackslash, |
| 0x100070065: LogicalKeyboardKey.contextMenu, |
| 0x100070066: LogicalKeyboardKey.power, |
| 0x100070067: LogicalKeyboardKey.numpadEqual, |
| 0x100070068: LogicalKeyboardKey.f13, |
| 0x100070069: LogicalKeyboardKey.f14, |
| 0x10007006a: LogicalKeyboardKey.f15, |
| 0x10007006b: LogicalKeyboardKey.f16, |
| 0x10007006c: LogicalKeyboardKey.f17, |
| 0x10007006d: LogicalKeyboardKey.f18, |
| 0x10007006e: LogicalKeyboardKey.f19, |
| 0x10007006f: LogicalKeyboardKey.f20, |
| 0x100070070: LogicalKeyboardKey.f21, |
| 0x100070071: LogicalKeyboardKey.f22, |
| 0x100070072: LogicalKeyboardKey.f23, |
| 0x100070073: LogicalKeyboardKey.f24, |
| 0x100070074: LogicalKeyboardKey.open, |
| 0x100070075: LogicalKeyboardKey.help, |
| 0x100070077: LogicalKeyboardKey.select, |
| 0x100070079: LogicalKeyboardKey.again, |
| 0x10007007a: LogicalKeyboardKey.undo, |
| 0x10007007b: LogicalKeyboardKey.cut, |
| 0x10007007c: LogicalKeyboardKey.copy, |
| 0x10007007d: LogicalKeyboardKey.paste, |
| 0x10007007e: LogicalKeyboardKey.find, |
| 0x10007007f: LogicalKeyboardKey.audioVolumeMute, |
| 0x100070080: LogicalKeyboardKey.audioVolumeUp, |
| 0x100070081: LogicalKeyboardKey.audioVolumeDown, |
| 0x100070085: LogicalKeyboardKey.numpadComma, |
| 0x100070087: LogicalKeyboardKey.intlRo, |
| 0x100070088: LogicalKeyboardKey.kanaMode, |
| 0x100070089: LogicalKeyboardKey.intlYen, |
| 0x10007008a: LogicalKeyboardKey.convert, |
| 0x10007008b: LogicalKeyboardKey.nonConvert, |
| 0x100070090: LogicalKeyboardKey.lang1, |
| 0x100070091: LogicalKeyboardKey.lang2, |
| 0x100070092: LogicalKeyboardKey.lang3, |
| 0x100070093: LogicalKeyboardKey.lang4, |
| 0x100070094: LogicalKeyboardKey.lang5, |
| 0x10007009b: LogicalKeyboardKey.abort, |
| 0x1000700a3: LogicalKeyboardKey.props, |
| 0x1000700b6: LogicalKeyboardKey.numpadParenLeft, |
| 0x1000700b7: LogicalKeyboardKey.numpadParenRight, |
| 0x1000700bb: LogicalKeyboardKey.numpadBackspace, |
| 0x1000700d0: LogicalKeyboardKey.numpadMemoryStore, |
| 0x1000700d1: LogicalKeyboardKey.numpadMemoryRecall, |
| 0x1000700d2: LogicalKeyboardKey.numpadMemoryClear, |
| 0x1000700d3: LogicalKeyboardKey.numpadMemoryAdd, |
| 0x1000700d4: LogicalKeyboardKey.numpadMemorySubtract, |
| 0x1000700d7: LogicalKeyboardKey.numpadSignChange, |
| 0x1000700d8: LogicalKeyboardKey.numpadClear, |
| 0x1000700d9: LogicalKeyboardKey.numpadClearEntry, |
| 0x1000700e0: LogicalKeyboardKey.controlLeft, |
| 0x1000700e1: LogicalKeyboardKey.shiftLeft, |
| 0x1000700e2: LogicalKeyboardKey.altLeft, |
| 0x1000700e3: LogicalKeyboardKey.metaLeft, |
| 0x1000700e4: LogicalKeyboardKey.controlRight, |
| 0x1000700e5: LogicalKeyboardKey.shiftRight, |
| 0x1000700e6: LogicalKeyboardKey.altRight, |
| 0x1000700e7: LogicalKeyboardKey.metaRight, |
| 0x1000c0060: LogicalKeyboardKey.info, |
| 0x1000c0061: LogicalKeyboardKey.closedCaptionToggle, |
| 0x1000c006f: LogicalKeyboardKey.brightnessUp, |
| 0x1000c0070: LogicalKeyboardKey.brightnessDown, |
| 0x1000c0072: LogicalKeyboardKey.brightnessToggle, |
| 0x1000c0073: LogicalKeyboardKey.brightnessMinimum, |
| 0x1000c0074: LogicalKeyboardKey.brightnessMaximum, |
| 0x1000c0075: LogicalKeyboardKey.brightnessAuto, |
| 0x1000c0083: LogicalKeyboardKey.mediaLast, |
| 0x1000c008c: LogicalKeyboardKey.launchPhone, |
| 0x1000c008d: LogicalKeyboardKey.programGuide, |
| 0x1000c0094: LogicalKeyboardKey.exit, |
| 0x1000c009c: LogicalKeyboardKey.channelUp, |
| 0x1000c009d: LogicalKeyboardKey.channelDown, |
| 0x1000c00b0: LogicalKeyboardKey.mediaPlay, |
| 0x1000c00b1: LogicalKeyboardKey.mediaPause, |
| 0x1000c00b2: LogicalKeyboardKey.mediaRecord, |
| 0x1000c00b3: LogicalKeyboardKey.mediaFastForward, |
| 0x1000c00b4: LogicalKeyboardKey.mediaRewind, |
| 0x1000c00b5: LogicalKeyboardKey.mediaTrackNext, |
| 0x1000c00b6: LogicalKeyboardKey.mediaTrackPrevious, |
| 0x1000c00b7: LogicalKeyboardKey.mediaStop, |
| 0x1000c00b8: LogicalKeyboardKey.eject, |
| 0x1000c00cd: LogicalKeyboardKey.mediaPlayPause, |
| 0x1000c00cf: LogicalKeyboardKey.speechInputToggle, |
| 0x1000c00e5: LogicalKeyboardKey.bassBoost, |
| 0x1000c0183: LogicalKeyboardKey.mediaSelect, |
| 0x1000c0184: LogicalKeyboardKey.launchWordProcessor, |
| 0x1000c0186: LogicalKeyboardKey.launchSpreadsheet, |
| 0x1000c018a: LogicalKeyboardKey.launchMail, |
| 0x1000c018d: LogicalKeyboardKey.launchContacts, |
| 0x1000c018e: LogicalKeyboardKey.launchCalendar, |
| 0x1000c0192: LogicalKeyboardKey.launchApp2, |
| 0x1000c0194: LogicalKeyboardKey.launchApp1, |
| 0x1000c0196: LogicalKeyboardKey.launchInternetBrowser, |
| 0x1000c019c: LogicalKeyboardKey.logOff, |
| 0x1000c019e: LogicalKeyboardKey.lockScreen, |
| 0x1000c019f: LogicalKeyboardKey.launchControlPanel, |
| 0x1000c01a2: LogicalKeyboardKey.selectTask, |
| 0x1000c01a7: LogicalKeyboardKey.launchDocuments, |
| 0x1000c01ab: LogicalKeyboardKey.spellCheck, |
| 0x1000c01ae: LogicalKeyboardKey.launchKeyboardLayout, |
| 0x1000c01b1: LogicalKeyboardKey.launchScreenSaver, |
| 0x1000c01cb: LogicalKeyboardKey.launchAssistant, |
| 0x1000c01b7: LogicalKeyboardKey.launchAudioBrowser, |
| 0x1000c0201: LogicalKeyboardKey.newKey, |
| 0x1000c0203: LogicalKeyboardKey.close, |
| 0x1000c0207: LogicalKeyboardKey.save, |
| 0x1000c0208: LogicalKeyboardKey.print, |
| 0x1000c0221: LogicalKeyboardKey.browserSearch, |
| 0x1000c0223: LogicalKeyboardKey.browserHome, |
| 0x1000c0224: LogicalKeyboardKey.browserBack, |
| 0x1000c0225: LogicalKeyboardKey.browserForward, |
| 0x1000c0226: LogicalKeyboardKey.browserStop, |
| 0x1000c0227: LogicalKeyboardKey.browserRefresh, |
| 0x1000c022a: LogicalKeyboardKey.browserFavorites, |
| 0x1000c022d: LogicalKeyboardKey.zoomIn, |
| 0x1000c022e: LogicalKeyboardKey.zoomOut, |
| 0x1000c0232: LogicalKeyboardKey.zoomToggle, |
| 0x1000c0279: LogicalKeyboardKey.redo, |
| 0x1000c0289: LogicalKeyboardKey.mailReply, |
| 0x1000c028b: LogicalKeyboardKey.mailForward, |
| 0x1000c028c: LogicalKeyboardKey.mailSend, |
| 0x1000c029d: LogicalKeyboardKey.keyboardLayoutSelect, |
| 0x1000c029f: LogicalKeyboardKey.showAllWindows, |
| 0x10005ff01: LogicalKeyboardKey.gameButton1, |
| 0x10005ff02: LogicalKeyboardKey.gameButton2, |
| 0x10005ff03: LogicalKeyboardKey.gameButton3, |
| 0x10005ff04: LogicalKeyboardKey.gameButton4, |
| 0x10005ff05: LogicalKeyboardKey.gameButton5, |
| 0x10005ff06: LogicalKeyboardKey.gameButton6, |
| 0x10005ff07: LogicalKeyboardKey.gameButton7, |
| 0x10005ff08: LogicalKeyboardKey.gameButton8, |
| 0x10005ff09: LogicalKeyboardKey.gameButton9, |
| 0x10005ff0a: LogicalKeyboardKey.gameButton10, |
| 0x10005ff0b: LogicalKeyboardKey.gameButton11, |
| 0x10005ff0c: LogicalKeyboardKey.gameButton12, |
| 0x10005ff0d: LogicalKeyboardKey.gameButton13, |
| 0x10005ff0e: LogicalKeyboardKey.gameButton14, |
| 0x10005ff0f: LogicalKeyboardKey.gameButton15, |
| 0x10005ff10: LogicalKeyboardKey.gameButton16, |
| 0x10005ff11: LogicalKeyboardKey.gameButtonA, |
| 0x10005ff12: LogicalKeyboardKey.gameButtonB, |
| 0x10005ff13: LogicalKeyboardKey.gameButtonC, |
| 0x10005ff14: LogicalKeyboardKey.gameButtonLeft1, |
| 0x10005ff15: LogicalKeyboardKey.gameButtonLeft2, |
| 0x10005ff16: LogicalKeyboardKey.gameButtonMode, |
| 0x10005ff17: LogicalKeyboardKey.gameButtonRight1, |
| 0x10005ff18: LogicalKeyboardKey.gameButtonRight2, |
| 0x10005ff19: LogicalKeyboardKey.gameButtonSelect, |
| 0x10005ff1a: LogicalKeyboardKey.gameButtonStart, |
| 0x10005ff1b: LogicalKeyboardKey.gameButtonThumbLeft, |
| 0x10005ff1c: LogicalKeyboardKey.gameButtonThumbRight, |
| 0x10005ff1d: LogicalKeyboardKey.gameButtonX, |
| 0x10005ff1e: LogicalKeyboardKey.gameButtonY, |
| 0x10005ff1f: LogicalKeyboardKey.gameButtonZ, |
| 0x100000012: LogicalKeyboardKey.fn, |
| }; |
| |
| /// Maps Fuchsia-specific USB HID Usage IDs to the matching |
| /// [PhysicalKeyboardKey]. |
| const Map<int, PhysicalKeyboardKey> kFuchsiaToPhysicalKey = <int, PhysicalKeyboardKey>{ |
| 0x00000000: PhysicalKeyboardKey.none, |
| 0x00000010: PhysicalKeyboardKey.hyper, |
| 0x00000011: PhysicalKeyboardKey.superKey, |
| 0x00000013: PhysicalKeyboardKey.fnLock, |
| 0x00000014: PhysicalKeyboardKey.suspend, |
| 0x00000015: PhysicalKeyboardKey.resume, |
| 0x00000016: PhysicalKeyboardKey.turbo, |
| 0x00000017: PhysicalKeyboardKey.privacyScreenToggle, |
| 0x00010082: PhysicalKeyboardKey.sleep, |
| 0x00010083: PhysicalKeyboardKey.wakeUp, |
| 0x000100b5: PhysicalKeyboardKey.displayToggleIntExt, |
| 0x00070000: PhysicalKeyboardKey.usbReserved, |
| 0x00070001: PhysicalKeyboardKey.usbErrorRollOver, |
| 0x00070002: PhysicalKeyboardKey.usbPostFail, |
| 0x00070003: PhysicalKeyboardKey.usbErrorUndefined, |
| 0x00070004: PhysicalKeyboardKey.keyA, |
| 0x00070005: PhysicalKeyboardKey.keyB, |
| 0x00070006: PhysicalKeyboardKey.keyC, |
| 0x00070007: PhysicalKeyboardKey.keyD, |
| 0x00070008: PhysicalKeyboardKey.keyE, |
| 0x00070009: PhysicalKeyboardKey.keyF, |
| 0x0007000a: PhysicalKeyboardKey.keyG, |
| 0x0007000b: PhysicalKeyboardKey.keyH, |
| 0x0007000c: PhysicalKeyboardKey.keyI, |
| 0x0007000d: PhysicalKeyboardKey.keyJ, |
| 0x0007000e: PhysicalKeyboardKey.keyK, |
| 0x0007000f: PhysicalKeyboardKey.keyL, |
| 0x00070010: PhysicalKeyboardKey.keyM, |
| 0x00070011: PhysicalKeyboardKey.keyN, |
| 0x00070012: PhysicalKeyboardKey.keyO, |
| 0x00070013: PhysicalKeyboardKey.keyP, |
| 0x00070014: PhysicalKeyboardKey.keyQ, |
| 0x00070015: PhysicalKeyboardKey.keyR, |
| 0x00070016: PhysicalKeyboardKey.keyS, |
| 0x00070017: PhysicalKeyboardKey.keyT, |
| 0x00070018: PhysicalKeyboardKey.keyU, |
| 0x00070019: PhysicalKeyboardKey.keyV, |
| 0x0007001a: PhysicalKeyboardKey.keyW, |
| 0x0007001b: PhysicalKeyboardKey.keyX, |
| 0x0007001c: PhysicalKeyboardKey.keyY, |
| 0x0007001d: PhysicalKeyboardKey.keyZ, |
| 0x0007001e: PhysicalKeyboardKey.digit1, |
| 0x0007001f: PhysicalKeyboardKey.digit2, |
| 0x00070020: PhysicalKeyboardKey.digit3, |
| 0x00070021: PhysicalKeyboardKey.digit4, |
| 0x00070022: PhysicalKeyboardKey.digit5, |
| 0x00070023: PhysicalKeyboardKey.digit6, |
| 0x00070024: PhysicalKeyboardKey.digit7, |
| 0x00070025: PhysicalKeyboardKey.digit8, |
| 0x00070026: PhysicalKeyboardKey.digit9, |
| 0x00070027: PhysicalKeyboardKey.digit0, |
| 0x00070028: PhysicalKeyboardKey.enter, |
| 0x00070029: PhysicalKeyboardKey.escape, |
| 0x0007002a: PhysicalKeyboardKey.backspace, |
| 0x0007002b: PhysicalKeyboardKey.tab, |
| 0x0007002c: PhysicalKeyboardKey.space, |
| 0x0007002d: PhysicalKeyboardKey.minus, |
| 0x0007002e: PhysicalKeyboardKey.equal, |
| 0x0007002f: PhysicalKeyboardKey.bracketLeft, |
| 0x00070030: PhysicalKeyboardKey.bracketRight, |
| 0x00070031: PhysicalKeyboardKey.backslash, |
| 0x00070033: PhysicalKeyboardKey.semicolon, |
| 0x00070034: PhysicalKeyboardKey.quote, |
| 0x00070035: PhysicalKeyboardKey.backquote, |
| 0x00070036: PhysicalKeyboardKey.comma, |
| 0x00070037: PhysicalKeyboardKey.period, |
| 0x00070038: PhysicalKeyboardKey.slash, |
| 0x00070039: PhysicalKeyboardKey.capsLock, |
| 0x0007003a: PhysicalKeyboardKey.f1, |
| 0x0007003b: PhysicalKeyboardKey.f2, |
| 0x0007003c: PhysicalKeyboardKey.f3, |
| 0x0007003d: PhysicalKeyboardKey.f4, |
| 0x0007003e: PhysicalKeyboardKey.f5, |
| 0x0007003f: PhysicalKeyboardKey.f6, |
| 0x00070040: PhysicalKeyboardKey.f7, |
| 0x00070041: PhysicalKeyboardKey.f8, |
| 0x00070042: PhysicalKeyboardKey.f9, |
| 0x00070043: PhysicalKeyboardKey.f10, |
| 0x00070044: PhysicalKeyboardKey.f11, |
| 0x00070045: PhysicalKeyboardKey.f12, |
| 0x00070046: PhysicalKeyboardKey.printScreen, |
| 0x00070047: PhysicalKeyboardKey.scrollLock, |
| 0x00070048: PhysicalKeyboardKey.pause, |
| 0x00070049: PhysicalKeyboardKey.insert, |
| 0x0007004a: PhysicalKeyboardKey.home, |
| 0x0007004b: PhysicalKeyboardKey.pageUp, |
| 0x0007004c: PhysicalKeyboardKey.delete, |
| 0x0007004d: PhysicalKeyboardKey.end, |
| 0x0007004e: PhysicalKeyboardKey.pageDown, |
| 0x0007004f: PhysicalKeyboardKey.arrowRight, |
| 0x00070050: PhysicalKeyboardKey.arrowLeft, |
| 0x00070051: PhysicalKeyboardKey.arrowDown, |
| 0x00070052: PhysicalKeyboardKey.arrowUp, |
| 0x00070053: PhysicalKeyboardKey.numLock, |
| 0x00070054: PhysicalKeyboardKey.numpadDivide, |
| 0x00070055: PhysicalKeyboardKey.numpadMultiply, |
| 0x00070056: PhysicalKeyboardKey.numpadSubtract, |
| 0x00070057: PhysicalKeyboardKey.numpadAdd, |
| 0x00070058: PhysicalKeyboardKey.numpadEnter, |
| 0x00070059: PhysicalKeyboardKey.numpad1, |
| 0x0007005a: PhysicalKeyboardKey.numpad2, |
| 0x0007005b: PhysicalKeyboardKey.numpad3, |
| 0x0007005c: PhysicalKeyboardKey.numpad4, |
| 0x0007005d: PhysicalKeyboardKey.numpad5, |
| 0x0007005e: PhysicalKeyboardKey.numpad6, |
| 0x0007005f: PhysicalKeyboardKey.numpad7, |
| 0x00070060: PhysicalKeyboardKey.numpad8, |
| 0x00070061: PhysicalKeyboardKey.numpad9, |
| 0x00070062: PhysicalKeyboardKey.numpad0, |
| 0x00070063: PhysicalKeyboardKey.numpadDecimal, |
| 0x00070064: PhysicalKeyboardKey.intlBackslash, |
| 0x00070065: PhysicalKeyboardKey.contextMenu, |
| 0x00070066: PhysicalKeyboardKey.power, |
| 0x00070067: PhysicalKeyboardKey.numpadEqual, |
| 0x00070068: PhysicalKeyboardKey.f13, |
| 0x00070069: PhysicalKeyboardKey.f14, |
| 0x0007006a: PhysicalKeyboardKey.f15, |
| 0x0007006b: PhysicalKeyboardKey.f16, |
| 0x0007006c: PhysicalKeyboardKey.f17, |
| 0x0007006d: PhysicalKeyboardKey.f18, |
| 0x0007006e: PhysicalKeyboardKey.f19, |
| 0x0007006f: PhysicalKeyboardKey.f20, |
| 0x00070070: PhysicalKeyboardKey.f21, |
| 0x00070071: PhysicalKeyboardKey.f22, |
| 0x00070072: PhysicalKeyboardKey.f23, |
| 0x00070073: PhysicalKeyboardKey.f24, |
| 0x00070074: PhysicalKeyboardKey.open, |
| 0x00070075: PhysicalKeyboardKey.help, |
| 0x00070077: PhysicalKeyboardKey.select, |
| 0x00070079: PhysicalKeyboardKey.again, |
| 0x0007007a: PhysicalKeyboardKey.undo, |
| 0x0007007b: PhysicalKeyboardKey.cut, |
| 0x0007007c: PhysicalKeyboardKey.copy, |
| 0x0007007d: PhysicalKeyboardKey.paste, |
| 0x0007007e: PhysicalKeyboardKey.find, |
| 0x0007007f: PhysicalKeyboardKey.audioVolumeMute, |
| 0x00070080: PhysicalKeyboardKey.audioVolumeUp, |
| 0x00070081: PhysicalKeyboardKey.audioVolumeDown, |
| 0x00070085: PhysicalKeyboardKey.numpadComma, |
| 0x00070087: PhysicalKeyboardKey.intlRo, |
| 0x00070088: PhysicalKeyboardKey.kanaMode, |
| 0x00070089: PhysicalKeyboardKey.intlYen, |
| 0x0007008a: PhysicalKeyboardKey.convert, |
| 0x0007008b: PhysicalKeyboardKey.nonConvert, |
| 0x00070090: PhysicalKeyboardKey.lang1, |
| 0x00070091: PhysicalKeyboardKey.lang2, |
| 0x00070092: PhysicalKeyboardKey.lang3, |
| 0x00070093: PhysicalKeyboardKey.lang4, |
| 0x00070094: PhysicalKeyboardKey.lang5, |
| 0x0007009b: PhysicalKeyboardKey.abort, |
| 0x000700a3: PhysicalKeyboardKey.props, |
| 0x000700b6: PhysicalKeyboardKey.numpadParenLeft, |
| 0x000700b7: PhysicalKeyboardKey.numpadParenRight, |
| 0x000700bb: PhysicalKeyboardKey.numpadBackspace, |
| 0x000700d0: PhysicalKeyboardKey.numpadMemoryStore, |
| 0x000700d1: PhysicalKeyboardKey.numpadMemoryRecall, |
| 0x000700d2: PhysicalKeyboardKey.numpadMemoryClear, |
| 0x000700d3: PhysicalKeyboardKey.numpadMemoryAdd, |
| 0x000700d4: PhysicalKeyboardKey.numpadMemorySubtract, |
| 0x000700d7: PhysicalKeyboardKey.numpadSignChange, |
| 0x000700d8: PhysicalKeyboardKey.numpadClear, |
| 0x000700d9: PhysicalKeyboardKey.numpadClearEntry, |
| 0x000700e0: PhysicalKeyboardKey.controlLeft, |
| 0x000700e1: PhysicalKeyboardKey.shiftLeft, |
| 0x000700e2: PhysicalKeyboardKey.altLeft, |
| 0x000700e3: PhysicalKeyboardKey.metaLeft, |
| 0x000700e4: PhysicalKeyboardKey.controlRight, |
| 0x000700e5: PhysicalKeyboardKey.shiftRight, |
| 0x000700e6: PhysicalKeyboardKey.altRight, |
| 0x000700e7: PhysicalKeyboardKey.metaRight, |
| 0x000c0060: PhysicalKeyboardKey.info, |
| 0x000c0061: PhysicalKeyboardKey.closedCaptionToggle, |
| 0x000c006f: PhysicalKeyboardKey.brightnessUp, |
| 0x000c0070: PhysicalKeyboardKey.brightnessDown, |
| 0x000c0072: PhysicalKeyboardKey.brightnessToggle, |
| 0x000c0073: PhysicalKeyboardKey.brightnessMinimum, |
| 0x000c0074: PhysicalKeyboardKey.brightnessMaximum, |
| 0x000c0075: PhysicalKeyboardKey.brightnessAuto, |
| 0x000c0083: PhysicalKeyboardKey.mediaLast, |
| 0x000c008c: PhysicalKeyboardKey.launchPhone, |
| 0x000c008d: PhysicalKeyboardKey.programGuide, |
| 0x000c0094: PhysicalKeyboardKey.exit, |
| 0x000c009c: PhysicalKeyboardKey.channelUp, |
| 0x000c009d: PhysicalKeyboardKey.channelDown, |
| 0x000c00b0: PhysicalKeyboardKey.mediaPlay, |
| 0x000c00b1: PhysicalKeyboardKey.mediaPause, |
| 0x000c00b2: PhysicalKeyboardKey.mediaRecord, |
| 0x000c00b3: PhysicalKeyboardKey.mediaFastForward, |
| 0x000c00b4: PhysicalKeyboardKey.mediaRewind, |
| 0x000c00b5: PhysicalKeyboardKey.mediaTrackNext, |
| 0x000c00b6: PhysicalKeyboardKey.mediaTrackPrevious, |
| 0x000c00b7: PhysicalKeyboardKey.mediaStop, |
| 0x000c00b8: PhysicalKeyboardKey.eject, |
| 0x000c00cd: PhysicalKeyboardKey.mediaPlayPause, |
| 0x000c00cf: PhysicalKeyboardKey.speechInputToggle, |
| 0x000c00e5: PhysicalKeyboardKey.bassBoost, |
| 0x000c0183: PhysicalKeyboardKey.mediaSelect, |
| 0x000c0184: PhysicalKeyboardKey.launchWordProcessor, |
| 0x000c0186: PhysicalKeyboardKey.launchSpreadsheet, |
| 0x000c018a: PhysicalKeyboardKey.launchMail, |
| 0x000c018d: PhysicalKeyboardKey.launchContacts, |
| 0x000c018e: PhysicalKeyboardKey.launchCalendar, |
| 0x000c0192: PhysicalKeyboardKey.launchApp2, |
| 0x000c0194: PhysicalKeyboardKey.launchApp1, |
| 0x000c0196: PhysicalKeyboardKey.launchInternetBrowser, |
| 0x000c019c: PhysicalKeyboardKey.logOff, |
| 0x000c019e: PhysicalKeyboardKey.lockScreen, |
| 0x000c019f: PhysicalKeyboardKey.launchControlPanel, |
| 0x000c01a2: PhysicalKeyboardKey.selectTask, |
| 0x000c01a7: PhysicalKeyboardKey.launchDocuments, |
| 0x000c01ab: PhysicalKeyboardKey.spellCheck, |
| 0x000c01ae: PhysicalKeyboardKey.launchKeyboardLayout, |
| 0x000c01b1: PhysicalKeyboardKey.launchScreenSaver, |
| 0x000c01cb: PhysicalKeyboardKey.launchAssistant, |
| 0x000c01b7: PhysicalKeyboardKey.launchAudioBrowser, |
| 0x000c0201: PhysicalKeyboardKey.newKey, |
| 0x000c0203: PhysicalKeyboardKey.close, |
| 0x000c0207: PhysicalKeyboardKey.save, |
| 0x000c0208: PhysicalKeyboardKey.print, |
| 0x000c0221: PhysicalKeyboardKey.browserSearch, |
| 0x000c0223: PhysicalKeyboardKey.browserHome, |
| 0x000c0224: PhysicalKeyboardKey.browserBack, |
| 0x000c0225: PhysicalKeyboardKey.browserForward, |
| 0x000c0226: PhysicalKeyboardKey.browserStop, |
| 0x000c0227: PhysicalKeyboardKey.browserRefresh, |
| 0x000c022a: PhysicalKeyboardKey.browserFavorites, |
| 0x000c022d: PhysicalKeyboardKey.zoomIn, |
| 0x000c022e: PhysicalKeyboardKey.zoomOut, |
| 0x000c0232: PhysicalKeyboardKey.zoomToggle, |
| 0x000c0279: PhysicalKeyboardKey.redo, |
| 0x000c0289: PhysicalKeyboardKey.mailReply, |
| 0x000c028b: PhysicalKeyboardKey.mailForward, |
| 0x000c028c: PhysicalKeyboardKey.mailSend, |
| 0x000c029d: PhysicalKeyboardKey.keyboardLayoutSelect, |
| 0x000c029f: PhysicalKeyboardKey.showAllWindows, |
| 0x0005ff01: PhysicalKeyboardKey.gameButton1, |
| 0x0005ff02: PhysicalKeyboardKey.gameButton2, |
| 0x0005ff03: PhysicalKeyboardKey.gameButton3, |
| 0x0005ff04: PhysicalKeyboardKey.gameButton4, |
| 0x0005ff05: PhysicalKeyboardKey.gameButton5, |
| 0x0005ff06: PhysicalKeyboardKey.gameButton6, |
| 0x0005ff07: PhysicalKeyboardKey.gameButton7, |
| 0x0005ff08: PhysicalKeyboardKey.gameButton8, |
| 0x0005ff09: PhysicalKeyboardKey.gameButton9, |
| 0x0005ff0a: PhysicalKeyboardKey.gameButton10, |
| 0x0005ff0b: PhysicalKeyboardKey.gameButton11, |
| 0x0005ff0c: PhysicalKeyboardKey.gameButton12, |
| 0x0005ff0d: PhysicalKeyboardKey.gameButton13, |
| 0x0005ff0e: PhysicalKeyboardKey.gameButton14, |
| 0x0005ff0f: PhysicalKeyboardKey.gameButton15, |
| 0x0005ff10: PhysicalKeyboardKey.gameButton16, |
| 0x0005ff11: PhysicalKeyboardKey.gameButtonA, |
| 0x0005ff12: PhysicalKeyboardKey.gameButtonB, |
| 0x0005ff13: PhysicalKeyboardKey.gameButtonC, |
| 0x0005ff14: PhysicalKeyboardKey.gameButtonLeft1, |
| 0x0005ff15: PhysicalKeyboardKey.gameButtonLeft2, |
| 0x0005ff16: PhysicalKeyboardKey.gameButtonMode, |
| 0x0005ff17: PhysicalKeyboardKey.gameButtonRight1, |
| 0x0005ff18: PhysicalKeyboardKey.gameButtonRight2, |
| 0x0005ff19: PhysicalKeyboardKey.gameButtonSelect, |
| 0x0005ff1a: PhysicalKeyboardKey.gameButtonStart, |
| 0x0005ff1b: PhysicalKeyboardKey.gameButtonThumbLeft, |
| 0x0005ff1c: PhysicalKeyboardKey.gameButtonThumbRight, |
| 0x0005ff1d: PhysicalKeyboardKey.gameButtonX, |
| 0x0005ff1e: PhysicalKeyboardKey.gameButtonY, |
| 0x0005ff1f: PhysicalKeyboardKey.gameButtonZ, |
| 0x00000012: PhysicalKeyboardKey.fn, |
| }; |
| |
| /// Maps macOS-specific key code values representing [PhysicalKeyboardKey]. |
| /// |
| /// MacOS doesn't provide a scan code, but a virtual keycode to represent a physical key. |
| const Map<int, PhysicalKeyboardKey> kMacOsToPhysicalKey = <int, PhysicalKeyboardKey>{ |
| 0x00000000: PhysicalKeyboardKey.keyA, |
| 0x0000000b: PhysicalKeyboardKey.keyB, |
| 0x00000008: PhysicalKeyboardKey.keyC, |
| 0x00000002: PhysicalKeyboardKey.keyD, |
| 0x0000000e: PhysicalKeyboardKey.keyE, |
| 0x00000003: PhysicalKeyboardKey.keyF, |
| 0x00000005: PhysicalKeyboardKey.keyG, |
| 0x00000004: PhysicalKeyboardKey.keyH, |
| 0x00000022: PhysicalKeyboardKey.keyI, |
| 0x00000026: PhysicalKeyboardKey.keyJ, |
| 0x00000028: PhysicalKeyboardKey.keyK, |
| 0x00000025: PhysicalKeyboardKey.keyL, |
| 0x0000002e: PhysicalKeyboardKey.keyM, |
| 0x0000002d: PhysicalKeyboardKey.keyN, |
| 0x0000001f: PhysicalKeyboardKey.keyO, |
| 0x00000023: PhysicalKeyboardKey.keyP, |
| 0x0000000c: PhysicalKeyboardKey.keyQ, |
| 0x0000000f: PhysicalKeyboardKey.keyR, |
| 0x00000001: PhysicalKeyboardKey.keyS, |
| 0x00000011: PhysicalKeyboardKey.keyT, |
| 0x00000020: PhysicalKeyboardKey.keyU, |
| 0x00000009: PhysicalKeyboardKey.keyV, |
| 0x0000000d: PhysicalKeyboardKey.keyW, |
| 0x00000007: PhysicalKeyboardKey.keyX, |
| 0x00000010: PhysicalKeyboardKey.keyY, |
| 0x00000006: PhysicalKeyboardKey.keyZ, |
| 0x00000012: PhysicalKeyboardKey.digit1, |
| 0x00000013: PhysicalKeyboardKey.digit2, |
| 0x00000014: PhysicalKeyboardKey.digit3, |
| 0x00000015: PhysicalKeyboardKey.digit4, |
| 0x00000017: PhysicalKeyboardKey.digit5, |
| 0x00000016: PhysicalKeyboardKey.digit6, |
| 0x0000001a: PhysicalKeyboardKey.digit7, |
| 0x0000001c: PhysicalKeyboardKey.digit8, |
| 0x00000019: PhysicalKeyboardKey.digit9, |
| 0x0000001d: PhysicalKeyboardKey.digit0, |
| 0x00000024: PhysicalKeyboardKey.enter, |
| 0x00000035: PhysicalKeyboardKey.escape, |
| 0x00000033: PhysicalKeyboardKey.backspace, |
| 0x00000030: PhysicalKeyboardKey.tab, |
| 0x00000031: PhysicalKeyboardKey.space, |
| 0x0000001b: PhysicalKeyboardKey.minus, |
| 0x00000018: PhysicalKeyboardKey.equal, |
| 0x00000021: PhysicalKeyboardKey.bracketLeft, |
| 0x0000001e: PhysicalKeyboardKey.bracketRight, |
| 0x0000002a: PhysicalKeyboardKey.backslash, |
| 0x00000029: PhysicalKeyboardKey.semicolon, |
| 0x00000027: PhysicalKeyboardKey.quote, |
| 0x00000032: PhysicalKeyboardKey.backquote, |
| 0x0000002b: PhysicalKeyboardKey.comma, |
| 0x0000002f: PhysicalKeyboardKey.period, |
| 0x0000002c: PhysicalKeyboardKey.slash, |
| 0x00000039: PhysicalKeyboardKey.capsLock, |
| 0x0000007a: PhysicalKeyboardKey.f1, |
| 0x00000078: PhysicalKeyboardKey.f2, |
| 0x00000063: PhysicalKeyboardKey.f3, |
| 0x00000076: PhysicalKeyboardKey.f4, |
| 0x00000060: PhysicalKeyboardKey.f5, |
| 0x00000061: PhysicalKeyboardKey.f6, |
| 0x00000062: PhysicalKeyboardKey.f7, |
| 0x00000064: PhysicalKeyboardKey.f8, |
| 0x00000065: PhysicalKeyboardKey.f9, |
| 0x0000006d: PhysicalKeyboardKey.f10, |
| 0x00000067: PhysicalKeyboardKey.f11, |
| 0x0000006f: PhysicalKeyboardKey.f12, |
| 0x00000072: PhysicalKeyboardKey.insert, |
| 0x00000073: PhysicalKeyboardKey.home, |
| 0x00000074: PhysicalKeyboardKey.pageUp, |
| 0x00000075: PhysicalKeyboardKey.delete, |
| 0x00000077: PhysicalKeyboardKey.end, |
| 0x00000079: PhysicalKeyboardKey.pageDown, |
| 0x0000007c: PhysicalKeyboardKey.arrowRight, |
| 0x0000007b: PhysicalKeyboardKey.arrowLeft, |
| 0x0000007d: PhysicalKeyboardKey.arrowDown, |
| 0x0000007e: PhysicalKeyboardKey.arrowUp, |
| 0x00000047: PhysicalKeyboardKey.numLock, |
| 0x0000004b: PhysicalKeyboardKey.numpadDivide, |
| 0x00000043: PhysicalKeyboardKey.numpadMultiply, |
| 0x0000004e: PhysicalKeyboardKey.numpadSubtract, |
| 0x00000045: PhysicalKeyboardKey.numpadAdd, |
| 0x0000004c: PhysicalKeyboardKey.numpadEnter, |
| 0x00000053: PhysicalKeyboardKey.numpad1, |
| 0x00000054: PhysicalKeyboardKey.numpad2, |
| 0x00000055: PhysicalKeyboardKey.numpad3, |
| 0x00000056: PhysicalKeyboardKey.numpad4, |
| 0x00000057: PhysicalKeyboardKey.numpad5, |
| 0x00000058: PhysicalKeyboardKey.numpad6, |
| 0x00000059: PhysicalKeyboardKey.numpad7, |
| 0x0000005b: PhysicalKeyboardKey.numpad8, |
| 0x0000005c: PhysicalKeyboardKey.numpad9, |
| 0x00000052: PhysicalKeyboardKey.numpad0, |
| 0x00000041: PhysicalKeyboardKey.numpadDecimal, |
| 0x0000000a: PhysicalKeyboardKey.intlBackslash, |
| 0x0000006e: PhysicalKeyboardKey.contextMenu, |
| 0x00000051: PhysicalKeyboardKey.numpadEqual, |
| 0x00000069: PhysicalKeyboardKey.f13, |
| 0x0000006b: PhysicalKeyboardKey.f14, |
| 0x00000071: PhysicalKeyboardKey.f15, |
| 0x0000006a: PhysicalKeyboardKey.f16, |
| 0x00000040: PhysicalKeyboardKey.f17, |
| 0x0000004f: PhysicalKeyboardKey.f18, |
| 0x00000050: PhysicalKeyboardKey.f19, |
| 0x0000005a: PhysicalKeyboardKey.f20, |
| 0x0000004a: PhysicalKeyboardKey.audioVolumeMute, |
| 0x00000048: PhysicalKeyboardKey.audioVolumeUp, |
| 0x00000049: PhysicalKeyboardKey.audioVolumeDown, |
| 0x0000005f: PhysicalKeyboardKey.numpadComma, |
| 0x0000005e: PhysicalKeyboardKey.intlRo, |
| 0x0000005d: PhysicalKeyboardKey.intlYen, |
| 0x00000068: PhysicalKeyboardKey.lang1, |
| 0x00000066: PhysicalKeyboardKey.lang2, |
| 0x0000003b: PhysicalKeyboardKey.controlLeft, |
| 0x00000038: PhysicalKeyboardKey.shiftLeft, |
| 0x0000003a: PhysicalKeyboardKey.altLeft, |
| 0x00000037: PhysicalKeyboardKey.metaLeft, |
| 0x0000003e: PhysicalKeyboardKey.controlRight, |
| 0x0000003c: PhysicalKeyboardKey.shiftRight, |
| 0x0000003d: PhysicalKeyboardKey.altRight, |
| 0x00000036: PhysicalKeyboardKey.metaRight, |
| 0x0000003f: PhysicalKeyboardKey.fn, |
| }; |
| |
| /// A map of macOS key codes which have printable representations, but appear |
| /// on the number pad. Used to provide different key objects for keys like |
| /// KEY_EQUALS and NUMPAD_EQUALS. |
| const Map<int, LogicalKeyboardKey> kMacOsNumPadMap = <int, LogicalKeyboardKey>{ |
| 0x0000004b: LogicalKeyboardKey.numpadDivide, |
| 0x00000043: LogicalKeyboardKey.numpadMultiply, |
| 0x0000004e: LogicalKeyboardKey.numpadSubtract, |
| 0x00000045: LogicalKeyboardKey.numpadAdd, |
| 0x00000053: LogicalKeyboardKey.numpad1, |
| 0x00000054: LogicalKeyboardKey.numpad2, |
| 0x00000055: LogicalKeyboardKey.numpad3, |
| 0x00000056: LogicalKeyboardKey.numpad4, |
| 0x00000057: LogicalKeyboardKey.numpad5, |
| 0x00000058: LogicalKeyboardKey.numpad6, |
| 0x00000059: LogicalKeyboardKey.numpad7, |
| 0x0000005b: LogicalKeyboardKey.numpad8, |
| 0x0000005c: LogicalKeyboardKey.numpad9, |
| 0x00000052: LogicalKeyboardKey.numpad0, |
| 0x00000041: LogicalKeyboardKey.numpadDecimal, |
| 0x00000051: LogicalKeyboardKey.numpadEqual, |
| 0x0000005f: LogicalKeyboardKey.numpadComma, |
| }; |
| |
| /// A map of macOS key codes which are numbered function keys, so that they |
| /// can be excluded when asking "is the Fn modifier down?". |
| const Map<int, LogicalKeyboardKey> kMacOsFunctionKeyMap = <int, LogicalKeyboardKey>{ |
| 0x0000007a: LogicalKeyboardKey.f1, |
| 0x00000078: LogicalKeyboardKey.f2, |
| 0x00000063: LogicalKeyboardKey.f3, |
| 0x00000076: LogicalKeyboardKey.f4, |
| 0x00000060: LogicalKeyboardKey.f5, |
| 0x00000061: LogicalKeyboardKey.f6, |
| 0x00000062: LogicalKeyboardKey.f7, |
| 0x00000064: LogicalKeyboardKey.f8, |
| 0x00000065: LogicalKeyboardKey.f9, |
| 0x0000006d: LogicalKeyboardKey.f10, |
| 0x00000067: LogicalKeyboardKey.f11, |
| 0x0000006f: LogicalKeyboardKey.f12, |
| 0x00000069: LogicalKeyboardKey.f13, |
| 0x0000006b: LogicalKeyboardKey.f14, |
| 0x00000071: LogicalKeyboardKey.f15, |
| 0x0000006a: LogicalKeyboardKey.f16, |
| 0x00000040: LogicalKeyboardKey.f17, |
| 0x0000004f: LogicalKeyboardKey.f18, |
| 0x00000050: LogicalKeyboardKey.f19, |
| 0x0000005a: LogicalKeyboardKey.f20, |
| }; |
| |
| /// Maps GLFW-specific key codes to the matching [LogicalKeyboardKey]. |
| const Map<int, LogicalKeyboardKey> kGlfwToLogicalKey = <int, LogicalKeyboardKey>{ |
| 65: LogicalKeyboardKey.keyA, |
| 66: LogicalKeyboardKey.keyB, |
| 67: LogicalKeyboardKey.keyC, |
| 68: LogicalKeyboardKey.keyD, |
| 69: LogicalKeyboardKey.keyE, |
| 70: LogicalKeyboardKey.keyF, |
| 71: LogicalKeyboardKey.keyG, |
| 72: LogicalKeyboardKey.keyH, |
| 73: LogicalKeyboardKey.keyI, |
| 74: LogicalKeyboardKey.keyJ, |
| 75: LogicalKeyboardKey.keyK, |
| 76: LogicalKeyboardKey.keyL, |
| 77: LogicalKeyboardKey.keyM, |
| 78: LogicalKeyboardKey.keyN, |
| 79: LogicalKeyboardKey.keyO, |
| 80: LogicalKeyboardKey.keyP, |
| 81: LogicalKeyboardKey.keyQ, |
| 82: LogicalKeyboardKey.keyR, |
| 83: LogicalKeyboardKey.keyS, |
| 84: LogicalKeyboardKey.keyT, |
| 85: LogicalKeyboardKey.keyU, |
| 86: LogicalKeyboardKey.keyV, |
| 87: LogicalKeyboardKey.keyW, |
| 88: LogicalKeyboardKey.keyX, |
| 89: LogicalKeyboardKey.keyY, |
| 90: LogicalKeyboardKey.keyZ, |
| 49: LogicalKeyboardKey.digit1, |
| 50: LogicalKeyboardKey.digit2, |
| 51: LogicalKeyboardKey.digit3, |
| 52: LogicalKeyboardKey.digit4, |
| 53: LogicalKeyboardKey.digit5, |
| 54: LogicalKeyboardKey.digit6, |
| 55: LogicalKeyboardKey.digit7, |
| 56: LogicalKeyboardKey.digit8, |
| 57: LogicalKeyboardKey.digit9, |
| 48: LogicalKeyboardKey.digit0, |
| 257: LogicalKeyboardKey.enter, |
| 256: LogicalKeyboardKey.escape, |
| 259: LogicalKeyboardKey.backspace, |
| 258: LogicalKeyboardKey.tab, |
| 32: LogicalKeyboardKey.space, |
| 45: LogicalKeyboardKey.minus, |
| 61: LogicalKeyboardKey.equal, |
| 91: LogicalKeyboardKey.bracketLeft, |
| 93: LogicalKeyboardKey.bracketRight, |
| 92: LogicalKeyboardKey.backslash, |
| 59: LogicalKeyboardKey.semicolon, |
| 39: LogicalKeyboardKey.quote, |
| 96: LogicalKeyboardKey.backquote, |
| 44: LogicalKeyboardKey.comma, |
| 46: LogicalKeyboardKey.period, |
| 47: LogicalKeyboardKey.slash, |
| 280: LogicalKeyboardKey.capsLock, |
| 290: LogicalKeyboardKey.f1, |
| 291: LogicalKeyboardKey.f2, |
| 292: LogicalKeyboardKey.f3, |
| 293: LogicalKeyboardKey.f4, |
| 294: LogicalKeyboardKey.f5, |
| 295: LogicalKeyboardKey.f6, |
| 296: LogicalKeyboardKey.f7, |
| 297: LogicalKeyboardKey.f8, |
| 298: LogicalKeyboardKey.f9, |
| 299: LogicalKeyboardKey.f10, |
| 300: LogicalKeyboardKey.f11, |
| 301: LogicalKeyboardKey.f12, |
| 283: LogicalKeyboardKey.printScreen, |
| 284: LogicalKeyboardKey.pause, |
| 260: LogicalKeyboardKey.insert, |
| 268: LogicalKeyboardKey.home, |
| 266: LogicalKeyboardKey.pageUp, |
| 261: LogicalKeyboardKey.delete, |
| 269: LogicalKeyboardKey.end, |
| 267: LogicalKeyboardKey.pageDown, |
| 262: LogicalKeyboardKey.arrowRight, |
| 263: LogicalKeyboardKey.arrowLeft, |
| 264: LogicalKeyboardKey.arrowDown, |
| 265: LogicalKeyboardKey.arrowUp, |
| 282: LogicalKeyboardKey.numLock, |
| 331: LogicalKeyboardKey.numpadDivide, |
| 332: LogicalKeyboardKey.numpadMultiply, |
| 334: LogicalKeyboardKey.numpadAdd, |
| 335: LogicalKeyboardKey.numpadEnter, |
| 321: LogicalKeyboardKey.numpad1, |
| 322: LogicalKeyboardKey.numpad2, |
| 323: LogicalKeyboardKey.numpad3, |
| 324: LogicalKeyboardKey.numpad4, |
| 325: LogicalKeyboardKey.numpad5, |
| 326: LogicalKeyboardKey.numpad6, |
| 327: LogicalKeyboardKey.numpad7, |
| 328: LogicalKeyboardKey.numpad8, |
| 329: LogicalKeyboardKey.numpad9, |
| 320: LogicalKeyboardKey.numpad0, |
| 330: LogicalKeyboardKey.numpadDecimal, |
| 348: LogicalKeyboardKey.contextMenu, |
| 336: LogicalKeyboardKey.numpadEqual, |
| 302: LogicalKeyboardKey.f13, |
| 303: LogicalKeyboardKey.f14, |
| 304: LogicalKeyboardKey.f15, |
| 305: LogicalKeyboardKey.f16, |
| 306: LogicalKeyboardKey.f17, |
| 307: LogicalKeyboardKey.f18, |
| 308: LogicalKeyboardKey.f19, |
| 309: LogicalKeyboardKey.f20, |
| 310: LogicalKeyboardKey.f21, |
| 311: LogicalKeyboardKey.f22, |
| 312: LogicalKeyboardKey.f23, |
| 341: LogicalKeyboardKey.controlLeft, |
| 340: LogicalKeyboardKey.shiftLeft, |
| 342: LogicalKeyboardKey.altLeft, |
| 343: LogicalKeyboardKey.metaLeft, |
| 345: LogicalKeyboardKey.controlRight, |
| 344: LogicalKeyboardKey.shiftRight, |
| 346: LogicalKeyboardKey.altRight, |
| 347: LogicalKeyboardKey.metaRight, |
| }; |
| |
| /// A map of GLFW key codes which have printable representations, but appear |
| /// on the number pad. Used to provide different key objects for keys like |
| /// KEY_EQUALS and NUMPAD_EQUALS. |
| const Map<int, LogicalKeyboardKey> kGlfwNumpadMap = <int, LogicalKeyboardKey>{ |
| 331: LogicalKeyboardKey.numpadDivide, |
| 332: LogicalKeyboardKey.numpadMultiply, |
| 334: LogicalKeyboardKey.numpadAdd, |
| 321: LogicalKeyboardKey.numpad1, |
| 322: LogicalKeyboardKey.numpad2, |
| 323: LogicalKeyboardKey.numpad3, |
| 324: LogicalKeyboardKey.numpad4, |
| 325: LogicalKeyboardKey.numpad5, |
| 326: LogicalKeyboardKey.numpad6, |
| 327: LogicalKeyboardKey.numpad7, |
| 328: LogicalKeyboardKey.numpad8, |
| 329: LogicalKeyboardKey.numpad9, |
| 320: LogicalKeyboardKey.numpad0, |
| 330: LogicalKeyboardKey.numpadDecimal, |
| 336: LogicalKeyboardKey.numpadEqual, |
| }; |
| |
| /// Maps XKB specific key code values representing [PhysicalKeyboardKey]. |
| const Map<int, PhysicalKeyboardKey> kLinuxToPhysicalKey = <int, PhysicalKeyboardKey>{ |
| 0x00000281: PhysicalKeyboardKey.privacyScreenToggle, |
| 0x00000096: PhysicalKeyboardKey.sleep, |
| 0x00000097: PhysicalKeyboardKey.wakeUp, |
| 0x000000eb: PhysicalKeyboardKey.displayToggleIntExt, |
| 0x00000026: PhysicalKeyboardKey.keyA, |
| 0x00000038: PhysicalKeyboardKey.keyB, |
| 0x00000036: PhysicalKeyboardKey.keyC, |
| 0x00000028: PhysicalKeyboardKey.keyD, |
| 0x0000001a: PhysicalKeyboardKey.keyE, |
| 0x00000029: PhysicalKeyboardKey.keyF, |
| 0x0000002a: PhysicalKeyboardKey.keyG, |
| 0x0000002b: PhysicalKeyboardKey.keyH, |
| 0x0000001f: PhysicalKeyboardKey.keyI, |
| 0x0000002c: PhysicalKeyboardKey.keyJ, |
| 0x0000002d: PhysicalKeyboardKey.keyK, |
| 0x0000002e: PhysicalKeyboardKey.keyL, |
| 0x0000003a: PhysicalKeyboardKey.keyM, |
| 0x00000039: PhysicalKeyboardKey.keyN, |
| 0x00000020: PhysicalKeyboardKey.keyO, |
| 0x00000021: PhysicalKeyboardKey.keyP, |
| 0x00000018: PhysicalKeyboardKey.keyQ, |
| 0x0000001b: PhysicalKeyboardKey.keyR, |
| 0x00000027: PhysicalKeyboardKey.keyS, |
| 0x0000001c: PhysicalKeyboardKey.keyT, |
| 0x0000001e: PhysicalKeyboardKey.keyU, |
| 0x00000037: PhysicalKeyboardKey.keyV, |
| 0x00000019: PhysicalKeyboardKey.keyW, |
| 0x00000035: PhysicalKeyboardKey.keyX, |
| 0x0000001d: PhysicalKeyboardKey.keyY, |
| 0x00000034: PhysicalKeyboardKey.keyZ, |
| 0x0000000a: PhysicalKeyboardKey.digit1, |
| 0x0000000b: PhysicalKeyboardKey.digit2, |
| 0x0000000c: PhysicalKeyboardKey.digit3, |
| 0x0000000d: PhysicalKeyboardKey.digit4, |
| 0x0000000e: PhysicalKeyboardKey.digit5, |
| 0x0000000f: PhysicalKeyboardKey.digit6, |
| 0x00000010: PhysicalKeyboardKey.digit7, |
| 0x00000011: PhysicalKeyboardKey.digit8, |
| 0x00000012: PhysicalKeyboardKey.digit9, |
| 0x00000013: PhysicalKeyboardKey.digit0, |
| 0x00000024: PhysicalKeyboardKey.enter, |
| 0x00000009: PhysicalKeyboardKey.escape, |
| 0x00000016: PhysicalKeyboardKey.backspace, |
| 0x00000017: PhysicalKeyboardKey.tab, |
| 0x00000041: PhysicalKeyboardKey.space, |
| 0x00000014: PhysicalKeyboardKey.minus, |
| 0x00000015: PhysicalKeyboardKey.equal, |
| 0x00000022: PhysicalKeyboardKey.bracketLeft, |
| 0x00000023: PhysicalKeyboardKey.bracketRight, |
| 0x00000033: PhysicalKeyboardKey.backslash, |
| 0x0000002f: PhysicalKeyboardKey.semicolon, |
| 0x00000030: PhysicalKeyboardKey.quote, |
| 0x00000031: PhysicalKeyboardKey.backquote, |
| 0x0000003b: PhysicalKeyboardKey.comma, |
| 0x0000003c: PhysicalKeyboardKey.period, |
| 0x0000003d: PhysicalKeyboardKey.slash, |
| 0x00000042: PhysicalKeyboardKey.capsLock, |
| 0x00000043: PhysicalKeyboardKey.f1, |
| 0x00000044: PhysicalKeyboardKey.f2, |
| 0x00000045: PhysicalKeyboardKey.f3, |
| 0x00000046: PhysicalKeyboardKey.f4, |
| 0x00000047: PhysicalKeyboardKey.f5, |
| 0x00000048: PhysicalKeyboardKey.f6, |
| 0x00000049: PhysicalKeyboardKey.f7, |
| 0x0000004a: PhysicalKeyboardKey.f8, |
| 0x0000004b: PhysicalKeyboardKey.f9, |
| 0x0000004c: PhysicalKeyboardKey.f10, |
| 0x0000005f: PhysicalKeyboardKey.f11, |
| 0x00000060: PhysicalKeyboardKey.f12, |
| 0x0000006b: PhysicalKeyboardKey.printScreen, |
| 0x0000004e: PhysicalKeyboardKey.scrollLock, |
| 0x0000007f: PhysicalKeyboardKey.pause, |
| 0x00000076: PhysicalKeyboardKey.insert, |
| 0x0000006e: PhysicalKeyboardKey.home, |
| 0x00000070: PhysicalKeyboardKey.pageUp, |
| 0x00000077: PhysicalKeyboardKey.delete, |
| 0x00000073: PhysicalKeyboardKey.end, |
| 0x00000075: PhysicalKeyboardKey.pageDown, |
| 0x00000072: PhysicalKeyboardKey.arrowRight, |
| 0x00000071: PhysicalKeyboardKey.arrowLeft, |
| 0x00000074: PhysicalKeyboardKey.arrowDown, |
| 0x0000006f: PhysicalKeyboardKey.arrowUp, |
| 0x0000004d: PhysicalKeyboardKey.numLock, |
| 0x0000006a: PhysicalKeyboardKey.numpadDivide, |
| 0x0000003f: PhysicalKeyboardKey.numpadMultiply, |
| 0x00000052: PhysicalKeyboardKey.numpadSubtract, |
| 0x00000056: PhysicalKeyboardKey.numpadAdd, |
| 0x00000068: PhysicalKeyboardKey.numpadEnter, |
| 0x00000057: PhysicalKeyboardKey.numpad1, |
| 0x00000058: PhysicalKeyboardKey.numpad2, |
| 0x00000059: PhysicalKeyboardKey.numpad3, |
| 0x00000053: PhysicalKeyboardKey.numpad4, |
| 0x00000054: PhysicalKeyboardKey.numpad5, |
| 0x00000055: PhysicalKeyboardKey.numpad6, |
| 0x0000004f: PhysicalKeyboardKey.numpad7, |
| 0x00000050: PhysicalKeyboardKey.numpad8, |
| 0x00000051: PhysicalKeyboardKey.numpad9, |
| 0x0000005a: PhysicalKeyboardKey.numpad0, |
| 0x0000005b: PhysicalKeyboardKey.numpadDecimal, |
| 0x0000005e: PhysicalKeyboardKey.intlBackslash, |
| 0x00000087: PhysicalKeyboardKey.contextMenu, |
| 0x0000007c: PhysicalKeyboardKey.power, |
| 0x0000007d: PhysicalKeyboardKey.numpadEqual, |
| 0x000000bf: PhysicalKeyboardKey.f13, |
| 0x000000c0: PhysicalKeyboardKey.f14, |
| 0x000000c1: PhysicalKeyboardKey.f15, |
| 0x000000c2: PhysicalKeyboardKey.f16, |
| 0x000000c3: PhysicalKeyboardKey.f17, |
| 0x000000c4: PhysicalKeyboardKey.f18, |
| 0x000000c5: PhysicalKeyboardKey.f19, |
| 0x000000c6: PhysicalKeyboardKey.f20, |
| 0x000000c7: PhysicalKeyboardKey.f21, |
| 0x000000c8: PhysicalKeyboardKey.f22, |
| 0x000000c9: PhysicalKeyboardKey.f23, |
| 0x000000ca: PhysicalKeyboardKey.f24, |
| 0x0000008e: PhysicalKeyboardKey.open, |
| 0x00000092: PhysicalKeyboardKey.help, |
| 0x0000008c: PhysicalKeyboardKey.select, |
| 0x00000089: PhysicalKeyboardKey.again, |
| 0x0000008b: PhysicalKeyboardKey.undo, |
| 0x00000091: PhysicalKeyboardKey.cut, |
| 0x0000008d: PhysicalKeyboardKey.copy, |
| 0x0000008f: PhysicalKeyboardKey.paste, |
| 0x00000090: PhysicalKeyboardKey.find, |
| 0x00000079: PhysicalKeyboardKey.audioVolumeMute, |
| 0x0000007b: PhysicalKeyboardKey.audioVolumeUp, |
| 0x0000007a: PhysicalKeyboardKey.audioVolumeDown, |
| 0x00000081: PhysicalKeyboardKey.numpadComma, |
| 0x00000061: PhysicalKeyboardKey.intlRo, |
| 0x00000065: PhysicalKeyboardKey.kanaMode, |
| 0x00000084: PhysicalKeyboardKey.intlYen, |
| 0x00000064: PhysicalKeyboardKey.convert, |
| 0x00000066: PhysicalKeyboardKey.nonConvert, |
| 0x00000082: PhysicalKeyboardKey.lang1, |
| 0x00000083: PhysicalKeyboardKey.lang2, |
| 0x00000062: PhysicalKeyboardKey.lang3, |
| 0x00000063: PhysicalKeyboardKey.lang4, |
| 0x0000005d: PhysicalKeyboardKey.lang5, |
| 0x000000bb: PhysicalKeyboardKey.numpadParenLeft, |
| 0x000000bc: PhysicalKeyboardKey.numpadParenRight, |
| 0x0000007e: PhysicalKeyboardKey.numpadSignChange, |
| 0x00000025: PhysicalKeyboardKey.controlLeft, |
| 0x00000032: PhysicalKeyboardKey.shiftLeft, |
| 0x00000040: PhysicalKeyboardKey.altLeft, |
| 0x00000085: PhysicalKeyboardKey.metaLeft, |
| 0x00000069: PhysicalKeyboardKey.controlRight, |
| 0x0000003e: PhysicalKeyboardKey.shiftRight, |
| 0x0000006c: PhysicalKeyboardKey.altRight, |
| 0x00000086: PhysicalKeyboardKey.metaRight, |
| 0x0000016e: PhysicalKeyboardKey.info, |
| 0x0000017a: PhysicalKeyboardKey.closedCaptionToggle, |
| 0x000000e9: PhysicalKeyboardKey.brightnessUp, |
| 0x000000e8: PhysicalKeyboardKey.brightnessDown, |
| 0x000001b7: PhysicalKeyboardKey.brightnessToggle, |
| 0x00000258: PhysicalKeyboardKey.brightnessMinimum, |
| 0x00000259: PhysicalKeyboardKey.brightnessMaximum, |
| 0x000000fc: PhysicalKeyboardKey.brightnessAuto, |
| 0x0000019d: PhysicalKeyboardKey.mediaLast, |
| 0x000000b1: PhysicalKeyboardKey.launchPhone, |
| 0x00000172: PhysicalKeyboardKey.programGuide, |
| 0x000000b6: PhysicalKeyboardKey.exit, |
| 0x000001a2: PhysicalKeyboardKey.channelUp, |
| 0x000001a3: PhysicalKeyboardKey.channelDown, |
| 0x000000d7: PhysicalKeyboardKey.mediaPlay, |
| 0x000000d1: PhysicalKeyboardKey.mediaPause, |
| 0x000000af: PhysicalKeyboardKey.mediaRecord, |
| 0x000000d8: PhysicalKeyboardKey.mediaFastForward, |
| 0x000000b0: PhysicalKeyboardKey.mediaRewind, |
| 0x000000ab: PhysicalKeyboardKey.mediaTrackNext, |
| 0x000000ad: PhysicalKeyboardKey.mediaTrackPrevious, |
| 0x000000ae: PhysicalKeyboardKey.mediaStop, |
| 0x000000a9: PhysicalKeyboardKey.eject, |
| 0x000000ac: PhysicalKeyboardKey.mediaPlayPause, |
| 0x0000024e: PhysicalKeyboardKey.speechInputToggle, |
| 0x000000d9: PhysicalKeyboardKey.bassBoost, |
| 0x000000b3: PhysicalKeyboardKey.mediaSelect, |
| 0x000001ad: PhysicalKeyboardKey.launchWordProcessor, |
| 0x000001af: PhysicalKeyboardKey.launchSpreadsheet, |
| 0x000000a3: PhysicalKeyboardKey.launchMail, |
| 0x000001b5: PhysicalKeyboardKey.launchContacts, |
| 0x00000195: PhysicalKeyboardKey.launchCalendar, |
| 0x00000094: PhysicalKeyboardKey.launchApp2, |
| 0x00000098: PhysicalKeyboardKey.launchApp1, |
| 0x0000009e: PhysicalKeyboardKey.launchInternetBrowser, |
| 0x000001b9: PhysicalKeyboardKey.logOff, |
| 0x000000a0: PhysicalKeyboardKey.lockScreen, |
| 0x0000024b: PhysicalKeyboardKey.launchControlPanel, |
| 0x0000024c: PhysicalKeyboardKey.selectTask, |
| 0x000000f3: PhysicalKeyboardKey.launchDocuments, |
| 0x000001b8: PhysicalKeyboardKey.spellCheck, |
| 0x0000017e: PhysicalKeyboardKey.launchKeyboardLayout, |
| 0x0000024d: PhysicalKeyboardKey.launchScreenSaver, |
| 0x0000024f: PhysicalKeyboardKey.launchAssistant, |
| 0x00000190: PhysicalKeyboardKey.launchAudioBrowser, |
| 0x000000bd: PhysicalKeyboardKey.newKey, |
| 0x000000d6: PhysicalKeyboardKey.close, |
| 0x000000f2: PhysicalKeyboardKey.save, |
| 0x000000da: PhysicalKeyboardKey.print, |
| 0x000000e1: PhysicalKeyboardKey.browserSearch, |
| 0x000000b4: PhysicalKeyboardKey.browserHome, |
| 0x000000a6: PhysicalKeyboardKey.browserBack, |
| 0x000000a7: PhysicalKeyboardKey.browserForward, |
| 0x00000088: PhysicalKeyboardKey.browserStop, |
| 0x000000b5: PhysicalKeyboardKey.browserRefresh, |
| 0x000000a4: PhysicalKeyboardKey.browserFavorites, |
| 0x000001aa: PhysicalKeyboardKey.zoomIn, |
| 0x000001ab: PhysicalKeyboardKey.zoomOut, |
| 0x0000017c: PhysicalKeyboardKey.zoomToggle, |
| 0x000000be: PhysicalKeyboardKey.redo, |
| 0x000000f0: PhysicalKeyboardKey.mailReply, |
| 0x000000f1: PhysicalKeyboardKey.mailForward, |
| 0x000000ef: PhysicalKeyboardKey.mailSend, |
| 0x00000250: PhysicalKeyboardKey.keyboardLayoutSelect, |
| 0x00000080: PhysicalKeyboardKey.showAllWindows, |
| }; |
| |
| /// Maps Web KeyboardEvent codes to the matching [LogicalKeyboardKey]. |
| const Map<String, LogicalKeyboardKey> kWebToLogicalKey = <String, LogicalKeyboardKey>{ |
| 'None': LogicalKeyboardKey.none, |
| 'Hyper': LogicalKeyboardKey.hyper, |
| 'Super': LogicalKeyboardKey.superKey, |
| 'FnLock': LogicalKeyboardKey.fnLock, |
| 'Suspend': LogicalKeyboardKey.suspend, |
| 'Resume': LogicalKeyboardKey.resume, |
| 'Turbo': LogicalKeyboardKey.turbo, |
| 'PrivacyScreenToggle': LogicalKeyboardKey.privacyScreenToggle, |
| 'Sleep': LogicalKeyboardKey.sleep, |
| 'WakeUp': LogicalKeyboardKey.wakeUp, |
| 'DisplayToggleIntExt': LogicalKeyboardKey.displayToggleIntExt, |
| 'KeyA': LogicalKeyboardKey.keyA, |
| 'KeyB': LogicalKeyboardKey.keyB, |
| 'KeyC': LogicalKeyboardKey.keyC, |
| 'KeyD': LogicalKeyboardKey.keyD, |
| 'KeyE': LogicalKeyboardKey.keyE, |
| 'KeyF': LogicalKeyboardKey.keyF, |
| 'KeyG': LogicalKeyboardKey.keyG, |
| 'KeyH': LogicalKeyboardKey.keyH, |
| 'KeyI': LogicalKeyboardKey.keyI, |
| 'KeyJ': LogicalKeyboardKey.keyJ, |
| 'KeyK': LogicalKeyboardKey.keyK, |
| 'KeyL': LogicalKeyboardKey.keyL, |
| 'KeyM': LogicalKeyboardKey.keyM, |
| 'KeyN': LogicalKeyboardKey.keyN, |
| 'KeyO': LogicalKeyboardKey.keyO, |
| 'KeyP': LogicalKeyboardKey.keyP, |
| 'KeyQ': LogicalKeyboardKey.keyQ, |
| 'KeyR': LogicalKeyboardKey.keyR, |
| 'KeyS': LogicalKeyboardKey.keyS, |
| 'KeyT': LogicalKeyboardKey.keyT, |
| 'KeyU': LogicalKeyboardKey.keyU, |
| 'KeyV': LogicalKeyboardKey.keyV, |
| 'KeyW': LogicalKeyboardKey.keyW, |
| 'KeyX': LogicalKeyboardKey.keyX, |
| 'KeyY': LogicalKeyboardKey.keyY, |
| 'KeyZ': LogicalKeyboardKey.keyZ, |
| 'Digit1': LogicalKeyboardKey.digit1, |
| 'Digit2': LogicalKeyboardKey.digit2, |
| 'Digit3': LogicalKeyboardKey.digit3, |
| 'Digit4': LogicalKeyboardKey.digit4, |
| 'Digit5': LogicalKeyboardKey.digit5, |
| 'Digit6': LogicalKeyboardKey.digit6, |
| 'Digit7': LogicalKeyboardKey.digit7, |
| 'Digit8': LogicalKeyboardKey.digit8, |
| 'Digit9': LogicalKeyboardKey.digit9, |
| 'Digit0': LogicalKeyboardKey.digit0, |
| 'Enter': LogicalKeyboardKey.enter, |
| 'Escape': LogicalKeyboardKey.escape, |
| 'Backspace': LogicalKeyboardKey.backspace, |
| 'Tab': LogicalKeyboardKey.tab, |
| 'Space': LogicalKeyboardKey.space, |
| 'Minus': LogicalKeyboardKey.minus, |
| 'Equal': LogicalKeyboardKey.equal, |
| 'BracketLeft': LogicalKeyboardKey.bracketLeft, |
| 'BracketRight': LogicalKeyboardKey.bracketRight, |
| 'Backslash': LogicalKeyboardKey.backslash, |
| 'Semicolon': LogicalKeyboardKey.semicolon, |
| 'Quote': LogicalKeyboardKey.quote, |
| 'Backquote': LogicalKeyboardKey.backquote, |
| 'Comma': LogicalKeyboardKey.comma, |
| 'Period': LogicalKeyboardKey.period, |
| 'Slash': LogicalKeyboardKey.slash, |
| 'CapsLock': LogicalKeyboardKey.capsLock, |
| 'F1': LogicalKeyboardKey.f1, |
| 'F2': LogicalKeyboardKey.f2, |
| 'F3': LogicalKeyboardKey.f3, |
| 'F4': LogicalKeyboardKey.f4, |
| 'F5': LogicalKeyboardKey.f5, |
| 'F6': LogicalKeyboardKey.f6, |
| 'F7': LogicalKeyboardKey.f7, |
| 'F8': LogicalKeyboardKey.f8, |
| 'F9': LogicalKeyboardKey.f9, |
| 'F10': LogicalKeyboardKey.f10, |
| 'F11': LogicalKeyboardKey.f11, |
| 'F12': LogicalKeyboardKey.f12, |
| 'PrintScreen': LogicalKeyboardKey.printScreen, |
| 'ScrollLock': LogicalKeyboardKey.scrollLock, |
| 'Pause': LogicalKeyboardKey.pause, |
| 'Insert': LogicalKeyboardKey.insert, |
| 'Home': LogicalKeyboardKey.home, |
| 'PageUp': LogicalKeyboardKey.pageUp, |
| 'Delete': LogicalKeyboardKey.delete, |
| 'End': LogicalKeyboardKey.end, |
| 'PageDown': LogicalKeyboardKey.pageDown, |
| 'ArrowRight': LogicalKeyboardKey.arrowRight, |
| 'ArrowLeft': LogicalKeyboardKey.arrowLeft, |
| 'ArrowDown': LogicalKeyboardKey.arrowDown, |
| 'ArrowUp': LogicalKeyboardKey.arrowUp, |
| 'NumLock': LogicalKeyboardKey.numLock, |
| 'NumpadDivide': LogicalKeyboardKey.numpadDivide, |
| 'NumpadMultiply': LogicalKeyboardKey.numpadMultiply, |
| 'NumpadSubtract': LogicalKeyboardKey.numpadSubtract, |
| 'NumpadAdd': LogicalKeyboardKey.numpadAdd, |
| 'NumpadEnter': LogicalKeyboardKey.numpadEnter, |
| 'Numpad1': LogicalKeyboardKey.numpad1, |
| 'Numpad2': LogicalKeyboardKey.numpad2, |
| 'Numpad3': LogicalKeyboardKey.numpad3, |
| 'Numpad4': LogicalKeyboardKey.numpad4, |
| 'Numpad5': LogicalKeyboardKey.numpad5, |
| 'Numpad6': LogicalKeyboardKey.numpad6, |
| 'Numpad7': LogicalKeyboardKey.numpad7, |
| 'Numpad8': LogicalKeyboardKey.numpad8, |
| 'Numpad9': LogicalKeyboardKey.numpad9, |
| 'Numpad0': LogicalKeyboardKey.numpad0, |
| 'NumpadDecimal': LogicalKeyboardKey.numpadDecimal, |
| 'IntlBackslash': LogicalKeyboardKey.intlBackslash, |
| 'ContextMenu': LogicalKeyboardKey.contextMenu, |
| 'Power': LogicalKeyboardKey.power, |
| 'NumpadEqual': LogicalKeyboardKey.numpadEqual, |
| 'F13': LogicalKeyboardKey.f13, |
| 'F14': LogicalKeyboardKey.f14, |
| 'F15': LogicalKeyboardKey.f15, |
| 'F16': LogicalKeyboardKey.f16, |
| 'F17': LogicalKeyboardKey.f17, |
| 'F18': LogicalKeyboardKey.f18, |
| 'F19': LogicalKeyboardKey.f19, |
| 'F20': LogicalKeyboardKey.f20, |
| 'F21': LogicalKeyboardKey.f21, |
| 'F22': LogicalKeyboardKey.f22, |
| 'F23': LogicalKeyboardKey.f23, |
| 'F24': LogicalKeyboardKey.f24, |
| 'Open': LogicalKeyboardKey.open, |
| 'Help': LogicalKeyboardKey.help, |
| 'Select': LogicalKeyboardKey.select, |
| 'Again': LogicalKeyboardKey.again, |
| 'Undo': LogicalKeyboardKey.undo, |
| 'Cut': LogicalKeyboardKey.cut, |
| 'Copy': LogicalKeyboardKey.copy, |
| 'Paste': LogicalKeyboardKey.paste, |
| 'Find': LogicalKeyboardKey.find, |
| 'AudioVolumeMute': LogicalKeyboardKey.audioVolumeMute, |
| 'AudioVolumeUp': LogicalKeyboardKey.audioVolumeUp, |
| 'AudioVolumeDown': LogicalKeyboardKey.audioVolumeDown, |
| 'NumpadComma': LogicalKeyboardKey.numpadComma, |
| 'IntlRo': LogicalKeyboardKey.intlRo, |
| 'KanaMode': LogicalKeyboardKey.kanaMode, |
| 'IntlYen': LogicalKeyboardKey.intlYen, |
| 'Convert': LogicalKeyboardKey.convert, |
| 'NonConvert': LogicalKeyboardKey.nonConvert, |
| 'Lang1': LogicalKeyboardKey.lang1, |
| 'Lang2': LogicalKeyboardKey.lang2, |
| 'Lang3': LogicalKeyboardKey.lang3, |
| 'Lang4': LogicalKeyboardKey.lang4, |
| 'Lang5': LogicalKeyboardKey.lang5, |
| 'Abort': LogicalKeyboardKey.abort, |
| 'Props': LogicalKeyboardKey.props, |
| 'NumpadParenLeft': LogicalKeyboardKey.numpadParenLeft, |
| 'NumpadParenRight': LogicalKeyboardKey.numpadParenRight, |
| 'NumpadBackspace': LogicalKeyboardKey.numpadBackspace, |
| 'NumpadMemoryStore': LogicalKeyboardKey.numpadMemoryStore, |
| 'NumpadMemoryRecall': LogicalKeyboardKey.numpadMemoryRecall, |
| 'NumpadMemoryClear': LogicalKeyboardKey.numpadMemoryClear, |
| 'NumpadMemoryAdd': LogicalKeyboardKey.numpadMemoryAdd, |
| 'NumpadMemorySubtract': LogicalKeyboardKey.numpadMemorySubtract, |
| 'NumpadClear': LogicalKeyboardKey.numpadClear, |
| 'NumpadClearEntry': LogicalKeyboardKey.numpadClearEntry, |
| 'ControlLeft': LogicalKeyboardKey.controlLeft, |
| 'ShiftLeft': LogicalKeyboardKey.shiftLeft, |
| 'AltLeft': LogicalKeyboardKey.altLeft, |
| 'MetaLeft': LogicalKeyboardKey.metaLeft, |
| 'ControlRight': LogicalKeyboardKey.controlRight, |
| 'ShiftRight': LogicalKeyboardKey.shiftRight, |
| 'AltRight': LogicalKeyboardKey.altRight, |
| 'MetaRight': LogicalKeyboardKey.metaRight, |
| 'BrightnessUp': LogicalKeyboardKey.brightnessUp, |
| 'BrightnessDown': LogicalKeyboardKey.brightnessDown, |
| 'MediaPlay': LogicalKeyboardKey.mediaPlay, |
| 'MediaPause': LogicalKeyboardKey.mediaPause, |
| 'MediaRecord': LogicalKeyboardKey.mediaRecord, |
| 'MediaFastForward': LogicalKeyboardKey.mediaFastForward, |
| 'MediaRewind': LogicalKeyboardKey.mediaRewind, |
| 'MediaTrackNext': LogicalKeyboardKey.mediaTrackNext, |
| 'MediaTrackPrevious': LogicalKeyboardKey.mediaTrackPrevious, |
| 'MediaStop': LogicalKeyboardKey.mediaStop, |
| 'Eject': LogicalKeyboardKey.eject, |
| 'MediaPlayPause': LogicalKeyboardKey.mediaPlayPause, |
| 'MediaSelect': LogicalKeyboardKey.mediaSelect, |
| 'LaunchMail': LogicalKeyboardKey.launchMail, |
| 'LaunchApp2': LogicalKeyboardKey.launchApp2, |
| 'LaunchApp1': LogicalKeyboardKey.launchApp1, |
| 'LaunchControlPanel': LogicalKeyboardKey.launchControlPanel, |
| 'SelectTask': LogicalKeyboardKey.selectTask, |
| 'LaunchScreenSaver': LogicalKeyboardKey.launchScreenSaver, |
| 'LaunchAssistant': LogicalKeyboardKey.launchAssistant, |
| 'BrowserSearch': LogicalKeyboardKey.browserSearch, |
| 'BrowserHome': LogicalKeyboardKey.browserHome, |
| 'BrowserBack': LogicalKeyboardKey.browserBack, |
| 'BrowserForward': LogicalKeyboardKey.browserForward, |
| 'BrowserStop': LogicalKeyboardKey.browserStop, |
| 'BrowserRefresh': LogicalKeyboardKey.browserRefresh, |
| 'BrowserFavorites': LogicalKeyboardKey.browserFavorites, |
| 'ZoomToggle': LogicalKeyboardKey.zoomToggle, |
| 'MailReply': LogicalKeyboardKey.mailReply, |
| 'MailForward': LogicalKeyboardKey.mailForward, |
| 'MailSend': LogicalKeyboardKey.mailSend, |
| 'KeyboardLayoutSelect': LogicalKeyboardKey.keyboardLayoutSelect, |
| 'ShowAllWindows': LogicalKeyboardKey.showAllWindows, |
| 'GameButton1': LogicalKeyboardKey.gameButton1, |
| 'GameButton2': LogicalKeyboardKey.gameButton2, |
| 'GameButton3': LogicalKeyboardKey.gameButton3, |
| 'GameButton4': LogicalKeyboardKey.gameButton4, |
| 'GameButton5': LogicalKeyboardKey.gameButton5, |
| 'GameButton6': LogicalKeyboardKey.gameButton6, |
| 'GameButton7': LogicalKeyboardKey.gameButton7, |
| 'GameButton8': LogicalKeyboardKey.gameButton8, |
| 'GameButton9': LogicalKeyboardKey.gameButton9, |
| 'GameButton10': LogicalKeyboardKey.gameButton10, |
| 'GameButton11': LogicalKeyboardKey.gameButton11, |
| 'GameButton12': LogicalKeyboardKey.gameButton12, |
| 'GameButton13': LogicalKeyboardKey.gameButton13, |
| 'GameButton14': LogicalKeyboardKey.gameButton14, |
| 'GameButton15': LogicalKeyboardKey.gameButton15, |
| 'GameButton16': LogicalKeyboardKey.gameButton16, |
| 'GameButtonA': LogicalKeyboardKey.gameButtonA, |
| 'GameButtonB': LogicalKeyboardKey.gameButtonB, |
| 'GameButtonC': LogicalKeyboardKey.gameButtonC, |
| 'GameButtonLeft1': LogicalKeyboardKey.gameButtonLeft1, |
| 'GameButtonLeft2': LogicalKeyboardKey.gameButtonLeft2, |
| 'GameButtonMode': LogicalKeyboardKey.gameButtonMode, |
| 'GameButtonRight1': LogicalKeyboardKey.gameButtonRight1, |
| 'GameButtonRight2': LogicalKeyboardKey.gameButtonRight2, |
| 'GameButtonSelect': LogicalKeyboardKey.gameButtonSelect, |
| 'GameButtonStart': LogicalKeyboardKey.gameButtonStart, |
| 'GameButtonThumbLeft': LogicalKeyboardKey.gameButtonThumbLeft, |
| 'GameButtonThumbRight': LogicalKeyboardKey.gameButtonThumbRight, |
| 'GameButtonX': LogicalKeyboardKey.gameButtonX, |
| 'GameButtonY': LogicalKeyboardKey.gameButtonY, |
| 'GameButtonZ': LogicalKeyboardKey.gameButtonZ, |
| 'Fn': LogicalKeyboardKey.fn, |
| }; |
| |
| /// Maps Web KeyboardEvent codes to the matching [PhysicalKeyboardKey]. |
| const Map<String, PhysicalKeyboardKey> kWebToPhysicalKey = <String, PhysicalKeyboardKey>{ |
| 'None': PhysicalKeyboardKey.none, |
| 'Hyper': PhysicalKeyboardKey.hyper, |
| 'Super': PhysicalKeyboardKey.superKey, |
| 'FnLock': PhysicalKeyboardKey.fnLock, |
| 'Suspend': PhysicalKeyboardKey.suspend, |
| 'Resume': PhysicalKeyboardKey.resume, |
| 'Turbo': PhysicalKeyboardKey.turbo, |
| 'PrivacyScreenToggle': PhysicalKeyboardKey.privacyScreenToggle, |
| 'Sleep': PhysicalKeyboardKey.sleep, |
| 'WakeUp': PhysicalKeyboardKey.wakeUp, |
| 'DisplayToggleIntExt': PhysicalKeyboardKey.displayToggleIntExt, |
| 'KeyA': PhysicalKeyboardKey.keyA, |
| 'KeyB': PhysicalKeyboardKey.keyB, |
| 'KeyC': PhysicalKeyboardKey.keyC, |
| 'KeyD': PhysicalKeyboardKey.keyD, |
| 'KeyE': PhysicalKeyboardKey.keyE, |
| 'KeyF': PhysicalKeyboardKey.keyF, |
| 'KeyG': PhysicalKeyboardKey.keyG, |
| 'KeyH': PhysicalKeyboardKey.keyH, |
| 'KeyI': PhysicalKeyboardKey.keyI, |
| 'KeyJ': PhysicalKeyboardKey.keyJ, |
| 'KeyK': PhysicalKeyboardKey.keyK, |
| 'KeyL': PhysicalKeyboardKey.keyL, |
| 'KeyM': PhysicalKeyboardKey.keyM, |
| 'KeyN': PhysicalKeyboardKey.keyN, |
| 'KeyO': PhysicalKeyboardKey.keyO, |
| 'KeyP': PhysicalKeyboardKey.keyP, |
| 'KeyQ': PhysicalKeyboardKey.keyQ, |
| 'KeyR': PhysicalKeyboardKey.keyR, |
| 'KeyS': PhysicalKeyboardKey.keyS, |
| 'KeyT': PhysicalKeyboardKey.keyT, |
| 'KeyU': PhysicalKeyboardKey.keyU, |
| 'KeyV': PhysicalKeyboardKey.keyV, |
| 'KeyW': PhysicalKeyboardKey.keyW, |
| 'KeyX': PhysicalKeyboardKey.keyX, |
| 'KeyY': PhysicalKeyboardKey.keyY, |
| 'KeyZ': PhysicalKeyboardKey.keyZ, |
| 'Digit1': PhysicalKeyboardKey.digit1, |
| 'Digit2': PhysicalKeyboardKey.digit2, |
| 'Digit3': PhysicalKeyboardKey.digit3, |
| 'Digit4': PhysicalKeyboardKey.digit4, |
| 'Digit5': PhysicalKeyboardKey.digit5, |
| 'Digit6': PhysicalKeyboardKey.digit6, |
| 'Digit7': PhysicalKeyboardKey.digit7, |
| 'Digit8': PhysicalKeyboardKey.digit8, |
| 'Digit9': PhysicalKeyboardKey.digit9, |
| 'Digit0': PhysicalKeyboardKey.digit0, |
| 'Enter': PhysicalKeyboardKey.enter, |
| 'Escape': PhysicalKeyboardKey.escape, |
| 'Backspace': PhysicalKeyboardKey.backspace, |
| 'Tab': PhysicalKeyboardKey.tab, |
| 'Space': PhysicalKeyboardKey.space, |
| 'Minus': PhysicalKeyboardKey.minus, |
| 'Equal': PhysicalKeyboardKey.equal, |
| 'BracketLeft': PhysicalKeyboardKey.bracketLeft, |
| 'BracketRight': PhysicalKeyboardKey.bracketRight, |
| 'Backslash': PhysicalKeyboardKey.backslash, |
| 'Semicolon': PhysicalKeyboardKey.semicolon, |
| 'Quote': PhysicalKeyboardKey.quote, |
| 'Backquote': PhysicalKeyboardKey.backquote, |
| 'Comma': PhysicalKeyboardKey.comma, |
| 'Period': PhysicalKeyboardKey.period, |
| 'Slash': PhysicalKeyboardKey.slash, |
| 'CapsLock': PhysicalKeyboardKey.capsLock, |
| 'F1': PhysicalKeyboardKey.f1, |
| 'F2': PhysicalKeyboardKey.f2, |
| 'F3': PhysicalKeyboardKey.f3, |
| 'F4': PhysicalKeyboardKey.f4, |
| 'F5': PhysicalKeyboardKey.f5, |
| 'F6': PhysicalKeyboardKey.f6, |
| 'F7': PhysicalKeyboardKey.f7, |
| 'F8': PhysicalKeyboardKey.f8, |
| 'F9': PhysicalKeyboardKey.f9, |
| 'F10': PhysicalKeyboardKey.f10, |
| 'F11': PhysicalKeyboardKey.f11, |
| 'F12': PhysicalKeyboardKey.f12, |
| 'PrintScreen': PhysicalKeyboardKey.printScreen, |
| 'ScrollLock': PhysicalKeyboardKey.scrollLock, |
| 'Pause': PhysicalKeyboardKey.pause, |
| 'Insert': PhysicalKeyboardKey.insert, |
| 'Home': PhysicalKeyboardKey.home, |
| 'PageUp': PhysicalKeyboardKey.pageUp, |
| 'Delete': PhysicalKeyboardKey.delete, |
| 'End': PhysicalKeyboardKey.end, |
| 'PageDown': PhysicalKeyboardKey.pageDown, |
| 'ArrowRight': PhysicalKeyboardKey.arrowRight, |
| 'ArrowLeft': PhysicalKeyboardKey.arrowLeft, |
| 'ArrowDown': PhysicalKeyboardKey.arrowDown, |
| 'ArrowUp': PhysicalKeyboardKey.arrowUp, |
| 'NumLock': PhysicalKeyboardKey.numLock, |
| 'NumpadDivide': PhysicalKeyboardKey.numpadDivide, |
| 'NumpadMultiply': PhysicalKeyboardKey.numpadMultiply, |
| 'NumpadSubtract': PhysicalKeyboardKey.numpadSubtract, |
| 'NumpadAdd': PhysicalKeyboardKey.numpadAdd, |
| 'NumpadEnter': PhysicalKeyboardKey.numpadEnter, |
| 'Numpad1': PhysicalKeyboardKey.numpad1, |
| 'Numpad2': PhysicalKeyboardKey.numpad2, |
| 'Numpad3': PhysicalKeyboardKey.numpad3, |
| 'Numpad4': PhysicalKeyboardKey.numpad4, |
| 'Numpad5': PhysicalKeyboardKey.numpad5, |
| 'Numpad6': PhysicalKeyboardKey.numpad6, |
| 'Numpad7': PhysicalKeyboardKey.numpad7, |
| 'Numpad8': PhysicalKeyboardKey.numpad8, |
| 'Numpad9': PhysicalKeyboardKey.numpad9, |
| 'Numpad0': PhysicalKeyboardKey.numpad0, |
| 'NumpadDecimal': PhysicalKeyboardKey.numpadDecimal, |
| 'IntlBackslash': PhysicalKeyboardKey.intlBackslash, |
| 'ContextMenu': PhysicalKeyboardKey.contextMenu, |
| 'Power': PhysicalKeyboardKey.power, |
| 'NumpadEqual': PhysicalKeyboardKey.numpadEqual, |
| 'F13': PhysicalKeyboardKey.f13, |
| 'F14': PhysicalKeyboardKey.f14, |
| 'F15': PhysicalKeyboardKey.f15, |
| 'F16': PhysicalKeyboardKey.f16, |
| 'F17': PhysicalKeyboardKey.f17, |
| 'F18': PhysicalKeyboardKey.f18, |
| 'F19': PhysicalKeyboardKey.f19, |
| 'F20': PhysicalKeyboardKey.f20, |
| 'F21': PhysicalKeyboardKey.f21, |
| 'F22': PhysicalKeyboardKey.f22, |
| 'F23': PhysicalKeyboardKey.f23, |
| 'F24': PhysicalKeyboardKey.f24, |
| 'Open': PhysicalKeyboardKey.open, |
| 'Help': PhysicalKeyboardKey.help, |
| 'Select': PhysicalKeyboardKey.select, |
| 'Again': PhysicalKeyboardKey.again, |
| 'Undo': PhysicalKeyboardKey.undo, |
| 'Cut': PhysicalKeyboardKey.cut, |
| 'Copy': PhysicalKeyboardKey.copy, |
| 'Paste': PhysicalKeyboardKey.paste, |
| 'Find': PhysicalKeyboardKey.find, |
| 'AudioVolumeMute': PhysicalKeyboardKey.audioVolumeMute, |
| 'AudioVolumeUp': PhysicalKeyboardKey.audioVolumeUp, |
| 'AudioVolumeDown': PhysicalKeyboardKey.audioVolumeDown, |
| 'NumpadComma': PhysicalKeyboardKey.numpadComma, |
| 'IntlRo': PhysicalKeyboardKey.intlRo, |
| 'KanaMode': PhysicalKeyboardKey.kanaMode, |
| 'IntlYen': PhysicalKeyboardKey.intlYen, |
| 'Convert': PhysicalKeyboardKey.convert, |
| 'NonConvert': PhysicalKeyboardKey.nonConvert, |
| 'Lang1': PhysicalKeyboardKey.lang1, |
| 'Lang2': PhysicalKeyboardKey.lang2, |
| 'Lang3': PhysicalKeyboardKey.lang3, |
| 'Lang4': PhysicalKeyboardKey.lang4, |
| 'Lang5': PhysicalKeyboardKey.lang5, |
| 'Abort': PhysicalKeyboardKey.abort, |
| 'Props': PhysicalKeyboardKey.props, |
| 'NumpadParenLeft': PhysicalKeyboardKey.numpadParenLeft, |
| 'NumpadParenRight': PhysicalKeyboardKey.numpadParenRight, |
| 'NumpadBackspace': PhysicalKeyboardKey.numpadBackspace, |
| 'NumpadMemoryStore': PhysicalKeyboardKey.numpadMemoryStore, |
| 'NumpadMemoryRecall': PhysicalKeyboardKey.numpadMemoryRecall, |
| 'NumpadMemoryClear': PhysicalKeyboardKey.numpadMemoryClear, |
| 'NumpadMemoryAdd': PhysicalKeyboardKey.numpadMemoryAdd, |
| 'NumpadMemorySubtract': PhysicalKeyboardKey.numpadMemorySubtract, |
| 'NumpadClear': PhysicalKeyboardKey.numpadClear, |
| 'NumpadClearEntry': PhysicalKeyboardKey.numpadClearEntry, |
| 'ControlLeft': PhysicalKeyboardKey.controlLeft, |
| 'ShiftLeft': PhysicalKeyboardKey.shiftLeft, |
| 'AltLeft': PhysicalKeyboardKey.altLeft, |
| 'MetaLeft': PhysicalKeyboardKey.metaLeft, |
| 'ControlRight': PhysicalKeyboardKey.controlRight, |
| 'ShiftRight': PhysicalKeyboardKey.shiftRight, |
| 'AltRight': PhysicalKeyboardKey.altRight, |
| 'MetaRight': PhysicalKeyboardKey.metaRight, |
| 'BrightnessUp': PhysicalKeyboardKey.brightnessUp, |
| 'BrightnessDown': PhysicalKeyboardKey.brightnessDown, |
| 'MediaPlay': PhysicalKeyboardKey.mediaPlay, |
| 'MediaPause': PhysicalKeyboardKey.mediaPause, |
| 'MediaRecord': PhysicalKeyboardKey.mediaRecord, |
| 'MediaFastForward': PhysicalKeyboardKey.mediaFastForward, |
| 'MediaRewind': PhysicalKeyboardKey.mediaRewind, |
| 'MediaTrackNext': PhysicalKeyboardKey.mediaTrackNext, |
| 'MediaTrackPrevious': PhysicalKeyboardKey.mediaTrackPrevious, |
| 'MediaStop': PhysicalKeyboardKey.mediaStop, |
| 'Eject': PhysicalKeyboardKey.eject, |
| 'MediaPlayPause': PhysicalKeyboardKey.mediaPlayPause, |
| 'MediaSelect': PhysicalKeyboardKey.mediaSelect, |
| 'LaunchMail': PhysicalKeyboardKey.launchMail, |
| 'LaunchApp2': PhysicalKeyboardKey.launchApp2, |
| 'LaunchApp1': PhysicalKeyboardKey.launchApp1, |
| 'LaunchControlPanel': PhysicalKeyboardKey.launchControlPanel, |
| 'SelectTask': PhysicalKeyboardKey.selectTask, |
| 'LaunchScreenSaver': PhysicalKeyboardKey.launchScreenSaver, |
| 'LaunchAssistant': PhysicalKeyboardKey.launchAssistant, |
| 'BrowserSearch': PhysicalKeyboardKey.browserSearch, |
| 'BrowserHome': PhysicalKeyboardKey.browserHome, |
| 'BrowserBack': PhysicalKeyboardKey.browserBack, |
| 'BrowserForward': PhysicalKeyboardKey.browserForward, |
| 'BrowserStop': PhysicalKeyboardKey.browserStop, |
| 'BrowserRefresh': PhysicalKeyboardKey.browserRefresh, |
| 'BrowserFavorites': PhysicalKeyboardKey.browserFavorites, |
| 'ZoomToggle': PhysicalKeyboardKey.zoomToggle, |
| 'MailReply': PhysicalKeyboardKey.mailReply, |
| 'MailForward': PhysicalKeyboardKey.mailForward, |
| 'MailSend': PhysicalKeyboardKey.mailSend, |
| 'KeyboardLayoutSelect': PhysicalKeyboardKey.keyboardLayoutSelect, |
| 'ShowAllWindows': PhysicalKeyboardKey.showAllWindows, |
| 'GameButton1': PhysicalKeyboardKey.gameButton1, |
| 'GameButton2': PhysicalKeyboardKey.gameButton2, |
| 'GameButton3': PhysicalKeyboardKey.gameButton3, |
| 'GameButton4': PhysicalKeyboardKey.gameButton4, |
| 'GameButton5': PhysicalKeyboardKey.gameButton5, |
| 'GameButton6': PhysicalKeyboardKey.gameButton6, |
| 'GameButton7': PhysicalKeyboardKey.gameButton7, |
| 'GameButton8': PhysicalKeyboardKey.gameButton8, |
| 'GameButton9': PhysicalKeyboardKey.gameButton9, |
| 'GameButton10': PhysicalKeyboardKey.gameButton10, |
| 'GameButton11': PhysicalKeyboardKey.gameButton11, |
| 'GameButton12': PhysicalKeyboardKey.gameButton12, |
| 'GameButton13': PhysicalKeyboardKey.gameButton13, |
| 'GameButton14': PhysicalKeyboardKey.gameButton14, |
| 'GameButton15': PhysicalKeyboardKey.gameButton15, |
| 'GameButton16': PhysicalKeyboardKey.gameButton16, |
| 'GameButtonA': PhysicalKeyboardKey.gameButtonA, |
| 'GameButtonB': PhysicalKeyboardKey.gameButtonB, |
| 'GameButtonC': PhysicalKeyboardKey.gameButtonC, |
| 'GameButtonLeft1': PhysicalKeyboardKey.gameButtonLeft1, |
| 'GameButtonLeft2': PhysicalKeyboardKey.gameButtonLeft2, |
| 'GameButtonMode': PhysicalKeyboardKey.gameButtonMode, |
| 'GameButtonRight1': PhysicalKeyboardKey.gameButtonRight1, |
| 'GameButtonRight2': PhysicalKeyboardKey.gameButtonRight2, |
| 'GameButtonSelect': PhysicalKeyboardKey.gameButtonSelect, |
| 'GameButtonStart': PhysicalKeyboardKey.gameButtonStart, |
| 'GameButtonThumbLeft': PhysicalKeyboardKey.gameButtonThumbLeft, |
| 'GameButtonThumbRight': PhysicalKeyboardKey.gameButtonThumbRight, |
| 'GameButtonX': PhysicalKeyboardKey.gameButtonX, |
| 'GameButtonY': PhysicalKeyboardKey.gameButtonY, |
| 'GameButtonZ': PhysicalKeyboardKey.gameButtonZ, |
| 'Fn': PhysicalKeyboardKey.fn, |
| }; |
| |
| /// A map of Web KeyboardEvent codes which have printable representations, but appear |
| /// on the number pad. Used to provide different key objects for keys like |
| /// KEY_EQUALS and NUMPAD_EQUALS. |
| const Map<String, LogicalKeyboardKey> kWebNumPadMap = <String, LogicalKeyboardKey>{ |
| 'NumpadDivide': LogicalKeyboardKey.numpadDivide, |
| 'NumpadMultiply': LogicalKeyboardKey.numpadMultiply, |
| 'NumpadSubtract': LogicalKeyboardKey.numpadSubtract, |
| 'NumpadAdd': LogicalKeyboardKey.numpadAdd, |
| 'Numpad1': LogicalKeyboardKey.numpad1, |
| 'Numpad2': LogicalKeyboardKey.numpad2, |
| 'Numpad3': LogicalKeyboardKey.numpad3, |
| 'Numpad4': LogicalKeyboardKey.numpad4, |
| 'Numpad5': LogicalKeyboardKey.numpad5, |
| 'Numpad6': LogicalKeyboardKey.numpad6, |
| 'Numpad7': LogicalKeyboardKey.numpad7, |
| 'Numpad8': LogicalKeyboardKey.numpad8, |
| 'Numpad9': LogicalKeyboardKey.numpad9, |
| 'Numpad0': LogicalKeyboardKey.numpad0, |
| 'NumpadDecimal': LogicalKeyboardKey.numpadDecimal, |
| 'NumpadEqual': LogicalKeyboardKey.numpadEqual, |
| 'NumpadComma': LogicalKeyboardKey.numpadComma, |
| 'NumpadParenLeft': LogicalKeyboardKey.numpadParenLeft, |
| 'NumpadParenRight': LogicalKeyboardKey.numpadParenRight, |
| }; |
| |
| /// Maps Windows KeyboardEvent codes to the matching [LogicalKeyboardKey]. |
| const Map<int, LogicalKeyboardKey> kWindowsToLogicalKey = <int, LogicalKeyboardKey>{ |
| 95: LogicalKeyboardKey.sleep, |
| 65: LogicalKeyboardKey.keyA, |
| 66: LogicalKeyboardKey.keyB, |
| 67: LogicalKeyboardKey.keyC, |
| 68: LogicalKeyboardKey.keyD, |
| 69: LogicalKeyboardKey.keyE, |
| 70: LogicalKeyboardKey.keyF, |
| 71: LogicalKeyboardKey.keyG, |
| 72: LogicalKeyboardKey.keyH, |
| 73: LogicalKeyboardKey.keyI, |
| 74: LogicalKeyboardKey.keyJ, |
| 75: LogicalKeyboardKey.keyK, |
| 76: LogicalKeyboardKey.keyL, |
| 77: LogicalKeyboardKey.keyM, |
| 78: LogicalKeyboardKey.keyN, |
| 79: LogicalKeyboardKey.keyO, |
| 80: LogicalKeyboardKey.keyP, |
| 81: LogicalKeyboardKey.keyQ, |
| 82: LogicalKeyboardKey.keyR, |
| 83: LogicalKeyboardKey.keyS, |
| 84: LogicalKeyboardKey.keyT, |
| 85: LogicalKeyboardKey.keyU, |
| 86: LogicalKeyboardKey.keyV, |
| 87: LogicalKeyboardKey.keyW, |
| 88: LogicalKeyboardKey.keyX, |
| 89: LogicalKeyboardKey.keyY, |
| 90: LogicalKeyboardKey.keyZ, |
| 13: LogicalKeyboardKey.enter, |
| 27: LogicalKeyboardKey.escape, |
| 8: LogicalKeyboardKey.backspace, |
| 9: LogicalKeyboardKey.tab, |
| 32: LogicalKeyboardKey.space, |
| 189: LogicalKeyboardKey.minus, |
| 187: LogicalKeyboardKey.equal, |
| 219: LogicalKeyboardKey.bracketLeft, |
| 221: LogicalKeyboardKey.bracketRight, |
| 220: LogicalKeyboardKey.backslash, |
| 186: LogicalKeyboardKey.semicolon, |
| 222: LogicalKeyboardKey.quote, |
| 188: LogicalKeyboardKey.comma, |
| 190: LogicalKeyboardKey.period, |
| 191: LogicalKeyboardKey.slash, |
| 20: LogicalKeyboardKey.capsLock, |
| 112: LogicalKeyboardKey.f1, |
| 113: LogicalKeyboardKey.f2, |
| 114: LogicalKeyboardKey.f3, |
| 115: LogicalKeyboardKey.f4, |
| 116: LogicalKeyboardKey.f5, |
| 117: LogicalKeyboardKey.f6, |
| 118: LogicalKeyboardKey.f7, |
| 119: LogicalKeyboardKey.f8, |
| 120: LogicalKeyboardKey.f9, |
| 121: LogicalKeyboardKey.f10, |
| 122: LogicalKeyboardKey.f11, |
| 123: LogicalKeyboardKey.f12, |
| 19: LogicalKeyboardKey.pause, |
| 45: LogicalKeyboardKey.insert, |
| 36: LogicalKeyboardKey.home, |
| 46: LogicalKeyboardKey.delete, |
| 35: LogicalKeyboardKey.end, |
| 39: LogicalKeyboardKey.arrowRight, |
| 37: LogicalKeyboardKey.arrowLeft, |
| 40: LogicalKeyboardKey.arrowDown, |
| 38: LogicalKeyboardKey.arrowUp, |
| 111: LogicalKeyboardKey.numpadDivide, |
| 106: LogicalKeyboardKey.numpadMultiply, |
| 109: LogicalKeyboardKey.numpadSubtract, |
| 107: LogicalKeyboardKey.numpadAdd, |
| 97: LogicalKeyboardKey.numpad1, |
| 98: LogicalKeyboardKey.numpad2, |
| 99: LogicalKeyboardKey.numpad3, |
| 100: LogicalKeyboardKey.numpad4, |
| 101: LogicalKeyboardKey.numpad5, |
| 102: LogicalKeyboardKey.numpad6, |
| 103: LogicalKeyboardKey.numpad7, |
| 104: LogicalKeyboardKey.numpad8, |
| 105: LogicalKeyboardKey.numpad9, |
| 96: LogicalKeyboardKey.numpad0, |
| 110: LogicalKeyboardKey.numpadDecimal, |
| 146: LogicalKeyboardKey.numpadEqual, |
| 124: LogicalKeyboardKey.f13, |
| 125: LogicalKeyboardKey.f14, |
| 126: LogicalKeyboardKey.f15, |
| 127: LogicalKeyboardKey.f16, |
| 128: LogicalKeyboardKey.f17, |
| 129: LogicalKeyboardKey.f18, |
| 130: LogicalKeyboardKey.f19, |
| 131: LogicalKeyboardKey.f20, |
| 132: LogicalKeyboardKey.f21, |
| 133: LogicalKeyboardKey.f22, |
| 134: LogicalKeyboardKey.f23, |
| 135: LogicalKeyboardKey.f24, |
| 47: LogicalKeyboardKey.help, |
| 41: LogicalKeyboardKey.select, |
| 28: LogicalKeyboardKey.convert, |
| 162: LogicalKeyboardKey.controlLeft, |
| 160: LogicalKeyboardKey.shiftLeft, |
| 164: LogicalKeyboardKey.altLeft, |
| 91: LogicalKeyboardKey.metaLeft, |
| 163: LogicalKeyboardKey.controlRight, |
| 161: LogicalKeyboardKey.shiftRight, |
| 165: LogicalKeyboardKey.altRight, |
| 92: LogicalKeyboardKey.metaRight, |
| 178: LogicalKeyboardKey.mediaStop, |
| 179: LogicalKeyboardKey.mediaPlayPause, |
| 180: LogicalKeyboardKey.launchMail, |
| 183: LogicalKeyboardKey.launchApp2, |
| 182: LogicalKeyboardKey.launchApp1, |
| 42: LogicalKeyboardKey.print, |
| 170: LogicalKeyboardKey.browserSearch, |
| 172: LogicalKeyboardKey.browserHome, |
| 166: LogicalKeyboardKey.browserBack, |
| 167: LogicalKeyboardKey.browserForward, |
| 169: LogicalKeyboardKey.browserStop, |
| 168: LogicalKeyboardKey.browserRefresh, |
| 171: LogicalKeyboardKey.browserFavorites, |
| }; |
| |
| /// Maps Windows KeyboardEvent codes to the matching [PhysicalKeyboardKey]. |
| const Map<int, PhysicalKeyboardKey> kWindowsToPhysicalKey = <int, PhysicalKeyboardKey>{ |
| 0x0000e05f: PhysicalKeyboardKey.sleep, |
| 0x0000e063: PhysicalKeyboardKey.wakeUp, |
| 0x000000ff: PhysicalKeyboardKey.usbErrorRollOver, |
| 0x000000fc: PhysicalKeyboardKey.usbPostFail, |
| 0x0000001e: PhysicalKeyboardKey.keyA, |
| 0x00000030: PhysicalKeyboardKey.keyB, |
| 0x0000002e: PhysicalKeyboardKey.keyC, |
| 0x00000020: PhysicalKeyboardKey.keyD, |
| 0x00000012: PhysicalKeyboardKey.keyE, |
| 0x00000021: PhysicalKeyboardKey.keyF, |
| 0x00000022: PhysicalKeyboardKey.keyG, |
| 0x00000023: PhysicalKeyboardKey.keyH, |
| 0x00000017: PhysicalKeyboardKey.keyI, |
| 0x00000024: PhysicalKeyboardKey.keyJ, |
| 0x00000025: PhysicalKeyboardKey.keyK, |
| 0x00000026: PhysicalKeyboardKey.keyL, |
| 0x00000032: PhysicalKeyboardKey.keyM, |
| 0x00000031: PhysicalKeyboardKey.keyN, |
| 0x00000018: PhysicalKeyboardKey.keyO, |
| 0x00000019: PhysicalKeyboardKey.keyP, |
| 0x00000010: PhysicalKeyboardKey.keyQ, |
| 0x00000013: PhysicalKeyboardKey.keyR, |
| 0x0000001f: PhysicalKeyboardKey.keyS, |
| 0x00000014: PhysicalKeyboardKey.keyT, |
| 0x00000016: PhysicalKeyboardKey.keyU, |
| 0x0000002f: PhysicalKeyboardKey.keyV, |
| 0x00000011: PhysicalKeyboardKey.keyW, |
| 0x0000002d: PhysicalKeyboardKey.keyX, |
| 0x00000015: PhysicalKeyboardKey.keyY, |
| 0x0000002c: PhysicalKeyboardKey.keyZ, |
| 0x00000002: PhysicalKeyboardKey.digit1, |
| 0x00000003: PhysicalKeyboardKey.digit2, |
| 0x00000004: PhysicalKeyboardKey.digit3, |
| 0x00000005: PhysicalKeyboardKey.digit4, |
| 0x00000006: PhysicalKeyboardKey.digit5, |
| 0x00000007: PhysicalKeyboardKey.digit6, |
| 0x00000008: PhysicalKeyboardKey.digit7, |
| 0x00000009: PhysicalKeyboardKey.digit8, |
| 0x0000000a: PhysicalKeyboardKey.digit9, |
| 0x0000000b: PhysicalKeyboardKey.digit0, |
| 0x0000001c: PhysicalKeyboardKey.enter, |
| 0x00000001: PhysicalKeyboardKey.escape, |
| 0x0000000e: PhysicalKeyboardKey.backspace, |
| 0x0000000f: PhysicalKeyboardKey.tab, |
| 0x00000039: PhysicalKeyboardKey.space, |
| 0x0000000c: PhysicalKeyboardKey.minus, |
| 0x0000000d: PhysicalKeyboardKey.equal, |
| 0x0000001a: PhysicalKeyboardKey.bracketLeft, |
| 0x0000001b: PhysicalKeyboardKey.bracketRight, |
| 0x0000002b: PhysicalKeyboardKey.backslash, |
| 0x00000027: PhysicalKeyboardKey.semicolon, |
| 0x00000028: PhysicalKeyboardKey.quote, |
| 0x00000029: PhysicalKeyboardKey.backquote, |
| 0x00000033: PhysicalKeyboardKey.comma, |
| 0x00000034: PhysicalKeyboardKey.period, |
| 0x00000035: PhysicalKeyboardKey.slash, |
| 0x0000003a: PhysicalKeyboardKey.capsLock, |
| 0x0000003b: PhysicalKeyboardKey.f1, |
| 0x0000003c: PhysicalKeyboardKey.f2, |
| 0x0000003d: PhysicalKeyboardKey.f3, |
| 0x0000003e: PhysicalKeyboardKey.f4, |
| 0x0000003f: PhysicalKeyboardKey.f5, |
| 0x00000040: PhysicalKeyboardKey.f6, |
| 0x00000041: PhysicalKeyboardKey.f7, |
| 0x00000042: PhysicalKeyboardKey.f8, |
| 0x00000043: PhysicalKeyboardKey.f9, |
| 0x00000044: PhysicalKeyboardKey.f10, |
| 0x00000057: PhysicalKeyboardKey.f11, |
| 0x00000058: PhysicalKeyboardKey.f12, |
| 0x0000e037: PhysicalKeyboardKey.printScreen, |
| 0x00000046: PhysicalKeyboardKey.scrollLock, |
| 0x00000045: PhysicalKeyboardKey.pause, |
| 0x0000e052: PhysicalKeyboardKey.insert, |
| 0x0000e047: PhysicalKeyboardKey.home, |
| 0x0000e049: PhysicalKeyboardKey.pageUp, |
| 0x0000e053: PhysicalKeyboardKey.delete, |
| 0x0000e04f: PhysicalKeyboardKey.end, |
| 0x0000e051: PhysicalKeyboardKey.pageDown, |
| 0x0000e04d: PhysicalKeyboardKey.arrowRight, |
| 0x0000e04b: PhysicalKeyboardKey.arrowLeft, |
| 0x0000e050: PhysicalKeyboardKey.arrowDown, |
| 0x0000e048: PhysicalKeyboardKey.arrowUp, |
| 0x0000e045: PhysicalKeyboardKey.numLock, |
| 0x0000e035: PhysicalKeyboardKey.numpadDivide, |
| 0x00000037: PhysicalKeyboardKey.numpadMultiply, |
| 0x0000004a: PhysicalKeyboardKey.numpadSubtract, |
| 0x0000004e: PhysicalKeyboardKey.numpadAdd, |
| 0x0000e01c: PhysicalKeyboardKey.numpadEnter, |
| 0x0000004f: PhysicalKeyboardKey.numpad1, |
| 0x00000050: PhysicalKeyboardKey.numpad2, |
| 0x00000051: PhysicalKeyboardKey.numpad3, |
| 0x0000004b: PhysicalKeyboardKey.numpad4, |
| 0x0000004c: PhysicalKeyboardKey.numpad5, |
| 0x0000004d: PhysicalKeyboardKey.numpad6, |
| 0x00000047: PhysicalKeyboardKey.numpad7, |
| 0x00000048: PhysicalKeyboardKey.numpad8, |
| 0x00000049: PhysicalKeyboardKey.numpad9, |
| 0x00000052: PhysicalKeyboardKey.numpad0, |
| 0x00000053: PhysicalKeyboardKey.numpadDecimal, |
| 0x00000056: PhysicalKeyboardKey.intlBackslash, |
| 0x0000e05d: PhysicalKeyboardKey.contextMenu, |
| 0x0000e05e: PhysicalKeyboardKey.power, |
| 0x00000059: PhysicalKeyboardKey.numpadEqual, |
| 0x00000064: PhysicalKeyboardKey.f13, |
| 0x00000065: PhysicalKeyboardKey.f14, |
| 0x00000066: PhysicalKeyboardKey.f15, |
| 0x00000067: PhysicalKeyboardKey.f16, |
| 0x00000068: PhysicalKeyboardKey.f17, |
| 0x00000069: PhysicalKeyboardKey.f18, |
| 0x0000006a: PhysicalKeyboardKey.f19, |
| 0x0000006b: PhysicalKeyboardKey.f20, |
| 0x0000006c: PhysicalKeyboardKey.f21, |
| 0x0000006d: PhysicalKeyboardKey.f22, |
| 0x0000006e: PhysicalKeyboardKey.f23, |
| 0x00000076: PhysicalKeyboardKey.f24, |
| 0x0000e03b: PhysicalKeyboardKey.help, |
| 0x0000e008: PhysicalKeyboardKey.undo, |
| 0x0000e017: PhysicalKeyboardKey.cut, |
| 0x0000e018: PhysicalKeyboardKey.copy, |
| 0x0000e00a: PhysicalKeyboardKey.paste, |
| 0x0000e020: PhysicalKeyboardKey.audioVolumeMute, |
| 0x0000e030: PhysicalKeyboardKey.audioVolumeUp, |
| 0x0000e02e: PhysicalKeyboardKey.audioVolumeDown, |
| 0x0000007e: PhysicalKeyboardKey.numpadComma, |
| 0x00000073: PhysicalKeyboardKey.intlRo, |
| 0x00000070: PhysicalKeyboardKey.kanaMode, |
| 0x0000007d: PhysicalKeyboardKey.intlYen, |
| 0x00000079: PhysicalKeyboardKey.convert, |
| 0x0000007b: PhysicalKeyboardKey.nonConvert, |
| 0x00000072: PhysicalKeyboardKey.lang1, |
| 0x00000071: PhysicalKeyboardKey.lang2, |
| 0x00000078: PhysicalKeyboardKey.lang3, |
| 0x00000077: PhysicalKeyboardKey.lang4, |
| 0x0000001d: PhysicalKeyboardKey.controlLeft, |
| 0x0000002a: PhysicalKeyboardKey.shiftLeft, |
| 0x00000038: PhysicalKeyboardKey.altLeft, |
| 0x0000e05b: PhysicalKeyboardKey.metaLeft, |
| 0x0000e01d: PhysicalKeyboardKey.controlRight, |
| 0x00000036: PhysicalKeyboardKey.shiftRight, |
| 0x0000e038: PhysicalKeyboardKey.altRight, |
| 0x0000e05c: PhysicalKeyboardKey.metaRight, |
| 0x0000e019: PhysicalKeyboardKey.mediaTrackNext, |
| 0x0000e010: PhysicalKeyboardKey.mediaTrackPrevious, |
| 0x0000e024: PhysicalKeyboardKey.mediaStop, |
| 0x0000e02c: PhysicalKeyboardKey.eject, |
| 0x0000e022: PhysicalKeyboardKey.mediaPlayPause, |
| 0x0000e06d: PhysicalKeyboardKey.mediaSelect, |
| 0x0000e06c: PhysicalKeyboardKey.launchMail, |
| 0x0000e021: PhysicalKeyboardKey.launchApp2, |
| 0x0000e06b: PhysicalKeyboardKey.launchApp1, |
| 0x0000e065: PhysicalKeyboardKey.browserSearch, |
| 0x0000e032: PhysicalKeyboardKey.browserHome, |
| 0x0000e06a: PhysicalKeyboardKey.browserBack, |
| 0x0000e069: PhysicalKeyboardKey.browserForward, |
| 0x0000e068: PhysicalKeyboardKey.browserStop, |
| 0x0000e067: PhysicalKeyboardKey.browserRefresh, |
| 0x0000e066: PhysicalKeyboardKey.browserFavorites, |
| }; |
| |
| /// A map of Windows KeyboardEvent codes which have printable representations, but appear |
| /// on the number pad. Used to provide different key objects for keys like |
| /// KEY_EQUALS and NUMPAD_EQUALS. |
| const Map<int, LogicalKeyboardKey> kWindowsNumPadMap = <int, LogicalKeyboardKey>{ |
| 111: LogicalKeyboardKey.numpadDivide, |
| 106: LogicalKeyboardKey.numpadMultiply, |
| 109: LogicalKeyboardKey.numpadSubtract, |
| 107: LogicalKeyboardKey.numpadAdd, |
| 97: LogicalKeyboardKey.numpad1, |
| 98: LogicalKeyboardKey.numpad2, |
| 99: LogicalKeyboardKey.numpad3, |
| 100: LogicalKeyboardKey.numpad4, |
| 101: LogicalKeyboardKey.numpad5, |
| 102: LogicalKeyboardKey.numpad6, |
| 103: LogicalKeyboardKey.numpad7, |
| 104: LogicalKeyboardKey.numpad8, |
| 105: LogicalKeyboardKey.numpad9, |
| 96: LogicalKeyboardKey.numpad0, |
| 110: LogicalKeyboardKey.numpadDecimal, |
| 146: LogicalKeyboardKey.numpadEqual, |
| }; |