diff --git a/dev/tools/gen_keycodes/README.md b/dev/tools/gen_keycodes/README.md
index 8029d8966e..b04075b0a0 100644
--- a/dev/tools/gen_keycodes/README.md
+++ b/dev/tools/gen_keycodes/README.md
@@ -43,7 +43,7 @@ use `--engine-root=/ENGINE/GCLIENT/ROOT` to specify the engine root.
Other options can be found using `--help`.
-## Key Code ID Scheme
+## Logical Key ID Scheme
To provide logical keys with unique ID codes, Flutter uses a scheme
to assign logical keycodes which keeps us out of the business of minting new
@@ -58,109 +58,76 @@ the API.
However, if you are porting Flutter to a new platform, you should follow the
following guidelines for specifying logical key codes.
-The logical key code is a 37-bit integer in a namespace that we control and
-define. It has values in the following ranges.
+The logical key code is a 52-bit integer (due to the limitation of JavaScript).
+The entire namespace is divided into 32-bit *planes*. The upper 20 bits of the
+ID represent the plane ID, while the lower 32 bits represent values in the
+plane. For example, plane 0x1 refers to the range 0x1 0000 0000 -
+0x1 FFFF FFFF. Each plane manages how the values within the range are assigned.
-- **0x00 0000 0000 - 0x0 0010 FFFF**: For keys that generate Unicode
+The planes are planned as follows:
+
+- **Plane 0x00**: The Unicode plane. This plane contains keys that generate Unicode
characters when pressed (this includes dead keys, but not e.g. function keys
- or shift keys), the logical key code is the Unicode code point corresponding
- to the representation of the key in the current keyboard mapping. The
- Unicode code point might not match the string that is generated for
- an unshifted keypress of that key, for example, we would use U+0034 for the
- “4 \$” key in the US layout, and also the “4 ;” key in the Russian layout,
- and also, maybe less intuitively, for the “' 4 {“ in French layout (wherein
- the latter case, an unshifted press gets you a ', not a 4). Similarly, the Q
- key in the US layout outputs a q in normal usage, but its code would be 0x0
- 0000 0051 (U+00051 being the code for the uppercase Q).
+ or shift keys). The value is defined as the Unicode code point corresponding
+ to the character, lower case and without modifier keys if possible.
+ Examples are Key A (0x61), Digit 1 (0x31), Colon (0x3A), and Key Ù (0xD9).
+ (The "Colon" key represents a keyboard key that prints the ":"
+ character without modifiers, which can be found on the French layout. On the
+ US layout, the key that prints ":" is the Semicolon key.)
+ This plane also contains key None (0x0).
-- **0x01 0000 0000 - 0x01 FFFF FFFF**: For keys that are defined by the [USB HID
- standard](https://www.usb.org/sites/default/files/documents/hut1_12v2.pdf),
- the key code consists of the 32 bit USB extended usage code. For
- example, the Enter key would have code 0x01 0007 0028. Only keys that fall
- into collections "Keyboard", "Keypad", and "Tablet PC System Controls" are
- considered for this API; for example, a mixing desk with multiple
- collections of volume controls would not be exposed via DOWN and UP events,
- nor would a mouse, joystick, or golf simulator control.
+- **Plane 0x01**: The unprintable plane. This plane contains keys that are defined
+ by the [Chromium key list](https://chromium.googlesource.com/codesearch/chromium/src/+/refs/heads/master/ui/events/keycodes/dom/dom_key_data.inc)
+ and do not generate Unicode characters. The value is defined as the macro
+ value defined by the Chromium key list. Examples are CapsLock (0x105),
+ ArrowUp (0x304), F1 (0x801), Hiragata (0x716), and TVPower (0xD4B).
+ Some keys that exist in the Chromium key list are not present in Flutter in this plane, most notably
+ modifiers keys (such as Shift). See the Flutter plane below for more
+ information.
-- **0x02 0000 0000 - 0xFF FFFF FFFF**: For keys that aren't defined in USB at the
- time of implementation, but that we need to support. For example, if Flutter
- were ever ported to the Symbolics LM-2, the "thumb up" key might be given
- the code 0x14 0000 0001, where 0x14 is defined as the “Symbolics” platform
- range. Where possible, we will use specific subranges of this space to reuse
- keys from other platforms. When this is not possible, the prefix 0xFF is
- reserved for “Custom” codes. Each platform from which we take codes will get
- a unique prefix in the range 0x2-0xFE. If multiple systems define keys with
- the same usage (not the same number), then the value with the lowest prefix
- is used as the defining code.
+- **Plane 0x02**: The Flutter plane. This plane contains keys that are
+ defined by Flutter. The values are also manually assigned by Flutter.
+ Modifier keys are placed in this plane, because Flutter distinguishes
+ between sided modifier keys (for example "ShiftLeft" and "ShiftRight"),
+ while the web doesn't (only has "Shift").
+ Other examples are numpad keys and gamepad keys.
- Prefixes will be:
+- **Plane 0x03-0x0F**: Reserved.
+
+- **Plane 0x10-0x1F**: Platform planes managed by Flutter. Each platform plane
+ corresponds to a Flutter embedding officially supported by Flutter. The
+ platforms are listed as follows:
| Code | Platform |
| ---- | -------- |
- | 0x02 | Android |
- | 0x03 | Fuchsia |
- | 0x04 | iOS |
- | 0x05 | macOS |
- | 0x06 | Linux |
- | 0x07 | Windows |
- | 0x08 | Web |
- | 0xFF | Custom |
+ | 0x11 | Android |
+ | 0x12 | Fuchsia |
+ | 0x13 | iOS |
+ | 0x14 | macOS |
+ | 0x15 | Gtk |
+ | 0x16 | Windows |
+ | 0x17 | Web |
+ | 0x18 | GLFW |
- Further ranges will be added as platforms are added. The platform prefix
- does not define the platform it is used on, it is just the platform that
- decides what the value is: the codes are mapped to the same value on all
- platforms.
+ Platform planes store keys that are private to the Flutter embedding of this
+ platform. This most likely means that these keys have not been officially
+ recognized by Flutter.
-- **0x100 0000 0000 - 0x1FF FFFF FFFF**: For keys that have no definition yet in
- Flutter, but that are encountered in the field, this range is used to embed
- the platform-specific keycode in an ID that must be tested for in a
- platform-specific way. For instance, if a platform generates a new USB
- HID code 0x07 00E8 that a Flutter app wasn’t compiled with, then it would
- appear in the app as 0x100 0007 00E8, and the app could test against that
- code. Yes, this also means that once they recompile with a version of
- Flutter that supports this new HID code, apps looking for this code will
- break. This situation is only meant to provide a fallback ability for apps
- to handle esoteric codes that their version of Flutter doesn’t support yet.
- The prefix for this code is the platform prefix from the previous sections,
- plus 0x100.
+ The value scheme within a platform plane is decided by the platform,
+ typically using the field from the platform's native key event that
+ represents the key's logical effect (such as `keycode`, `virtual key`, etc).
-- **0x200 0000 0000 - 0x2FF FFFF FFFF**: For pseudo-keys which represent
- combinations of other keys, and conceptual keys which don't have a physical
- representation. This is where things like key synonyms are defined (e.g.
- "shiftLeft" is a synonym for "shift": the "shift" key is a pseudo-key
- representing either the left or right shift key).
+ In time, keys that originally belong to a platform plane might be added to
+ Flutter, especially if a key is found shared by multiple platforms. The values
+ of that key will be changed to a new value within the Flutter plane, and all
+ platforms managed by Flutter will start to send the new value, making it a
+ breaking change. Therefore, when handling an unrecognized key on a platform
+ managed by Flutter, it is recommended to file a new issue to add this value
+ to `keyboard_key.dart` instead of using the platform-plane value. However,
+ for a custom platform (see below), since the platfrom author has full control
+ over key mapping, such change will not cause breakage and it is recommended
+ to use the platform-plane value to avoid adding platform-exclusive values
+ to the framework.
-**This is intended to get us out of the business of defining key codes where
-possible.** We still have to have mapping tables, but at least the actual minting
-of codes is deferred to other organizations to a large extent. Coming up with a
-code is a mechanical process consisting of just picking the lowest number code
-possible that matches the semantic meaning of the key according to the
-definitions above.
-
-Here are some examples:
-
-For example, on a French keyboard layout, pressing CAPS LOCK then pressing
-SHIFT + Y would generate the following sequence:
-
-DOWN, code 0x0100070039. (CAPS LOCK DOWN)
-UP, code 0x0100070039. (CAPS LOCK UP)
-DOWN, code 0x01000700E1 (LEFT SHIFT DOWN)
-DOWN, code 0x0000000059, string U+00059 (Y DOWN)
-UP, code 0x0000000059 (Y UP)
-UP, code 0x01000700E1 (LEFT SHIFT UP)
-
-Here's another example. On a German keyboard layout, you press ^e (the ^ key is
-at the top left of the keyboard and is a dead key) to produce an “ê”:
-
-DOWN, code 0x0000000302 (CIRCUMFLEX DOWN) It produces no string, because it's a dead
-key. The key code is for "Combining circumflex accent U+0302" in Unicode.
-UP, code 0x0000000302 (CIRCUMFLEX UP)
-DOWN, code 0x0000000065, string U+000EA (Unicode for ê) (E DOWN).
-UP, code 0x0000000065. (E UP).
-
-It is an important point that even though we’re representing many keys with USB
-HID codes, these are not necessarily the same HID codes produced by the hardware
-and presented to the driver, since on most platforms we have to map the platform
-representation back to an HID code because we don’t have access to the original
-HID code. USB HID is simply a conveniently well-defined standard that includes
-many of the keys we would want.
+- **Plane 0x20-0x2F**: Custom platform planes. Similar to Flutter's platform
+ planes, but for private use by custom platforms.
diff --git a/dev/tools/gen_keycodes/bin/gen_keycodes.dart b/dev/tools/gen_keycodes/bin/gen_keycodes.dart
index eae21aefed..4aa28a66e4 100644
--- a/dev/tools/gen_keycodes/bin/gen_keycodes.dart
+++ b/dev/tools/gen_keycodes/bin/gen_keycodes.dart
@@ -15,6 +15,7 @@ import 'package:gen_keycodes/keyboard_maps_code_gen.dart';
import 'package:gen_keycodes/logical_key_data.dart';
import 'package:gen_keycodes/macos_code_gen.dart';
import 'package:gen_keycodes/physical_key_data.dart';
+import 'package:gen_keycodes/testing_key_codes_gen.dart';
import 'package:gen_keycodes/utils.dart';
import 'package:gen_keycodes/web_code_gen.dart';
import 'package:gen_keycodes/windows_code_gen.dart';
@@ -71,7 +72,20 @@ String readDataFile(String fileName) {
return File(path.join(dataRoot, fileName)).readAsStringSync();
}
+bool _assertsEnabled() {
+ bool enabledAsserts = false;
+ assert(() {
+ enabledAsserts = true;
+ return true;
+ }());
+ return enabledAsserts;
+}
+
Future main(List rawArguments) async {
+ if (!_assertsEnabled()) {
+ print('The gen_keycodes script must be run with --enable-asserts.');
+ return;
+ }
final ArgParser argParser = ArgParser();
argParser.addOption(
'engine-root',
@@ -208,6 +222,14 @@ Future main(List rawArguments) async {
print('Writing ${'key maps'.padRight(15)}${mapsFile.absolute}');
await mapsFile.writeAsString(KeyboardMapsCodeGenerator(physicalData, logicalData).generate());
+ final File keyCodesFile = File(path.join(PlatformCodeGenerator.engineRoot,
+ 'shell', 'platform', 'embedder', 'test_utils', 'key_codes.h'));
+ if (!mapsFile.existsSync()) {
+ mapsFile.createSync(recursive: true);
+ }
+ print('Writing ${'engine key codes'.padRight(15)}${mapsFile.absolute}');
+ await keyCodesFile.writeAsString(KeyCodesCcGenerator(physicalData, logicalData).generate());
+
final Map platforms = {
'android': AndroidCodeGenerator(
physicalData,
diff --git a/dev/tools/gen_keycodes/data/README.md b/dev/tools/gen_keycodes/data/README.md
index 9283a177e7..33cd43d359 100644
--- a/dev/tools/gen_keycodes/data/README.md
+++ b/dev/tools/gen_keycodes/data/README.md
@@ -9,7 +9,6 @@
| [`supplemental_hid_codes.inc`](supplemental_hid_codes.inc) | A supplementary HID list on top of Chromium's list of HID codes for extra physical keys. Certain entries may also overwrite Chromium's corresponding entries. |
| [`supplemental_key_data.inc`](supplemental_key_data.inc) | A supplementary key list on top of Chromium's list of keys for extra logical keys.|
| [`chromium_modifiers.json`](chromium_modifiers.json) | Maps the web's `key` for modifier keys to the names of the logical keys for these keys' left and right variations.This is used when generating logical keys to provide independent values for sided logical keys. Web uses the same `key` for modifier keys of different sides, but Flutter's logical key model treats them as different keys.|
-| [`printable_to_numpads.json`](printable_to_numpads.json) | Maps a character to the names of the logical keys for these keys' number pad variations. This is used when generating logical keys to provide independent values for number pad logical keys. The web uses the character as the `key` for number pad keys, but Flutter's logical key model treats them as independent keys.|
| [`printable.json`](printable.json) | Maps Flutter key name to its printable character. This character is used as the key label.|
| [`synonyms.json`](synonyms.json) | Maps pseudo-keys that represent other keys to the sets of keys they represent. For example, this contains the "shift" key that represents either a "shiftLeft" or "shiftRight" key.|
@@ -58,7 +57,7 @@
| [`gtk_key_mapping_cc.tmpl`](gtk_key_mapping_cc.tmpl) | The template for `key_mapping.cc`. |
| [`gtk_lock_bit_mapping.json`](gtk_lock_bit_mapping.json) | Maps a name for GTK's modifier bit macro to Flutter's logical name (element #0) and physical name (element #1). This is used to generate checked keys that GTK should keep lock state synchronous on.|
| [`gtk_logical_name_mapping.json`](gtk_logical_name_mapping.json) | Maps a logical key name to the macro names of its corresponding `keyval`s. This is used to convert logical keys.|
-| [`gtk_modifier_bit_mapping.json`](gtk_modifier_bit_mapping.json) | Maps a name for GTK's modifier bit macro to Flutter's logical name (element #0), physical name (element #1), and the physical name for the paired key (element #2). This is used to generate checked keys that GTK should keep pressing state synchronous on.|
+| [`gtk_modifier_bit_mapping.json`](gtk_modifier_bit_mapping.json) | Maps a name for GTK's modifier bit macro to Flutter's physical name (element #0), logical name (element #1), and the logical name for the paired key (element #2). This is used to generate checked keys where GTK should keep the pressed state synchronized.|
| [`gtk_numpad_shift.json`](gtk_numpad_shift.json) | Maps the name of a `keyval` macro of a numpad key to that of the corresponding key with NumLock on. GTK uses different `keyval` for numpad keys with and without NumLock on, but Flutter's logical key model treats them as the same key.|
### Linux (GLFW)
diff --git a/dev/tools/gen_keycodes/data/android_key_name_to_name.json b/dev/tools/gen_keycodes/data/android_key_name_to_name.json
index a87235295a..3f8c991dd6 100644
--- a/dev/tools/gen_keycodes/data/android_key_name_to_name.json
+++ b/dev/tools/gen_keycodes/data/android_key_name_to_name.json
@@ -1,4 +1,5 @@
{
+ "Add": ["PLUS"],
"Again": ["AGAIN"],
"AltLeft": ["ALT_LEFT"],
"AltRight": ["ALT_RIGHT"],
@@ -7,6 +8,8 @@
"ArrowLeft": ["DPAD_LEFT"],
"ArrowRight": ["DPAD_RIGHT"],
"ArrowUp": ["DPAD_UP"],
+ "Asterisk": ["STAR"],
+ "At": ["AT"],
"AudioVolumeDown": ["VOLUME_DOWN"],
"AudioVolumeMute": ["VOLUME_MUTE"],
"AudioVolumeUp": ["VOLUME_UP"],
@@ -201,6 +204,7 @@
"None": ["UNKNOWN"],
"Notification": ["NOTIFICATION"],
"NumLock": ["NUM_LOCK"],
+ "NumberSign": ["POUND"],
"Numpad0": ["NUMPAD_0"],
"Numpad1": ["NUMPAD_1"],
"Numpad2": ["NUMPAD_2"],
diff --git a/dev/tools/gen_keycodes/data/gtk_key_mapping_cc.tmpl b/dev/tools/gen_keycodes/data/gtk_key_mapping_cc.tmpl
index 89f8b86c1a..47229d24c9 100644
--- a/dev/tools/gen_keycodes/data/gtk_key_mapping_cc.tmpl
+++ b/dev/tools/gen_keycodes/data/gtk_key_mapping_cc.tmpl
@@ -7,6 +7,8 @@
#include
#include
+#include "flutter/shell/platform/linux/fl_key_embedder_responder_private.h"
+
// DO NOT EDIT -- DO NOT EDIT -- DO NOT EDIT
// This file is generated by
// flutter/flutter@dev/tools/gen_keycodes/bin/gen_keycodes.dart and should not
@@ -15,14 +17,6 @@
// Edit the template dev/tools/gen_keycodes/data/gtk_key_mapping_cc.tmpl
// instead. See dev/tools/gen_keycodes/README.md for more information.
-// Insert a new entry into a hashtable from uint64 to uint64.
-//
-// Returns whether the newly added value was already in the hash table or not.
-static bool insert_record(GHashTable* table, guint64 xkb, guint64 fl_key) {
- return g_hash_table_insert(table, uint64_to_gpointer(xkb),
- uint64_to_gpointer(fl_key));
-}
-
std::map xkb_to_physical_key_map = {
@@@XKB_SCAN_CODE_MAP@@@
};
@@ -40,3 +34,5 @@ void initialize_lock_bit_to_checked_keys(GHashTable* table) {
FlKeyEmbedderCheckedKey* data;
@@@GTK_MODE_BIT_MAP@@@
}
+
+@@@MASK_CONSTANTS@@@
diff --git a/dev/tools/gen_keycodes/data/ios_key_code_map_cc.tmpl b/dev/tools/gen_keycodes/data/ios_key_code_map_cc.tmpl
index feaa9aaefb..384859275b 100644
--- a/dev/tools/gen_keycodes/data/ios_key_code_map_cc.tmpl
+++ b/dev/tools/gen_keycodes/data/ios_key_code_map_cc.tmpl
@@ -1,4 +1,4 @@
-// Copyright 2014 The Flutter Authors. All rights reserved.
+// Copyright 2013 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.
@@ -36,4 +36,4 @@ const std::map modifierFlagToKeyCode = {
@@@MODIFIER_FLAG_TO_KEYCODE_MAP@@@
};
-@@@SPECIAL_KEY_CONSTANTS@@@
\ No newline at end of file
+@@@SPECIAL_KEY_CONSTANTS@@@
diff --git a/dev/tools/gen_keycodes/data/key_codes_h.tmpl b/dev/tools/gen_keycodes/data/key_codes_h.tmpl
new file mode 100644
index 0000000000..f8a35f32bf
--- /dev/null
+++ b/dev/tools/gen_keycodes/data/key_codes_h.tmpl
@@ -0,0 +1,40 @@
+// Copyright 2013 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.
+
+#ifndef FLUTTER_SHELL_PLATFORM_COMMON_TESTING_KEY_CODES_H_
+#define FLUTTER_SHELL_PLATFORM_COMMON_TESTING_KEY_CODES_H_
+
+#include
+
+// DO NOT EDIT -- DO NOT EDIT -- DO NOT EDIT
+// This file is generated by
+// flutter/flutter:dev/tools/gen_keycodes/bin/gen_keycodes.dart and should not
+// be edited directly.
+//
+// Edit the template
+// flutter/flutter:dev/tools/gen_keycodes/data/key_codes_cc.tmpl
+// instead.
+//
+// See flutter/flutter:dev/tools/gen_keycodes/README.md for more information.
+
+// This file contains keyboard constants to be used in unit tests. They should
+// not be used in production code.
+
+namespace flutter {
+
+namespace testing {
+
+namespace keycodes {
+
+@@@PHYSICAL_KEY_DEFINITIONS@@@
+
+@@@LOGICAL_KEY_DEFINITIONS@@@
+
+} // namespace keycodes
+
+} // namespace testing
+
+} // namespace flutter
+
+#endif // FLUTTER_SHELL_PLATFORM_COMMON_TESTING_KEY_CODES_H_
diff --git a/dev/tools/gen_keycodes/data/keyboard_key.tmpl b/dev/tools/gen_keycodes/data/keyboard_key.tmpl
index 740a945bd8..eaed68c35d 100644
--- a/dev/tools/gen_keycodes/data/keyboard_key.tmpl
+++ b/dev/tools/gen_keycodes/data/keyboard_key.tmpl
@@ -280,7 +280,7 @@ class LogicalKeyboardKey extends KeyboardKey {
/// would be 0x1020000ffff, but once Flutter added the "doWhatIMean" key to
/// the definitions below, the new code would be 0x0020000ffff for all
/// platforms that had a "do what I mean" key from then on.
- bool get isAutogenerated => (keyId & autogeneratedMask) != 0;
+ bool get isAutogenerated => (keyId & planeMask) >= startOfPlatformPlanes;
/// Returns a set of pseudo-key synonyms for the given `key`.
///
@@ -323,45 +323,10 @@ class LogicalKeyboardKey extends KeyboardKey {
properties.add(StringProperty('debugName', debugName, showName: true, defaultValue: null));
}
- /// Mask for the 32-bit value portion of the key code.
- ///
- /// This is used by platform-specific code to generate Flutter key codes.
- static const int valueMask = 0x000FFFFFFFF;
+@@@MASK_CONSTANTS@@@
- /// Mask for the platform prefix portion of the key code.
- ///
- /// This is used by platform-specific code to generate Flutter key codes.
- static const int platformMask = 0x0FF00000000;
-
- /// Mask for the auto-generated bit portion of the key code.
- ///
- /// This is used by platform-specific code to generate new Flutter key codes
- /// for keys which are not recognized.
- static const int autogeneratedMask = 0x10000000000;
-
- /// Mask for the synonym pseudo-keys generated for keys which appear in more
- /// than one place on the keyboard.
- ///
- /// IDs in this range are used to represent keys which appear in multiple
- /// places on the keyboard, such as the SHIFT, ALT, CTRL, and numeric keypad
- /// keys. These key codes will never be generated by the key event system, but
- /// may be used in key maps to represent the union of all the keys of each
- /// type in order to match them.
- ///
- /// To look up the synonyms that are defined, look in the [synonyms] map.
- static const int synonymMask = 0x20000000000;
-
- /// The code prefix for keys which have a Unicode representation.
- ///
- /// This is used by platform-specific code to generate Flutter key codes.
- static const int unicodePlane = 0x00000000000;
-
- /// The code prefix for keys which do not have a Unicode representation.
- ///
- /// This is used by platform-specific code to generate Flutter key codes using
- /// HID Usage codes.
- static const int hidPlane = 0x00100000000;
@@@LOGICAL_KEY_DEFINITIONS@@@
+
// A list of all predefined constant LogicalKeyboardKeys so they can be
// searched.
static const Map _knownLogicalKeys = {
@@ -373,7 +338,8 @@ class LogicalKeyboardKey extends KeyboardKey {
@@@LOGICAL_KEY_SYNONYMS@@@ };
static const Map _keyLabels = {
-@@@LOGICAL_KEY_KEY_LABELS@@@ };
+@@@LOGICAL_KEY_KEY_LABELS@@@
+ };
}
/// A class with static values that describe the keys that are returned from
@@ -520,7 +486,9 @@ class PhysicalKeyboardKey extends KeyboardKey {
// Key constants for all keyboard keys in the USB HID specification at the
// time Flutter was built.
+
@@@PHYSICAL_KEY_DEFINITIONS@@@
+
// A list of all the predefined constant PhysicalKeyboardKeys so that they
// can be searched.
static const Map _knownPhysicalKeys = {
@@ -530,5 +498,6 @@ class PhysicalKeyboardKey extends KeyboardKey {
static const Map _debugNames = kReleaseMode ?
{} :
{
-@@@PHYSICAL_KEY_DEBUG_NAMES@@@ };
+@@@PHYSICAL_KEY_DEBUG_NAMES@@@
+ };
}
diff --git a/dev/tools/gen_keycodes/data/logical_key_data.json b/dev/tools/gen_keycodes/data/logical_key_data.json
index 8595ca63ad..b51c1b48f8 100644
--- a/dev/tools/gen_keycodes/data/logical_key_data.json
+++ b/dev/tools/gen_keycodes/data/logical_key_data.json
@@ -1,24 +1,4 @@
{
- "None": {
- "name": "None",
- "value": 0,
- "names": {
- "web": [
- "None"
- ],
- "android": [
- "UNKNOWN"
- ]
- },
- "values": {
- "android": [
- 0
- ],
- "fuchsia": [
- 0
- ]
- }
- },
"Space": {
"name": "Space",
"value": 32,
@@ -48,7 +28,7 @@
62
],
"fuchsia": [
- 4295426092
+ 77309870124
]
}
},
@@ -85,7 +65,7 @@
75
],
"fuchsia": [
- 4295426100
+ 77309870132
]
}
},
@@ -96,6 +76,14 @@
"names": {
"web": [
"NumberSign"
+ ],
+ "android": [
+ "POUND"
+ ]
+ },
+ "values": {
+ "android": [
+ 18
]
}
},
@@ -166,6 +154,14 @@
"names": {
"web": [
"Asterisk"
+ ],
+ "android": [
+ "STAR"
+ ]
+ },
+ "values": {
+ "android": [
+ 17
]
}
},
@@ -176,6 +172,14 @@
"names": {
"web": [
"Add"
+ ],
+ "android": [
+ "PLUS"
+ ]
+ },
+ "values": {
+ "android": [
+ 81
]
}
},
@@ -202,7 +206,7 @@
55
],
"fuchsia": [
- 4295426102
+ 77309870134
]
}
},
@@ -229,7 +233,7 @@
69
],
"fuchsia": [
- 4295426093
+ 77309870125
]
}
},
@@ -262,7 +266,7 @@
56
],
"fuchsia": [
- 4295426103
+ 77309870135
]
}
},
@@ -289,7 +293,7 @@
76
],
"fuchsia": [
- 4295426104
+ 77309870136
]
}
},
@@ -310,7 +314,7 @@
7
],
"fuchsia": [
- 4295426087
+ 77309870119
]
}
},
@@ -331,7 +335,7 @@
8
],
"fuchsia": [
- 4295426078
+ 77309870110
]
}
},
@@ -352,7 +356,7 @@
9
],
"fuchsia": [
- 4295426079
+ 77309870111
]
}
},
@@ -373,7 +377,7 @@
10
],
"fuchsia": [
- 4295426080
+ 77309870112
]
}
},
@@ -394,7 +398,7 @@
11
],
"fuchsia": [
- 4295426081
+ 77309870113
]
}
},
@@ -415,7 +419,7 @@
12
],
"fuchsia": [
- 4295426082
+ 77309870114
]
}
},
@@ -436,7 +440,7 @@
13
],
"fuchsia": [
- 4295426083
+ 77309870115
]
}
},
@@ -457,7 +461,7 @@
14
],
"fuchsia": [
- 4295426084
+ 77309870116
]
}
},
@@ -478,7 +482,7 @@
15
],
"fuchsia": [
- 4295426085
+ 77309870117
]
}
},
@@ -499,7 +503,7 @@
16
],
"fuchsia": [
- 4295426086
+ 77309870118
]
}
},
@@ -536,7 +540,7 @@
74
],
"fuchsia": [
- 4295426099
+ 77309870131
]
}
},
@@ -573,7 +577,7 @@
70
],
"fuchsia": [
- 4295426094
+ 77309870126
]
}
},
@@ -604,6 +608,14 @@
"names": {
"web": [
"At"
+ ],
+ "android": [
+ "AT"
+ ]
+ },
+ "values": {
+ "android": [
+ 77
]
}
},
@@ -630,7 +642,7 @@
71
],
"fuchsia": [
- 4295426095
+ 77309870127
]
}
},
@@ -657,7 +669,7 @@
73
],
"fuchsia": [
- 4295426097
+ 77309870129
]
}
},
@@ -684,7 +696,7 @@
72
],
"fuchsia": [
- 4295426096
+ 77309870128
]
}
},
@@ -731,7 +743,7 @@
68
],
"fuchsia": [
- 4295426101
+ 77309870133
]
}
},
@@ -752,7 +764,7 @@
29
],
"fuchsia": [
- 4295426052
+ 77309870084
]
}
},
@@ -773,7 +785,7 @@
30
],
"fuchsia": [
- 4295426053
+ 77309870085
]
}
},
@@ -794,7 +806,7 @@
31
],
"fuchsia": [
- 4295426054
+ 77309870086
]
}
},
@@ -815,7 +827,7 @@
32
],
"fuchsia": [
- 4295426055
+ 77309870087
]
}
},
@@ -836,7 +848,7 @@
33
],
"fuchsia": [
- 4295426056
+ 77309870088
]
}
},
@@ -857,7 +869,7 @@
34
],
"fuchsia": [
- 4295426057
+ 77309870089
]
}
},
@@ -878,7 +890,7 @@
35
],
"fuchsia": [
- 4295426058
+ 77309870090
]
}
},
@@ -899,7 +911,7 @@
36
],
"fuchsia": [
- 4295426059
+ 77309870091
]
}
},
@@ -920,7 +932,7 @@
37
],
"fuchsia": [
- 4295426060
+ 77309870092
]
}
},
@@ -941,7 +953,7 @@
38
],
"fuchsia": [
- 4295426061
+ 77309870093
]
}
},
@@ -962,7 +974,7 @@
39
],
"fuchsia": [
- 4295426062
+ 77309870094
]
}
},
@@ -983,7 +995,7 @@
40
],
"fuchsia": [
- 4295426063
+ 77309870095
]
}
},
@@ -1004,7 +1016,7 @@
41
],
"fuchsia": [
- 4295426064
+ 77309870096
]
}
},
@@ -1025,7 +1037,7 @@
42
],
"fuchsia": [
- 4295426065
+ 77309870097
]
}
},
@@ -1046,7 +1058,7 @@
43
],
"fuchsia": [
- 4295426066
+ 77309870098
]
}
},
@@ -1067,7 +1079,7 @@
44
],
"fuchsia": [
- 4295426067
+ 77309870099
]
}
},
@@ -1088,7 +1100,7 @@
45
],
"fuchsia": [
- 4295426068
+ 77309870100
]
}
},
@@ -1109,7 +1121,7 @@
46
],
"fuchsia": [
- 4295426069
+ 77309870101
]
}
},
@@ -1130,7 +1142,7 @@
47
],
"fuchsia": [
- 4295426070
+ 77309870102
]
}
},
@@ -1151,7 +1163,7 @@
48
],
"fuchsia": [
- 4295426071
+ 77309870103
]
}
},
@@ -1172,7 +1184,7 @@
49
],
"fuchsia": [
- 4295426072
+ 77309870104
]
}
},
@@ -1193,7 +1205,7 @@
50
],
"fuchsia": [
- 4295426073
+ 77309870105
]
}
},
@@ -1214,7 +1226,7 @@
51
],
"fuchsia": [
- 4295426074
+ 77309870106
]
}
},
@@ -1235,7 +1247,7 @@
52
],
"fuchsia": [
- 4295426075
+ 77309870107
]
}
},
@@ -1256,7 +1268,7 @@
53
],
"fuchsia": [
- 4295426076
+ 77309870108
]
}
},
@@ -1277,7 +1289,7 @@
54
],
"fuchsia": [
- 4295426077
+ 77309870109
]
}
},
@@ -1323,7 +1335,7 @@
},
"Unidentified": {
"name": "Unidentified",
- "value": 68719476737,
+ "value": 4294967297,
"names": {
"web": [
"Unidentified"
@@ -1332,7 +1344,7 @@
},
"Backspace": {
"name": "Backspace",
- "value": 68719476744,
+ "value": 4294967304,
"keyLabel": "\b",
"names": {
"web": [
@@ -1371,13 +1383,13 @@
67
],
"fuchsia": [
- 4295426090
+ 77309870122
]
}
},
"Tab": {
"name": "Tab",
- "value": 68719476745,
+ "value": 4294967305,
"keyLabel": "\t",
"names": {
"web": [
@@ -1420,13 +1432,13 @@
61
],
"fuchsia": [
- 4295426091
+ 77309870123
]
}
},
"Enter": {
"name": "Enter",
- "value": 68719476749,
+ "value": 4294967309,
"keyLabel": "\r",
"names": {
"web": [
@@ -1469,13 +1481,13 @@
66
],
"fuchsia": [
- 4295426088
+ 77309870120
]
}
},
"Escape": {
"name": "Escape",
- "value": 68719476763,
+ "value": 4294967323,
"keyLabel": "\u001b",
"names": {
"web": [
@@ -1514,13 +1526,13 @@
111
],
"fuchsia": [
- 4295426089
+ 77309870121
]
}
},
"Delete": {
"name": "Delete",
- "value": 68719476863,
+ "value": 4294967423,
"keyLabel": "",
"names": {
"web": [
@@ -1559,13 +1571,13 @@
112
],
"fuchsia": [
- 4295426124
+ 77309870156
]
}
},
"Accel": {
"name": "Accel",
- "value": 68719476993,
+ "value": 4294967553,
"names": {
"web": [
"Accel"
@@ -1574,7 +1586,7 @@
},
"AltGraph": {
"name": "AltGraph",
- "value": 68719476995,
+ "value": 4294967555,
"names": {
"web": [
"AltGraph"
@@ -1583,7 +1595,7 @@
},
"CapsLock": {
"name": "CapsLock",
- "value": 68719476996,
+ "value": 4294967556,
"names": {
"web": [
"CapsLock"
@@ -1621,13 +1633,13 @@
115
],
"fuchsia": [
- 4295426105
+ 77309870137
]
}
},
"Fn": {
"name": "Fn",
- "value": 68719476998,
+ "value": 4294967558,
"names": {
"web": [
"Fn"
@@ -1647,13 +1659,13 @@
119
],
"fuchsia": [
- 4294967314
+ 77309411346
]
}
},
"FnLock": {
"name": "FnLock",
- "value": 68719476999,
+ "value": 4294967559,
"names": {
"web": [
"FnLock"
@@ -1661,13 +1673,13 @@
},
"values": {
"fuchsia": [
- 4294967315
+ 77309411347
]
}
},
"Hyper": {
"name": "Hyper",
- "value": 68719477000,
+ "value": 4294967560,
"names": {
"web": [
"Hyper"
@@ -1683,13 +1695,13 @@
65518
],
"fuchsia": [
- 4294967312
+ 77309411344
]
}
},
"NumLock": {
"name": "NumLock",
- "value": 68719477002,
+ "value": 4294967562,
"names": {
"web": [
"NumLock"
@@ -1727,13 +1739,13 @@
143
],
"fuchsia": [
- 4295426131
+ 77309870163
]
}
},
"ScrollLock": {
"name": "ScrollLock",
- "value": 68719477004,
+ "value": 4294967564,
"names": {
"web": [
"ScrollLock"
@@ -1759,13 +1771,13 @@
116
],
"fuchsia": [
- 4295426119
+ 77309870151
]
}
},
"Super": {
"name": "Super",
- "value": 68719477006,
+ "value": 4294967566,
"names": {
"web": [
"Super"
@@ -1781,13 +1793,13 @@
65516
],
"fuchsia": [
- 4294967313
+ 77309411345
]
}
},
"Symbol": {
"name": "Symbol",
- "value": 68719477007,
+ "value": 4294967567,
"names": {
"web": [
"Symbol"
@@ -1804,7 +1816,7 @@
},
"SymbolLock": {
"name": "SymbolLock",
- "value": 68719477008,
+ "value": 4294967568,
"names": {
"web": [
"SymbolLock"
@@ -1813,7 +1825,7 @@
},
"ShiftLevel5": {
"name": "ShiftLevel5",
- "value": 68719477009,
+ "value": 4294967569,
"names": {
"web": [
"ShiftLevel5"
@@ -1822,7 +1834,7 @@
},
"ArrowDown": {
"name": "ArrowDown",
- "value": 68719477505,
+ "value": 4294968065,
"names": {
"web": [
"ArrowDown"
@@ -1860,13 +1872,13 @@
20
],
"fuchsia": [
- 4295426129
+ 77309870161
]
}
},
"ArrowLeft": {
"name": "ArrowLeft",
- "value": 68719477506,
+ "value": 4294968066,
"names": {
"web": [
"ArrowLeft"
@@ -1904,13 +1916,13 @@
21
],
"fuchsia": [
- 4295426128
+ 77309870160
]
}
},
"ArrowRight": {
"name": "ArrowRight",
- "value": 68719477507,
+ "value": 4294968067,
"names": {
"web": [
"ArrowRight"
@@ -1948,13 +1960,13 @@
22
],
"fuchsia": [
- 4295426127
+ 77309870159
]
}
},
"ArrowUp": {
"name": "ArrowUp",
- "value": 68719477508,
+ "value": 4294968068,
"names": {
"web": [
"ArrowUp"
@@ -1992,13 +2004,13 @@
19
],
"fuchsia": [
- 4295426130
+ 77309870162
]
}
},
"End": {
"name": "End",
- "value": 68719477509,
+ "value": 4294968069,
"names": {
"web": [
"End"
@@ -2036,13 +2048,13 @@
123
],
"fuchsia": [
- 4295426125
+ 77309870157
]
}
},
"Home": {
"name": "Home",
- "value": 68719477510,
+ "value": 4294968070,
"names": {
"web": [
"Home"
@@ -2080,13 +2092,13 @@
122
],
"fuchsia": [
- 4295426122
+ 77309870154
]
}
},
"PageDown": {
"name": "PageDown",
- "value": 68719477511,
+ "value": 4294968071,
"names": {
"web": [
"PageDown"
@@ -2124,13 +2136,13 @@
93
],
"fuchsia": [
- 4295426126
+ 77309870158
]
}
},
"PageUp": {
"name": "PageUp",
- "value": 68719477512,
+ "value": 4294968072,
"names": {
"web": [
"PageUp"
@@ -2168,13 +2180,13 @@
92
],
"fuchsia": [
- 4295426123
+ 77309870155
]
}
},
"Clear": {
"name": "Clear",
- "value": 68719477761,
+ "value": 4294968321,
"names": {
"web": [
"Clear"
@@ -2203,7 +2215,7 @@
},
"Copy": {
"name": "Copy",
- "value": 68719477762,
+ "value": 4294968322,
"names": {
"web": [
"Copy"
@@ -2225,13 +2237,13 @@
278
],
"fuchsia": [
- 4295426172
+ 77309870204
]
}
},
"CrSel": {
"name": "CrSel",
- "value": 68719477763,
+ "value": 4294968323,
"names": {
"web": [
"CrSel"
@@ -2240,7 +2252,7 @@
},
"Cut": {
"name": "Cut",
- "value": 68719477764,
+ "value": 4294968324,
"names": {
"web": [
"Cut"
@@ -2260,13 +2272,13 @@
277
],
"fuchsia": [
- 4295426171
+ 77309870203
]
}
},
"EraseEof": {
"name": "EraseEof",
- "value": 68719477765,
+ "value": 4294968325,
"names": {
"web": [
"EraseEof"
@@ -2283,7 +2295,7 @@
},
"ExSel": {
"name": "ExSel",
- "value": 68719477766,
+ "value": 4294968326,
"names": {
"web": [
"ExSel"
@@ -2300,7 +2312,7 @@
},
"Insert": {
"name": "Insert",
- "value": 68719477767,
+ "value": 4294968327,
"names": {
"web": [
"Insert"
@@ -2338,13 +2350,13 @@
124
],
"fuchsia": [
- 4295426121
+ 77309870153
]
}
},
"Paste": {
"name": "Paste",
- "value": 68719477768,
+ "value": 4294968328,
"names": {
"web": [
"Paste"
@@ -2364,13 +2376,13 @@
279
],
"fuchsia": [
- 4295426173
+ 77309870205
]
}
},
"Redo": {
"name": "Redo",
- "value": 68719477769,
+ "value": 4294968329,
"names": {
"web": [
"Redo"
@@ -2384,13 +2396,13 @@
65382
],
"fuchsia": [
- 4295754361
+ 77310198393
]
}
},
"Undo": {
"name": "Undo",
- "value": 68719477770,
+ "value": 4294968330,
"names": {
"web": [
"Undo"
@@ -2404,13 +2416,13 @@
65381
],
"fuchsia": [
- 4295426170
+ 77309870202
]
}
},
"Accept": {
"name": "Accept",
- "value": 68719478017,
+ "value": 4294968577,
"names": {
"web": [
"Accept"
@@ -2427,7 +2439,7 @@
},
"Again": {
"name": "Again",
- "value": 68719478018,
+ "value": 4294968578,
"names": {
"web": [
"Again"
@@ -2435,13 +2447,13 @@
},
"values": {
"fuchsia": [
- 4295426169
+ 77309870201
]
}
},
"Attn": {
"name": "Attn",
- "value": 68719478019,
+ "value": 4294968579,
"names": {
"web": [
"Attn"
@@ -2464,7 +2476,7 @@
},
"Cancel": {
"name": "Cancel",
- "value": 68719478020,
+ "value": 4294968580,
"names": {
"web": [
"Cancel"
@@ -2487,7 +2499,7 @@
},
"ContextMenu": {
"name": "ContextMenu",
- "value": 68719478021,
+ "value": 4294968581,
"names": {
"web": [
"ContextMenu"
@@ -2525,13 +2537,13 @@
82
],
"fuchsia": [
- 4295426149
+ 77309870181
]
}
},
"Execute": {
"name": "Execute",
- "value": 68719478022,
+ "value": 4294968582,
"names": {
"web": [
"Execute"
@@ -2554,7 +2566,7 @@
},
"Find": {
"name": "Find",
- "value": 68719478023,
+ "value": 4294968583,
"names": {
"web": [
"Find"
@@ -2568,13 +2580,13 @@
65384
],
"fuchsia": [
- 4295426174
+ 77309870206
]
}
},
"Help": {
"name": "Help",
- "value": 68719478024,
+ "value": 4294968584,
"names": {
"web": [
"Help"
@@ -2600,13 +2612,13 @@
259
],
"fuchsia": [
- 4295426165
+ 77309870197
]
}
},
"Pause": {
"name": "Pause",
- "value": 68719478025,
+ "value": 4294968585,
"names": {
"web": [
"Pause"
@@ -2632,13 +2644,13 @@
121
],
"fuchsia": [
- 4295426120
+ 77309870152
]
}
},
"Play": {
"name": "Play",
- "value": 68719478026,
+ "value": 4294968586,
"names": {
"web": [
"Play"
@@ -2655,7 +2667,7 @@
},
"Props": {
"name": "Props",
- "value": 68719478027,
+ "value": 4294968587,
"names": {
"web": [
"Props"
@@ -2663,13 +2675,13 @@
},
"values": {
"fuchsia": [
- 4295426211
+ 77309870243
]
}
},
"Select": {
"name": "Select",
- "value": 68719478028,
+ "value": 4294968588,
"names": {
"web": [
"Select"
@@ -2695,13 +2707,13 @@
23
],
"fuchsia": [
- 4295426167
+ 77309870199
]
}
},
"ZoomIn": {
"name": "ZoomIn",
- "value": 68719478029,
+ "value": 4294968589,
"names": {
"web": [
"ZoomIn"
@@ -2721,13 +2733,13 @@
168
],
"fuchsia": [
- 4295754285
+ 77310198317
]
}
},
"ZoomOut": {
"name": "ZoomOut",
- "value": 68719478030,
+ "value": 4294968590,
"names": {
"web": [
"ZoomOut"
@@ -2747,13 +2759,13 @@
169
],
"fuchsia": [
- 4295754286
+ 77310198318
]
}
},
"BrightnessDown": {
"name": "BrightnessDown",
- "value": 68719478273,
+ "value": 4294968833,
"names": {
"web": [
"BrightnessDown"
@@ -2773,13 +2785,13 @@
220
],
"fuchsia": [
- 4295753840
+ 77310197872
]
}
},
"BrightnessUp": {
"name": "BrightnessUp",
- "value": 68719478274,
+ "value": 4294968834,
"names": {
"web": [
"BrightnessUp"
@@ -2799,13 +2811,13 @@
221
],
"fuchsia": [
- 4295753839
+ 77310197871
]
}
},
"Camera": {
"name": "Camera",
- "value": 68719478275,
+ "value": 4294968835,
"names": {
"web": [
"Camera"
@@ -2822,7 +2834,7 @@
},
"Eject": {
"name": "Eject",
- "value": 68719478276,
+ "value": 4294968836,
"names": {
"web": [
"Eject"
@@ -2842,13 +2854,13 @@
129
],
"fuchsia": [
- 4295753912
+ 77310197944
]
}
},
"LogOff": {
"name": "LogOff",
- "value": 68719478277,
+ "value": 4294968837,
"names": {
"web": [
"LogOff"
@@ -2862,13 +2874,13 @@
269025121
],
"fuchsia": [
- 4295754140
+ 77310198172
]
}
},
"Power": {
"name": "Power",
- "value": 68719478278,
+ "value": 4294968838,
"names": {
"web": [
"Power"
@@ -2882,13 +2894,13 @@
26
],
"fuchsia": [
- 4295426150
+ 77309870182
]
}
},
"PowerOff": {
"name": "PowerOff",
- "value": 68719478279,
+ "value": 4294968839,
"names": {
"web": [
"PowerOff"
@@ -2905,7 +2917,7 @@
},
"PrintScreen": {
"name": "PrintScreen",
- "value": 68719478280,
+ "value": 4294968840,
"names": {
"web": [
"PrintScreen"
@@ -2925,13 +2937,13 @@
120
],
"fuchsia": [
- 4295426118
+ 77309870150
]
}
},
"Hibernate": {
"name": "Hibernate",
- "value": 68719478281,
+ "value": 4294968841,
"names": {
"web": [
"Hibernate"
@@ -2940,7 +2952,7 @@
},
"Standby": {
"name": "Standby",
- "value": 68719478282,
+ "value": 4294968842,
"names": {
"web": [
"Standby"
@@ -2957,7 +2969,7 @@
},
"WakeUp": {
"name": "WakeUp",
- "value": 68719478283,
+ "value": 4294968843,
"names": {
"web": [
"WakeUp"
@@ -2977,13 +2989,13 @@
224
],
"fuchsia": [
- 4295032963
+ 77309476995
]
}
},
"AllCandidates": {
"name": "AllCandidates",
- "value": 68719478529,
+ "value": 4294969089,
"names": {
"web": [
"AllCandidates"
@@ -2992,7 +3004,7 @@
},
"Alphanumeric": {
"name": "Alphanumeric",
- "value": 68719478530,
+ "value": 4294969090,
"names": {
"web": [
"Alphanumeric"
@@ -3001,7 +3013,7 @@
},
"CodeInput": {
"name": "CodeInput",
- "value": 68719478531,
+ "value": 4294969091,
"names": {
"web": [
"CodeInput"
@@ -3018,7 +3030,7 @@
},
"Compose": {
"name": "Compose",
- "value": 68719478532,
+ "value": 4294969092,
"names": {
"web": [
"Compose"
@@ -3027,7 +3039,7 @@
},
"Convert": {
"name": "Convert",
- "value": 68719478533,
+ "value": 4294969093,
"names": {
"web": [
"Convert"
@@ -3047,13 +3059,13 @@
214
],
"fuchsia": [
- 4295426186
+ 77309870218
]
}
},
"FinalMode": {
"name": "FinalMode",
- "value": 68719478534,
+ "value": 4294969094,
"names": {
"web": [
"FinalMode"
@@ -3070,7 +3082,7 @@
},
"GroupFirst": {
"name": "GroupFirst",
- "value": 68719478535,
+ "value": 4294969095,
"names": {
"web": [
"GroupFirst"
@@ -3087,7 +3099,7 @@
},
"GroupLast": {
"name": "GroupLast",
- "value": 68719478536,
+ "value": 4294969096,
"names": {
"web": [
"GroupLast"
@@ -3104,7 +3116,7 @@
},
"GroupNext": {
"name": "GroupNext",
- "value": 68719478537,
+ "value": 4294969097,
"names": {
"web": [
"GroupNext"
@@ -3127,7 +3139,7 @@
},
"GroupPrevious": {
"name": "GroupPrevious",
- "value": 68719478538,
+ "value": 4294969098,
"names": {
"web": [
"GroupPrevious"
@@ -3144,7 +3156,7 @@
},
"ModeChange": {
"name": "ModeChange",
- "value": 68719478539,
+ "value": 4294969099,
"names": {
"web": [
"ModeChange"
@@ -3173,7 +3185,7 @@
},
"NextCandidate": {
"name": "NextCandidate",
- "value": 68719478540,
+ "value": 4294969100,
"names": {
"web": [
"NextCandidate"
@@ -3182,7 +3194,7 @@
},
"NonConvert": {
"name": "NonConvert",
- "value": 68719478541,
+ "value": 4294969101,
"names": {
"web": [
"NonConvert"
@@ -3196,13 +3208,13 @@
213
],
"fuchsia": [
- 4295426187
+ 77309870219
]
}
},
"PreviousCandidate": {
"name": "PreviousCandidate",
- "value": 68719478542,
+ "value": 4294969102,
"names": {
"web": [
"PreviousCandidate"
@@ -3219,7 +3231,7 @@
},
"Process": {
"name": "Process",
- "value": 68719478543,
+ "value": 4294969103,
"names": {
"web": [
"Process"
@@ -3228,7 +3240,7 @@
},
"SingleCandidate": {
"name": "SingleCandidate",
- "value": 68719478544,
+ "value": 4294969104,
"names": {
"web": [
"SingleCandidate"
@@ -3245,7 +3257,7 @@
},
"HangulMode": {
"name": "HangulMode",
- "value": 68719478545,
+ "value": 4294969105,
"names": {
"web": [
"HangulMode"
@@ -3262,30 +3274,24 @@
},
"HanjaMode": {
"name": "HanjaMode",
- "value": 68719478546,
+ "value": 4294969106,
"names": {
"web": [
"HanjaMode"
],
"gtk": [
"Hangul_Hanja"
- ],
- "windows": [
- "HANJA"
]
},
"values": {
"gtk": [
65332
- ],
- "windows": [
- 25
]
}
},
"JunjaMode": {
"name": "JunjaMode",
- "value": 68719478547,
+ "value": 4294969107,
"names": {
"web": [
"JunjaMode"
@@ -3302,7 +3308,7 @@
},
"Eisu": {
"name": "Eisu",
- "value": 68719478548,
+ "value": 4294969108,
"names": {
"web": [
"Eisu"
@@ -3325,7 +3331,7 @@
},
"Hankaku": {
"name": "Hankaku",
- "value": 68719478549,
+ "value": 4294969109,
"names": {
"web": [
"Hankaku"
@@ -3342,7 +3348,7 @@
},
"Hiragana": {
"name": "Hiragana",
- "value": 68719478550,
+ "value": 4294969110,
"names": {
"web": [
"Hiragana"
@@ -3359,7 +3365,7 @@
},
"HiraganaKatakana": {
"name": "HiraganaKatakana",
- "value": 68719478551,
+ "value": 4294969111,
"names": {
"web": [
"HiraganaKatakana"
@@ -3382,7 +3388,7 @@
},
"KanaMode": {
"name": "KanaMode",
- "value": 68719478552,
+ "value": 4294969112,
"names": {
"web": [
"KanaMode"
@@ -3390,13 +3396,13 @@
},
"values": {
"fuchsia": [
- 4295426184
+ 77309870216
]
}
},
"KanjiMode": {
"name": "KanjiMode",
- "value": 68719478553,
+ "value": 4294969113,
"names": {
"web": [
"KanjiMode"
@@ -3405,7 +3411,7 @@
"Kanji"
],
"windows": [
- "KANJI"
+ "HANJA, KANJI"
],
"android": [
"KANA"
@@ -3425,7 +3431,7 @@
},
"Katakana": {
"name": "Katakana",
- "value": 68719478554,
+ "value": 4294969114,
"names": {
"web": [
"Katakana"
@@ -3442,7 +3448,7 @@
},
"Romaji": {
"name": "Romaji",
- "value": 68719478555,
+ "value": 4294969115,
"names": {
"web": [
"Romaji"
@@ -3459,7 +3465,7 @@
},
"Zenkaku": {
"name": "Zenkaku",
- "value": 68719478556,
+ "value": 4294969116,
"names": {
"web": [
"Zenkaku"
@@ -3476,7 +3482,7 @@
},
"ZenkakuHankaku": {
"name": "ZenkakuHankaku",
- "value": 68719478557,
+ "value": 4294969117,
"names": {
"web": [
"ZenkakuHankaku"
@@ -3499,7 +3505,7 @@
},
"F1": {
"name": "F1",
- "value": 68719478785,
+ "value": 4294969345,
"names": {
"web": [
"F1"
@@ -3539,13 +3545,13 @@
131
],
"fuchsia": [
- 4295426106
+ 77309870138
]
}
},
"F2": {
"name": "F2",
- "value": 68719478786,
+ "value": 4294969346,
"names": {
"web": [
"F2"
@@ -3585,13 +3591,13 @@
132
],
"fuchsia": [
- 4295426107
+ 77309870139
]
}
},
"F3": {
"name": "F3",
- "value": 68719478787,
+ "value": 4294969347,
"names": {
"web": [
"F3"
@@ -3631,13 +3637,13 @@
133
],
"fuchsia": [
- 4295426108
+ 77309870140
]
}
},
"F4": {
"name": "F4",
- "value": 68719478788,
+ "value": 4294969348,
"names": {
"web": [
"F4"
@@ -3677,13 +3683,13 @@
134
],
"fuchsia": [
- 4295426109
+ 77309870141
]
}
},
"F5": {
"name": "F5",
- "value": 68719478789,
+ "value": 4294969349,
"names": {
"web": [
"F5"
@@ -3721,13 +3727,13 @@
135
],
"fuchsia": [
- 4295426110
+ 77309870142
]
}
},
"F6": {
"name": "F6",
- "value": 68719478790,
+ "value": 4294969350,
"names": {
"web": [
"F6"
@@ -3765,13 +3771,13 @@
136
],
"fuchsia": [
- 4295426111
+ 77309870143
]
}
},
"F7": {
"name": "F7",
- "value": 68719478791,
+ "value": 4294969351,
"names": {
"web": [
"F7"
@@ -3809,13 +3815,13 @@
137
],
"fuchsia": [
- 4295426112
+ 77309870144
]
}
},
"F8": {
"name": "F8",
- "value": 68719478792,
+ "value": 4294969352,
"names": {
"web": [
"F8"
@@ -3853,13 +3859,13 @@
138
],
"fuchsia": [
- 4295426113
+ 77309870145
]
}
},
"F9": {
"name": "F9",
- "value": 68719478793,
+ "value": 4294969353,
"names": {
"web": [
"F9"
@@ -3897,13 +3903,13 @@
139
],
"fuchsia": [
- 4295426114
+ 77309870146
]
}
},
"F10": {
"name": "F10",
- "value": 68719478794,
+ "value": 4294969354,
"names": {
"web": [
"F10"
@@ -3941,13 +3947,13 @@
140
],
"fuchsia": [
- 4295426115
+ 77309870147
]
}
},
"F11": {
"name": "F11",
- "value": 68719478795,
+ "value": 4294969355,
"names": {
"web": [
"F11"
@@ -3985,13 +3991,13 @@
141
],
"fuchsia": [
- 4295426116
+ 77309870148
]
}
},
"F12": {
"name": "F12",
- "value": 68719478796,
+ "value": 4294969356,
"names": {
"web": [
"F12"
@@ -4029,13 +4035,13 @@
142
],
"fuchsia": [
- 4295426117
+ 77309870149
]
}
},
"F13": {
"name": "F13",
- "value": 68719478797,
+ "value": 4294969357,
"names": {
"web": [
"F13"
@@ -4067,13 +4073,13 @@
124
],
"fuchsia": [
- 4295426152
+ 77309870184
]
}
},
"F14": {
"name": "F14",
- "value": 68719478798,
+ "value": 4294969358,
"names": {
"web": [
"F14"
@@ -4105,13 +4111,13 @@
125
],
"fuchsia": [
- 4295426153
+ 77309870185
]
}
},
"F15": {
"name": "F15",
- "value": 68719478799,
+ "value": 4294969359,
"names": {
"web": [
"F15"
@@ -4143,13 +4149,13 @@
126
],
"fuchsia": [
- 4295426154
+ 77309870186
]
}
},
"F16": {
"name": "F16",
- "value": 68719478800,
+ "value": 4294969360,
"names": {
"web": [
"F16"
@@ -4181,13 +4187,13 @@
127
],
"fuchsia": [
- 4295426155
+ 77309870187
]
}
},
"F17": {
"name": "F17",
- "value": 68719478801,
+ "value": 4294969361,
"names": {
"web": [
"F17"
@@ -4219,13 +4225,13 @@
128
],
"fuchsia": [
- 4295426156
+ 77309870188
]
}
},
"F18": {
"name": "F18",
- "value": 68719478802,
+ "value": 4294969362,
"names": {
"web": [
"F18"
@@ -4257,13 +4263,13 @@
129
],
"fuchsia": [
- 4295426157
+ 77309870189
]
}
},
"F19": {
"name": "F19",
- "value": 68719478803,
+ "value": 4294969363,
"names": {
"web": [
"F19"
@@ -4295,13 +4301,13 @@
130
],
"fuchsia": [
- 4295426158
+ 77309870190
]
}
},
"F20": {
"name": "F20",
- "value": 68719478804,
+ "value": 4294969364,
"names": {
"web": [
"F20"
@@ -4333,13 +4339,13 @@
131
],
"fuchsia": [
- 4295426159
+ 77309870191
]
}
},
"F21": {
"name": "F21",
- "value": 68719478805,
+ "value": 4294969365,
"names": {
"web": [
"F21"
@@ -4359,13 +4365,13 @@
132
],
"fuchsia": [
- 4295426160
+ 77309870192
]
}
},
"F22": {
"name": "F22",
- "value": 68719478806,
+ "value": 4294969366,
"names": {
"web": [
"F22"
@@ -4385,13 +4391,13 @@
133
],
"fuchsia": [
- 4295426161
+ 77309870193
]
}
},
"F23": {
"name": "F23",
- "value": 68719478807,
+ "value": 4294969367,
"names": {
"web": [
"F23"
@@ -4411,13 +4417,13 @@
134
],
"fuchsia": [
- 4295426162
+ 77309870194
]
}
},
"F24": {
"name": "F24",
- "value": 68719478808,
+ "value": 4294969368,
"names": {
"web": [
"F24"
@@ -4437,13 +4443,13 @@
135
],
"fuchsia": [
- 4295426163
+ 77309870195
]
}
},
"Soft1": {
"name": "Soft1",
- "value": 68719479041,
+ "value": 4294969601,
"names": {
"web": [
"Soft1"
@@ -4452,7 +4458,7 @@
},
"Soft2": {
"name": "Soft2",
- "value": 68719479042,
+ "value": 4294969602,
"names": {
"web": [
"Soft2"
@@ -4461,7 +4467,7 @@
},
"Soft3": {
"name": "Soft3",
- "value": 68719479043,
+ "value": 4294969603,
"names": {
"web": [
"Soft3"
@@ -4470,7 +4476,7 @@
},
"Soft4": {
"name": "Soft4",
- "value": 68719479044,
+ "value": 4294969604,
"names": {
"web": [
"Soft4"
@@ -4479,7 +4485,7 @@
},
"Soft5": {
"name": "Soft5",
- "value": 68719479045,
+ "value": 4294969605,
"names": {
"web": [
"Soft5"
@@ -4488,7 +4494,7 @@
},
"Soft6": {
"name": "Soft6",
- "value": 68719479046,
+ "value": 4294969606,
"names": {
"web": [
"Soft6"
@@ -4497,7 +4503,7 @@
},
"Soft7": {
"name": "Soft7",
- "value": 68719479047,
+ "value": 4294969607,
"names": {
"web": [
"Soft7"
@@ -4506,7 +4512,7 @@
},
"Soft8": {
"name": "Soft8",
- "value": 68719479048,
+ "value": 4294969608,
"names": {
"web": [
"Soft8"
@@ -4515,7 +4521,7 @@
},
"Close": {
"name": "Close",
- "value": 68719479297,
+ "value": 4294969857,
"names": {
"web": [
"Close"
@@ -4535,13 +4541,13 @@
128
],
"fuchsia": [
- 4295754243
+ 77310198275
]
}
},
"MailForward": {
"name": "MailForward",
- "value": 68719479298,
+ "value": 4294969858,
"names": {
"web": [
"MailForward"
@@ -4555,13 +4561,13 @@
269025168
],
"fuchsia": [
- 4295754379
+ 77310198411
]
}
},
"MailReply": {
"name": "MailReply",
- "value": 68719479299,
+ "value": 4294969859,
"names": {
"web": [
"MailReply"
@@ -4575,13 +4581,13 @@
269025138
],
"fuchsia": [
- 4295754377
+ 77310198409
]
}
},
"MailSend": {
"name": "MailSend",
- "value": 68719479300,
+ "value": 4294969860,
"names": {
"web": [
"MailSend"
@@ -4595,13 +4601,13 @@
269025147
],
"fuchsia": [
- 4295754380
+ 77310198412
]
}
},
"MediaPlayPause": {
"name": "MediaPlayPause",
- "value": 68719479301,
+ "value": 4294969861,
"names": {
"web": [
"MediaPlayPause"
@@ -4621,13 +4627,13 @@
85
],
"fuchsia": [
- 4295753933
+ 77310197965
]
}
},
"MediaStop": {
"name": "MediaStop",
- "value": 68719479303,
+ "value": 4294969863,
"names": {
"web": [
"MediaStop"
@@ -4653,13 +4659,13 @@
86
],
"fuchsia": [
- 4295753911
+ 77310197943
]
}
},
"MediaTrackNext": {
"name": "MediaTrackNext",
- "value": 68719479304,
+ "value": 4294969864,
"names": {
"web": [
"MediaTrackNext"
@@ -4679,13 +4685,13 @@
87
],
"fuchsia": [
- 4295753909
+ 77310197941
]
}
},
"MediaTrackPrevious": {
"name": "MediaTrackPrevious",
- "value": 68719479305,
+ "value": 4294969865,
"names": {
"web": [
"MediaTrackPrevious"
@@ -4705,13 +4711,13 @@
88
],
"fuchsia": [
- 4295753910
+ 77310197942
]
}
},
"New": {
"name": "New",
- "value": 68719479306,
+ "value": 4294969866,
"names": {
"web": [
"New"
@@ -4725,13 +4731,13 @@
269025128
],
"fuchsia": [
- 4295754241
+ 77310198273
]
}
},
"Open": {
"name": "Open",
- "value": 68719479307,
+ "value": 4294969867,
"names": {
"web": [
"Open"
@@ -4745,13 +4751,13 @@
269025131
],
"fuchsia": [
- 4295426164
+ 77309870196
]
}
},
"Print": {
"name": "Print",
- "value": 68719479308,
+ "value": 4294969868,
"names": {
"web": [
"Print"
@@ -4771,13 +4777,13 @@
42
],
"fuchsia": [
- 4295754248
+ 77310198280
]
}
},
"Save": {
"name": "Save",
- "value": 68719479309,
+ "value": 4294969869,
"names": {
"web": [
"Save"
@@ -4791,13 +4797,13 @@
269025143
],
"fuchsia": [
- 4295754247
+ 77310198279
]
}
},
"SpellCheck": {
"name": "SpellCheck",
- "value": 68719479310,
+ "value": 4294969870,
"names": {
"web": [
"SpellCheck"
@@ -4811,13 +4817,13 @@
269025148
],
"fuchsia": [
- 4295754155
+ 77310198187
]
}
},
"AudioVolumeDown": {
"name": "AudioVolumeDown",
- "value": 68719479311,
+ "value": 4294969871,
"names": {
"web": [
"AudioVolumeDown"
@@ -4855,13 +4861,13 @@
25
],
"fuchsia": [
- 4295426177
+ 77309870209
]
}
},
"AudioVolumeUp": {
"name": "AudioVolumeUp",
- "value": 68719479312,
+ "value": 4294969872,
"names": {
"web": [
"AudioVolumeUp"
@@ -4899,13 +4905,13 @@
24
],
"fuchsia": [
- 4295426176
+ 77309870208
]
}
},
"AudioVolumeMute": {
"name": "AudioVolumeMute",
- "value": 68719479313,
+ "value": 4294969873,
"names": {
"web": [
"AudioVolumeMute"
@@ -4943,13 +4949,13 @@
164
],
"fuchsia": [
- 4295426175
+ 77309870207
]
}
},
"LaunchApplication2": {
"name": "LaunchApplication2",
- "value": 68719479553,
+ "value": 4294970113,
"names": {
"web": [
"LaunchApplication2"
@@ -4958,7 +4964,7 @@
},
"LaunchCalendar": {
"name": "LaunchCalendar",
- "value": 68719479554,
+ "value": 4294970114,
"names": {
"web": [
"LaunchCalendar"
@@ -4978,13 +4984,13 @@
208
],
"fuchsia": [
- 4295754126
+ 77310198158
]
}
},
"LaunchMail": {
"name": "LaunchMail",
- "value": 68719479555,
+ "value": 4294970115,
"names": {
"web": [
"LaunchMail"
@@ -5010,13 +5016,13 @@
65
],
"fuchsia": [
- 4295754122
+ 77310198154
]
}
},
"LaunchMediaPlayer": {
"name": "LaunchMediaPlayer",
- "value": 68719479556,
+ "value": 4294970116,
"names": {
"web": [
"LaunchMediaPlayer"
@@ -5025,7 +5031,7 @@
},
"LaunchMusicPlayer": {
"name": "LaunchMusicPlayer",
- "value": 68719479557,
+ "value": 4294970117,
"names": {
"web": [
"LaunchMusicPlayer"
@@ -5042,7 +5048,7 @@
},
"LaunchApplication1": {
"name": "LaunchApplication1",
- "value": 68719479558,
+ "value": 4294970118,
"names": {
"web": [
"LaunchApplication1"
@@ -5051,7 +5057,7 @@
},
"LaunchScreenSaver": {
"name": "LaunchScreenSaver",
- "value": 68719479559,
+ "value": 4294970119,
"names": {
"web": [
"LaunchScreenSaver"
@@ -5065,13 +5071,13 @@
269025069
],
"fuchsia": [
- 4295754161
+ 77310198193
]
}
},
"LaunchSpreadsheet": {
"name": "LaunchSpreadsheet",
- "value": 68719479560,
+ "value": 4294970120,
"names": {
"web": [
"LaunchSpreadsheet"
@@ -5079,13 +5085,13 @@
},
"values": {
"fuchsia": [
- 4295754118
+ 77310198150
]
}
},
"LaunchWebBrowser": {
"name": "LaunchWebBrowser",
- "value": 68719479561,
+ "value": 4294970121,
"names": {
"web": [
"LaunchWebBrowser"
@@ -5102,7 +5108,7 @@
},
"LaunchWebCam": {
"name": "LaunchWebCam",
- "value": 68719479562,
+ "value": 4294970122,
"names": {
"web": [
"LaunchWebCam"
@@ -5111,7 +5117,7 @@
},
"LaunchWordProcessor": {
"name": "LaunchWordProcessor",
- "value": 68719479563,
+ "value": 4294970123,
"names": {
"web": [
"LaunchWordProcessor"
@@ -5119,13 +5125,13 @@
},
"values": {
"fuchsia": [
- 4295754116
+ 77310198148
]
}
},
"LaunchContacts": {
"name": "LaunchContacts",
- "value": 68719479564,
+ "value": 4294970124,
"names": {
"web": [
"LaunchContacts"
@@ -5139,13 +5145,13 @@
207
],
"fuchsia": [
- 4295754125
+ 77310198157
]
}
},
"LaunchPhone": {
"name": "LaunchPhone",
- "value": 68719479565,
+ "value": 4294970125,
"names": {
"web": [
"LaunchPhone"
@@ -5159,13 +5165,13 @@
269025134
],
"fuchsia": [
- 4295753868
+ 77310197900
]
}
},
"LaunchAssistant": {
"name": "LaunchAssistant",
- "value": 68719479566,
+ "value": 4294970126,
"names": {
"web": [
"LaunchAssistant"
@@ -5179,13 +5185,13 @@
219
],
"fuchsia": [
- 4295754187
+ 77310198219
]
}
},
"LaunchControlPanel": {
"name": "LaunchControlPanel",
- "value": 68719479567,
+ "value": 4294970127,
"names": {
"web": [
"LaunchControlPanel"
@@ -5193,13 +5199,13 @@
},
"values": {
"fuchsia": [
- 4295754143
+ 77310198175
]
}
},
"BrowserBack": {
"name": "BrowserBack",
- "value": 68719479809,
+ "value": 4294970369,
"names": {
"web": [
"BrowserBack"
@@ -5219,13 +5225,13 @@
166
],
"fuchsia": [
- 4295754276
+ 77310198308
]
}
},
"BrowserFavorites": {
"name": "BrowserFavorites",
- "value": 68719479810,
+ "value": 4294970370,
"names": {
"web": [
"BrowserFavorites"
@@ -5251,13 +5257,13 @@
174
],
"fuchsia": [
- 4295754282
+ 77310198314
]
}
},
"BrowserForward": {
"name": "BrowserForward",
- "value": 68719479811,
+ "value": 4294970371,
"names": {
"web": [
"BrowserForward"
@@ -5283,13 +5289,13 @@
125
],
"fuchsia": [
- 4295754277
+ 77310198309
]
}
},
"BrowserHome": {
"name": "BrowserHome",
- "value": 68719479812,
+ "value": 4294970372,
"names": {
"web": [
"BrowserHome"
@@ -5309,13 +5315,13 @@
172
],
"fuchsia": [
- 4295754275
+ 77310198307
]
}
},
"BrowserRefresh": {
"name": "BrowserRefresh",
- "value": 68719479813,
+ "value": 4294970373,
"names": {
"web": [
"BrowserRefresh"
@@ -5335,13 +5341,13 @@
168
],
"fuchsia": [
- 4295754279
+ 77310198311
]
}
},
"BrowserSearch": {
"name": "BrowserSearch",
- "value": 68719479814,
+ "value": 4294970374,
"names": {
"web": [
"BrowserSearch"
@@ -5367,13 +5373,13 @@
84
],
"fuchsia": [
- 4295754273
+ 77310198305
]
}
},
"BrowserStop": {
"name": "BrowserStop",
- "value": 68719479815,
+ "value": 4294970375,
"names": {
"web": [
"BrowserStop"
@@ -5393,13 +5399,13 @@
169
],
"fuchsia": [
- 4295754278
+ 77310198310
]
}
},
"AudioBalanceLeft": {
"name": "AudioBalanceLeft",
- "value": 68719480065,
+ "value": 4294970625,
"names": {
"web": [
"AudioBalanceLeft"
@@ -5408,7 +5414,7 @@
},
"AudioBalanceRight": {
"name": "AudioBalanceRight",
- "value": 68719480066,
+ "value": 4294970626,
"names": {
"web": [
"AudioBalanceRight"
@@ -5417,7 +5423,7 @@
},
"AudioBassBoostDown": {
"name": "AudioBassBoostDown",
- "value": 68719480067,
+ "value": 4294970627,
"names": {
"web": [
"AudioBassBoostDown"
@@ -5426,7 +5432,7 @@
},
"AudioBassBoostUp": {
"name": "AudioBassBoostUp",
- "value": 68719480068,
+ "value": 4294970628,
"names": {
"web": [
"AudioBassBoostUp"
@@ -5435,7 +5441,7 @@
},
"AudioFaderFront": {
"name": "AudioFaderFront",
- "value": 68719480069,
+ "value": 4294970629,
"names": {
"web": [
"AudioFaderFront"
@@ -5444,7 +5450,7 @@
},
"AudioFaderRear": {
"name": "AudioFaderRear",
- "value": 68719480070,
+ "value": 4294970630,
"names": {
"web": [
"AudioFaderRear"
@@ -5453,7 +5459,7 @@
},
"AudioSurroundModeNext": {
"name": "AudioSurroundModeNext",
- "value": 68719480071,
+ "value": 4294970631,
"names": {
"web": [
"AudioSurroundModeNext"
@@ -5462,7 +5468,7 @@
},
"AVRInput": {
"name": "AVRInput",
- "value": 68719480072,
+ "value": 4294970632,
"names": {
"web": [
"AVRInput"
@@ -5479,7 +5485,7 @@
},
"AVRPower": {
"name": "AVRPower",
- "value": 68719480073,
+ "value": 4294970633,
"names": {
"web": [
"AVRPower"
@@ -5496,7 +5502,7 @@
},
"ChannelDown": {
"name": "ChannelDown",
- "value": 68719480074,
+ "value": 4294970634,
"names": {
"web": [
"ChannelDown"
@@ -5510,13 +5516,13 @@
167
],
"fuchsia": [
- 4295753885
+ 77310197917
]
}
},
"ChannelUp": {
"name": "ChannelUp",
- "value": 68719480075,
+ "value": 4294970635,
"names": {
"web": [
"ChannelUp"
@@ -5530,13 +5536,13 @@
166
],
"fuchsia": [
- 4295753884
+ 77310197916
]
}
},
"ColorF0Red": {
"name": "ColorF0Red",
- "value": 68719480076,
+ "value": 4294970636,
"names": {
"web": [
"ColorF0Red"
@@ -5553,7 +5559,7 @@
},
"ColorF1Green": {
"name": "ColorF1Green",
- "value": 68719480077,
+ "value": 4294970637,
"names": {
"web": [
"ColorF1Green"
@@ -5570,7 +5576,7 @@
},
"ColorF2Yellow": {
"name": "ColorF2Yellow",
- "value": 68719480078,
+ "value": 4294970638,
"names": {
"web": [
"ColorF2Yellow"
@@ -5587,7 +5593,7 @@
},
"ColorF3Blue": {
"name": "ColorF3Blue",
- "value": 68719480079,
+ "value": 4294970639,
"names": {
"web": [
"ColorF3Blue"
@@ -5604,7 +5610,7 @@
},
"ColorF4Grey": {
"name": "ColorF4Grey",
- "value": 68719480080,
+ "value": 4294970640,
"names": {
"web": [
"ColorF4Grey"
@@ -5613,7 +5619,7 @@
},
"ColorF5Brown": {
"name": "ColorF5Brown",
- "value": 68719480081,
+ "value": 4294970641,
"names": {
"web": [
"ColorF5Brown"
@@ -5622,7 +5628,7 @@
},
"ClosedCaptionToggle": {
"name": "ClosedCaptionToggle",
- "value": 68719480082,
+ "value": 4294970642,
"names": {
"web": [
"ClosedCaptionToggle"
@@ -5636,13 +5642,13 @@
175
],
"fuchsia": [
- 4295753825
+ 77310197857
]
}
},
"Dimmer": {
"name": "Dimmer",
- "value": 68719480083,
+ "value": 4294970643,
"names": {
"web": [
"Dimmer"
@@ -5651,7 +5657,7 @@
},
"DisplaySwap": {
"name": "DisplaySwap",
- "value": 68719480084,
+ "value": 4294970644,
"names": {
"web": [
"DisplaySwap"
@@ -5660,7 +5666,7 @@
},
"Exit": {
"name": "Exit",
- "value": 68719480085,
+ "value": 4294970645,
"names": {
"web": [
"Exit"
@@ -5668,13 +5674,13 @@
},
"values": {
"fuchsia": [
- 4295753876
+ 77310197908
]
}
},
"FavoriteClear0": {
"name": "FavoriteClear0",
- "value": 68719480086,
+ "value": 4294970646,
"names": {
"web": [
"FavoriteClear0"
@@ -5683,7 +5689,7 @@
},
"FavoriteClear1": {
"name": "FavoriteClear1",
- "value": 68719480087,
+ "value": 4294970647,
"names": {
"web": [
"FavoriteClear1"
@@ -5692,7 +5698,7 @@
},
"FavoriteClear2": {
"name": "FavoriteClear2",
- "value": 68719480088,
+ "value": 4294970648,
"names": {
"web": [
"FavoriteClear2"
@@ -5701,7 +5707,7 @@
},
"FavoriteClear3": {
"name": "FavoriteClear3",
- "value": 68719480089,
+ "value": 4294970649,
"names": {
"web": [
"FavoriteClear3"
@@ -5710,7 +5716,7 @@
},
"FavoriteRecall0": {
"name": "FavoriteRecall0",
- "value": 68719480090,
+ "value": 4294970650,
"names": {
"web": [
"FavoriteRecall0"
@@ -5719,7 +5725,7 @@
},
"FavoriteRecall1": {
"name": "FavoriteRecall1",
- "value": 68719480091,
+ "value": 4294970651,
"names": {
"web": [
"FavoriteRecall1"
@@ -5728,7 +5734,7 @@
},
"FavoriteRecall2": {
"name": "FavoriteRecall2",
- "value": 68719480092,
+ "value": 4294970652,
"names": {
"web": [
"FavoriteRecall2"
@@ -5737,7 +5743,7 @@
},
"FavoriteRecall3": {
"name": "FavoriteRecall3",
- "value": 68719480093,
+ "value": 4294970653,
"names": {
"web": [
"FavoriteRecall3"
@@ -5746,7 +5752,7 @@
},
"FavoriteStore0": {
"name": "FavoriteStore0",
- "value": 68719480094,
+ "value": 4294970654,
"names": {
"web": [
"FavoriteStore0"
@@ -5755,7 +5761,7 @@
},
"FavoriteStore1": {
"name": "FavoriteStore1",
- "value": 68719480095,
+ "value": 4294970655,
"names": {
"web": [
"FavoriteStore1"
@@ -5764,7 +5770,7 @@
},
"FavoriteStore2": {
"name": "FavoriteStore2",
- "value": 68719480096,
+ "value": 4294970656,
"names": {
"web": [
"FavoriteStore2"
@@ -5773,7 +5779,7 @@
},
"FavoriteStore3": {
"name": "FavoriteStore3",
- "value": 68719480097,
+ "value": 4294970657,
"names": {
"web": [
"FavoriteStore3"
@@ -5782,7 +5788,7 @@
},
"Guide": {
"name": "Guide",
- "value": 68719480098,
+ "value": 4294970658,
"names": {
"web": [
"Guide"
@@ -5799,7 +5805,7 @@
},
"GuideNextDay": {
"name": "GuideNextDay",
- "value": 68719480099,
+ "value": 4294970659,
"names": {
"web": [
"GuideNextDay"
@@ -5808,7 +5814,7 @@
},
"GuidePreviousDay": {
"name": "GuidePreviousDay",
- "value": 68719480100,
+ "value": 4294970660,
"names": {
"web": [
"GuidePreviousDay"
@@ -5817,7 +5823,7 @@
},
"Info": {
"name": "Info",
- "value": 68719480101,
+ "value": 4294970661,
"names": {
"web": [
"Info"
@@ -5831,13 +5837,13 @@
165
],
"fuchsia": [
- 4295753824
+ 77310197856
]
}
},
"InstantReplay": {
"name": "InstantReplay",
- "value": 68719480102,
+ "value": 4294970662,
"names": {
"web": [
"InstantReplay"
@@ -5846,7 +5852,7 @@
},
"Link": {
"name": "Link",
- "value": 68719480103,
+ "value": 4294970663,
"names": {
"web": [
"Link"
@@ -5855,7 +5861,7 @@
},
"ListProgram": {
"name": "ListProgram",
- "value": 68719480104,
+ "value": 4294970664,
"names": {
"web": [
"ListProgram"
@@ -5864,7 +5870,7 @@
},
"LiveContent": {
"name": "LiveContent",
- "value": 68719480105,
+ "value": 4294970665,
"names": {
"web": [
"LiveContent"
@@ -5873,7 +5879,7 @@
},
"Lock": {
"name": "Lock",
- "value": 68719480106,
+ "value": 4294970666,
"names": {
"web": [
"Lock"
@@ -5882,7 +5888,7 @@
},
"MediaApps": {
"name": "MediaApps",
- "value": 68719480107,
+ "value": 4294970667,
"names": {
"web": [
"MediaApps"
@@ -5891,7 +5897,7 @@
},
"MediaFastForward": {
"name": "MediaFastForward",
- "value": 68719480108,
+ "value": 4294970668,
"names": {
"web": [
"MediaFastForward"
@@ -5911,13 +5917,13 @@
90
],
"fuchsia": [
- 4295753907
+ 77310197939
]
}
},
"MediaLast": {
"name": "MediaLast",
- "value": 68719480109,
+ "value": 4294970669,
"names": {
"web": [
"MediaLast"
@@ -5931,13 +5937,13 @@
229
],
"fuchsia": [
- 4295753859
+ 77310197891
]
}
},
"MediaPause": {
"name": "MediaPause",
- "value": 68719480110,
+ "value": 4294970670,
"names": {
"web": [
"MediaPause"
@@ -5957,13 +5963,13 @@
127
],
"fuchsia": [
- 4295753905
+ 77310197937
]
}
},
"MediaPlay": {
"name": "MediaPlay",
- "value": 68719480111,
+ "value": 4294970671,
"names": {
"web": [
"MediaPlay"
@@ -5985,13 +5991,13 @@
126
],
"fuchsia": [
- 4295753904
+ 77310197936
]
}
},
"MediaRecord": {
"name": "MediaRecord",
- "value": 68719480112,
+ "value": 4294970672,
"names": {
"web": [
"MediaRecord"
@@ -6011,13 +6017,13 @@
130
],
"fuchsia": [
- 4295753906
+ 77310197938
]
}
},
"MediaRewind": {
"name": "MediaRewind",
- "value": 68719480113,
+ "value": 4294970673,
"names": {
"web": [
"MediaRewind"
@@ -6037,13 +6043,13 @@
89
],
"fuchsia": [
- 4295753908
+ 77310197940
]
}
},
"MediaSkip": {
"name": "MediaSkip",
- "value": 68719480114,
+ "value": 4294970674,
"names": {
"web": [
"MediaSkip"
@@ -6052,7 +6058,7 @@
},
"NextFavoriteChannel": {
"name": "NextFavoriteChannel",
- "value": 68719480115,
+ "value": 4294970675,
"names": {
"web": [
"NextFavoriteChannel"
@@ -6061,7 +6067,7 @@
},
"NextUserProfile": {
"name": "NextUserProfile",
- "value": 68719480116,
+ "value": 4294970676,
"names": {
"web": [
"NextUserProfile"
@@ -6070,7 +6076,7 @@
},
"OnDemand": {
"name": "OnDemand",
- "value": 68719480117,
+ "value": 4294970677,
"names": {
"web": [
"OnDemand"
@@ -6079,7 +6085,7 @@
},
"PInPDown": {
"name": "PInPDown",
- "value": 68719480118,
+ "value": 4294970678,
"names": {
"web": [
"PinPDown"
@@ -6088,7 +6094,7 @@
},
"PInPMove": {
"name": "PInPMove",
- "value": 68719480119,
+ "value": 4294970679,
"names": {
"web": [
"PinPMove"
@@ -6097,7 +6103,7 @@
},
"PInPToggle": {
"name": "PInPToggle",
- "value": 68719480120,
+ "value": 4294970680,
"names": {
"web": [
"PinPToggle"
@@ -6106,7 +6112,7 @@
},
"PInPUp": {
"name": "PInPUp",
- "value": 68719480121,
+ "value": 4294970681,
"names": {
"web": [
"PinPUp"
@@ -6115,7 +6121,7 @@
},
"PlaySpeedDown": {
"name": "PlaySpeedDown",
- "value": 68719480122,
+ "value": 4294970682,
"names": {
"web": [
"PlaySpeedDown"
@@ -6124,7 +6130,7 @@
},
"PlaySpeedReset": {
"name": "PlaySpeedReset",
- "value": 68719480123,
+ "value": 4294970683,
"names": {
"web": [
"PlaySpeedReset"
@@ -6133,7 +6139,7 @@
},
"PlaySpeedUp": {
"name": "PlaySpeedUp",
- "value": 68719480124,
+ "value": 4294970684,
"names": {
"web": [
"PlaySpeedUp"
@@ -6142,7 +6148,7 @@
},
"RandomToggle": {
"name": "RandomToggle",
- "value": 68719480125,
+ "value": 4294970685,
"names": {
"web": [
"RandomToggle"
@@ -6151,7 +6157,7 @@
},
"RcLowBattery": {
"name": "RcLowBattery",
- "value": 68719480126,
+ "value": 4294970686,
"names": {
"web": [
"RcLowBattery"
@@ -6160,7 +6166,7 @@
},
"RecordSpeedNext": {
"name": "RecordSpeedNext",
- "value": 68719480127,
+ "value": 4294970687,
"names": {
"web": [
"RecordSpeedNext"
@@ -6169,7 +6175,7 @@
},
"RfBypass": {
"name": "RfBypass",
- "value": 68719480128,
+ "value": 4294970688,
"names": {
"web": [
"RfBypass"
@@ -6178,7 +6184,7 @@
},
"ScanChannelsToggle": {
"name": "ScanChannelsToggle",
- "value": 68719480129,
+ "value": 4294970689,
"names": {
"web": [
"ScanChannelsToggle"
@@ -6187,7 +6193,7 @@
},
"ScreenModeNext": {
"name": "ScreenModeNext",
- "value": 68719480130,
+ "value": 4294970690,
"names": {
"web": [
"ScreenModeNext"
@@ -6196,7 +6202,7 @@
},
"Settings": {
"name": "Settings",
- "value": 68719480131,
+ "value": 4294970691,
"names": {
"web": [
"Settings"
@@ -6213,7 +6219,7 @@
},
"SplitScreenToggle": {
"name": "SplitScreenToggle",
- "value": 68719480132,
+ "value": 4294970692,
"names": {
"web": [
"SplitScreenToggle"
@@ -6222,7 +6228,7 @@
},
"STBInput": {
"name": "STBInput",
- "value": 68719480133,
+ "value": 4294970693,
"names": {
"web": [
"STBInput"
@@ -6239,7 +6245,7 @@
},
"STBPower": {
"name": "STBPower",
- "value": 68719480134,
+ "value": 4294970694,
"names": {
"web": [
"STBPower"
@@ -6256,7 +6262,7 @@
},
"Subtitle": {
"name": "Subtitle",
- "value": 68719480135,
+ "value": 4294970695,
"names": {
"web": [
"Subtitle"
@@ -6265,7 +6271,7 @@
},
"Teletext": {
"name": "Teletext",
- "value": 68719480136,
+ "value": 4294970696,
"names": {
"web": [
"Teletext"
@@ -6282,7 +6288,7 @@
},
"TV": {
"name": "TV",
- "value": 68719480137,
+ "value": 4294970697,
"names": {
"web": [
"TV"
@@ -6299,7 +6305,7 @@
},
"TVInput": {
"name": "TVInput",
- "value": 68719480138,
+ "value": 4294970698,
"names": {
"web": [
"TVInput"
@@ -6316,7 +6322,7 @@
},
"TVPower": {
"name": "TVPower",
- "value": 68719480139,
+ "value": 4294970699,
"names": {
"web": [
"TVPower"
@@ -6333,7 +6339,7 @@
},
"VideoModeNext": {
"name": "VideoModeNext",
- "value": 68719480140,
+ "value": 4294970700,
"names": {
"web": [
"VideoModeNext"
@@ -6342,7 +6348,7 @@
},
"Wink": {
"name": "Wink",
- "value": 68719480141,
+ "value": 4294970701,
"names": {
"web": [
"Wink"
@@ -6351,7 +6357,7 @@
},
"ZoomToggle": {
"name": "ZoomToggle",
- "value": 68719480142,
+ "value": 4294970702,
"names": {
"web": [
"ZoomToggle"
@@ -6365,13 +6371,13 @@
255
],
"fuchsia": [
- 4295754290
+ 77310198322
]
}
},
"DVR": {
"name": "DVR",
- "value": 68719480143,
+ "value": 4294970703,
"names": {
"web": [
"DVR"
@@ -6388,7 +6394,7 @@
},
"MediaAudioTrack": {
"name": "MediaAudioTrack",
- "value": 68719480144,
+ "value": 4294970704,
"names": {
"web": [
"MediaAudioTrack"
@@ -6405,7 +6411,7 @@
},
"MediaSkipBackward": {
"name": "MediaSkipBackward",
- "value": 68719480145,
+ "value": 4294970705,
"names": {
"web": [
"MediaSkipBackward"
@@ -6422,7 +6428,7 @@
},
"MediaSkipForward": {
"name": "MediaSkipForward",
- "value": 68719480146,
+ "value": 4294970706,
"names": {
"web": [
"MediaSkipForward"
@@ -6439,7 +6445,7 @@
},
"MediaStepBackward": {
"name": "MediaStepBackward",
- "value": 68719480147,
+ "value": 4294970707,
"names": {
"web": [
"MediaStepBackward"
@@ -6456,7 +6462,7 @@
},
"MediaStepForward": {
"name": "MediaStepForward",
- "value": 68719480148,
+ "value": 4294970708,
"names": {
"web": [
"MediaStepForward"
@@ -6473,7 +6479,7 @@
},
"MediaTopMenu": {
"name": "MediaTopMenu",
- "value": 68719480149,
+ "value": 4294970709,
"names": {
"web": [
"MediaTopMenu"
@@ -6490,7 +6496,7 @@
},
"NavigateIn": {
"name": "NavigateIn",
- "value": 68719480150,
+ "value": 4294970710,
"names": {
"web": [
"NavigateIn"
@@ -6507,7 +6513,7 @@
},
"NavigateNext": {
"name": "NavigateNext",
- "value": 68719480151,
+ "value": 4294970711,
"names": {
"web": [
"NavigateNext"
@@ -6524,7 +6530,7 @@
},
"NavigateOut": {
"name": "NavigateOut",
- "value": 68719480152,
+ "value": 4294970712,
"names": {
"web": [
"NavigateOut"
@@ -6541,7 +6547,7 @@
},
"NavigatePrevious": {
"name": "NavigatePrevious",
- "value": 68719480153,
+ "value": 4294970713,
"names": {
"web": [
"NavigatePrevious"
@@ -6558,7 +6564,7 @@
},
"Pairing": {
"name": "Pairing",
- "value": 68719480154,
+ "value": 4294970714,
"names": {
"web": [
"Pairing"
@@ -6575,7 +6581,7 @@
},
"MediaClose": {
"name": "MediaClose",
- "value": 68719480155,
+ "value": 4294970715,
"names": {
"web": [
"MediaClose"
@@ -6584,7 +6590,7 @@
},
"AudioBassBoostToggle": {
"name": "AudioBassBoostToggle",
- "value": 68719480322,
+ "value": 4294970882,
"names": {
"web": [
"AudioBassBoostToggle"
@@ -6593,7 +6599,7 @@
},
"AudioTrebleDown": {
"name": "AudioTrebleDown",
- "value": 68719480324,
+ "value": 4294970884,
"names": {
"web": [
"AudioTrebleDown"
@@ -6602,7 +6608,7 @@
},
"AudioTrebleUp": {
"name": "AudioTrebleUp",
- "value": 68719480325,
+ "value": 4294970885,
"names": {
"web": [
"AudioTrebleUp"
@@ -6611,7 +6617,7 @@
},
"MicrophoneToggle": {
"name": "MicrophoneToggle",
- "value": 68719480326,
+ "value": 4294970886,
"names": {
"web": [
"MicrophoneToggle"
@@ -6620,7 +6626,7 @@
},
"MicrophoneVolumeDown": {
"name": "MicrophoneVolumeDown",
- "value": 68719480327,
+ "value": 4294970887,
"names": {
"web": [
"MicrophoneVolumeDown"
@@ -6629,7 +6635,7 @@
},
"MicrophoneVolumeUp": {
"name": "MicrophoneVolumeUp",
- "value": 68719480328,
+ "value": 4294970888,
"names": {
"web": [
"MicrophoneVolumeUp"
@@ -6638,7 +6644,7 @@
},
"MicrophoneVolumeMute": {
"name": "MicrophoneVolumeMute",
- "value": 68719480329,
+ "value": 4294970889,
"names": {
"web": [
"MicrophoneVolumeMute"
@@ -6655,7 +6661,7 @@
},
"SpeechCorrectionList": {
"name": "SpeechCorrectionList",
- "value": 68719480577,
+ "value": 4294971137,
"names": {
"web": [
"SpeechCorrectionList"
@@ -6664,7 +6670,7 @@
},
"SpeechInputToggle": {
"name": "SpeechInputToggle",
- "value": 68719480578,
+ "value": 4294971138,
"names": {
"web": [
"SpeechInputToggle"
@@ -6672,13 +6678,13 @@
},
"values": {
"fuchsia": [
- 4295753935
+ 77310197967
]
}
},
"AppSwitch": {
"name": "AppSwitch",
- "value": 68719480833,
+ "value": 4294971393,
"names": {
"web": [
"AppSwitch"
@@ -6695,7 +6701,7 @@
},
"Call": {
"name": "Call",
- "value": 68719480834,
+ "value": 4294971394,
"names": {
"web": [
"Call"
@@ -6712,7 +6718,7 @@
},
"CameraFocus": {
"name": "CameraFocus",
- "value": 68719480835,
+ "value": 4294971395,
"names": {
"web": [
"CameraFocus"
@@ -6729,7 +6735,7 @@
},
"EndCall": {
"name": "EndCall",
- "value": 68719480836,
+ "value": 4294971396,
"names": {
"web": [
"EndCall"
@@ -6746,7 +6752,7 @@
},
"GoBack": {
"name": "GoBack",
- "value": 68719480837,
+ "value": 4294971397,
"names": {
"web": [
"GoBack"
@@ -6763,7 +6769,7 @@
},
"GoHome": {
"name": "GoHome",
- "value": 68719480838,
+ "value": 4294971398,
"names": {
"web": [
"GoHome"
@@ -6780,7 +6786,7 @@
},
"HeadsetHook": {
"name": "HeadsetHook",
- "value": 68719480839,
+ "value": 4294971399,
"names": {
"web": [
"HeadsetHook"
@@ -6797,7 +6803,7 @@
},
"LastNumberRedial": {
"name": "LastNumberRedial",
- "value": 68719480840,
+ "value": 4294971400,
"names": {
"web": [
"LastNumberRedial"
@@ -6806,7 +6812,7 @@
},
"Notification": {
"name": "Notification",
- "value": 68719480841,
+ "value": 4294971401,
"names": {
"web": [
"Notification"
@@ -6823,7 +6829,7 @@
},
"MannerMode": {
"name": "MannerMode",
- "value": 68719480842,
+ "value": 4294971402,
"names": {
"web": [
"MannerMode"
@@ -6840,7 +6846,7 @@
},
"VoiceDial": {
"name": "VoiceDial",
- "value": 68719480843,
+ "value": 4294971403,
"names": {
"web": [
"VoiceDial"
@@ -6849,7 +6855,7 @@
},
"TV3DMode": {
"name": "TV3DMode",
- "value": 68719481089,
+ "value": 4294971649,
"names": {
"web": [
"TV3DMode"
@@ -6866,7 +6872,7 @@
},
"TVAntennaCable": {
"name": "TVAntennaCable",
- "value": 68719481090,
+ "value": 4294971650,
"names": {
"web": [
"TVAntennaCable"
@@ -6883,7 +6889,7 @@
},
"TVAudioDescription": {
"name": "TVAudioDescription",
- "value": 68719481091,
+ "value": 4294971651,
"names": {
"web": [
"TVAudioDescription"
@@ -6900,7 +6906,7 @@
},
"TVAudioDescriptionMixDown": {
"name": "TVAudioDescriptionMixDown",
- "value": 68719481092,
+ "value": 4294971652,
"names": {
"web": [
"TVAudioDescriptionMixDown"
@@ -6917,7 +6923,7 @@
},
"TVAudioDescriptionMixUp": {
"name": "TVAudioDescriptionMixUp",
- "value": 68719481093,
+ "value": 4294971653,
"names": {
"web": [
"TVAudioDescriptionMixUp"
@@ -6934,7 +6940,7 @@
},
"TVContentsMenu": {
"name": "TVContentsMenu",
- "value": 68719481094,
+ "value": 4294971654,
"names": {
"web": [
"TVContentsMenu"
@@ -6951,7 +6957,7 @@
},
"TVDataService": {
"name": "TVDataService",
- "value": 68719481095,
+ "value": 4294971655,
"names": {
"web": [
"TVDataService"
@@ -6968,7 +6974,7 @@
},
"TVInputComponent1": {
"name": "TVInputComponent1",
- "value": 68719481096,
+ "value": 4294971656,
"names": {
"web": [
"TVInputComponent1"
@@ -6985,7 +6991,7 @@
},
"TVInputComponent2": {
"name": "TVInputComponent2",
- "value": 68719481097,
+ "value": 4294971657,
"names": {
"web": [
"TVInputComponent2"
@@ -7002,7 +7008,7 @@
},
"TVInputComposite1": {
"name": "TVInputComposite1",
- "value": 68719481098,
+ "value": 4294971658,
"names": {
"web": [
"TVInputComposite1"
@@ -7019,7 +7025,7 @@
},
"TVInputComposite2": {
"name": "TVInputComposite2",
- "value": 68719481099,
+ "value": 4294971659,
"names": {
"web": [
"TVInputComposite2"
@@ -7036,7 +7042,7 @@
},
"TVInputHDMI1": {
"name": "TVInputHDMI1",
- "value": 68719481100,
+ "value": 4294971660,
"names": {
"web": [
"TVInputHDMI1"
@@ -7053,7 +7059,7 @@
},
"TVInputHDMI2": {
"name": "TVInputHDMI2",
- "value": 68719481101,
+ "value": 4294971661,
"names": {
"web": [
"TVInputHDMI2"
@@ -7070,7 +7076,7 @@
},
"TVInputHDMI3": {
"name": "TVInputHDMI3",
- "value": 68719481102,
+ "value": 4294971662,
"names": {
"web": [
"TVInputHDMI3"
@@ -7087,7 +7093,7 @@
},
"TVInputHDMI4": {
"name": "TVInputHDMI4",
- "value": 68719481103,
+ "value": 4294971663,
"names": {
"web": [
"TVInputHDMI4"
@@ -7104,7 +7110,7 @@
},
"TVInputVGA1": {
"name": "TVInputVGA1",
- "value": 68719481104,
+ "value": 4294971664,
"names": {
"web": [
"TVInputVGA1"
@@ -7121,7 +7127,7 @@
},
"TVMediaContext": {
"name": "TVMediaContext",
- "value": 68719481105,
+ "value": 4294971665,
"names": {
"web": [
"TVMediaContext"
@@ -7130,7 +7136,7 @@
},
"TVNetwork": {
"name": "TVNetwork",
- "value": 68719481106,
+ "value": 4294971666,
"names": {
"web": [
"TVNetwork"
@@ -7147,7 +7153,7 @@
},
"TVNumberEntry": {
"name": "TVNumberEntry",
- "value": 68719481107,
+ "value": 4294971667,
"names": {
"web": [
"TVNumberEntry"
@@ -7164,7 +7170,7 @@
},
"TVRadioService": {
"name": "TVRadioService",
- "value": 68719481108,
+ "value": 4294971668,
"names": {
"web": [
"TVRadioService"
@@ -7181,7 +7187,7 @@
},
"TVSatellite": {
"name": "TVSatellite",
- "value": 68719481109,
+ "value": 4294971669,
"names": {
"web": [
"TVSatellite"
@@ -7198,7 +7204,7 @@
},
"TVSatelliteBS": {
"name": "TVSatelliteBS",
- "value": 68719481110,
+ "value": 4294971670,
"names": {
"web": [
"TVSatelliteBS"
@@ -7215,7 +7221,7 @@
},
"TVSatelliteCS": {
"name": "TVSatelliteCS",
- "value": 68719481111,
+ "value": 4294971671,
"names": {
"web": [
"TVSatelliteCS"
@@ -7232,7 +7238,7 @@
},
"TVSatelliteToggle": {
"name": "TVSatelliteToggle",
- "value": 68719481112,
+ "value": 4294971672,
"names": {
"web": [
"TVSatelliteToggle"
@@ -7249,7 +7255,7 @@
},
"TVTerrestrialAnalog": {
"name": "TVTerrestrialAnalog",
- "value": 68719481113,
+ "value": 4294971673,
"names": {
"web": [
"TVTerrestrialAnalog"
@@ -7266,7 +7272,7 @@
},
"TVTerrestrialDigital": {
"name": "TVTerrestrialDigital",
- "value": 68719481114,
+ "value": 4294971674,
"names": {
"web": [
"TVTerrestrialDigital"
@@ -7283,7 +7289,7 @@
},
"TVTimer": {
"name": "TVTimer",
- "value": 68719481115,
+ "value": 4294971675,
"names": {
"web": [
"TVTimer"
@@ -7300,7 +7306,7 @@
},
"Key11": {
"name": "Key11",
- "value": 68719481345,
+ "value": 4294971905,
"names": {
"web": [
"Key11"
@@ -7309,690 +7315,16 @@
},
"Key12": {
"name": "Key12",
- "value": 68719481346,
+ "value": 4294971906,
"names": {
"web": [
"Key12"
]
}
},
- "GameButton1": {
- "name": "GameButton1",
- "value": 68719869697,
- "names": {
- "web": [
- "GameButton1"
- ],
- "android": [
- "BUTTON_1"
- ]
- },
- "values": {
- "android": [
- 188
- ],
- "fuchsia": [
- 4295360257
- ]
- }
- },
- "GameButton2": {
- "name": "GameButton2",
- "value": 68719869698,
- "names": {
- "web": [
- "GameButton2"
- ],
- "android": [
- "BUTTON_2"
- ]
- },
- "values": {
- "android": [
- 189
- ],
- "fuchsia": [
- 4295360258
- ]
- }
- },
- "GameButton3": {
- "name": "GameButton3",
- "value": 68719869699,
- "names": {
- "web": [
- "GameButton3"
- ],
- "android": [
- "BUTTON_3"
- ]
- },
- "values": {
- "android": [
- 190
- ],
- "fuchsia": [
- 4295360259
- ]
- }
- },
- "GameButton4": {
- "name": "GameButton4",
- "value": 68719869700,
- "names": {
- "web": [
- "GameButton4"
- ],
- "android": [
- "BUTTON_4"
- ]
- },
- "values": {
- "android": [
- 191
- ],
- "fuchsia": [
- 4295360260
- ]
- }
- },
- "GameButton5": {
- "name": "GameButton5",
- "value": 68719869701,
- "names": {
- "web": [
- "GameButton5"
- ],
- "android": [
- "BUTTON_5"
- ]
- },
- "values": {
- "android": [
- 192
- ],
- "fuchsia": [
- 4295360261
- ]
- }
- },
- "GameButton6": {
- "name": "GameButton6",
- "value": 68719869702,
- "names": {
- "web": [
- "GameButton6"
- ],
- "android": [
- "BUTTON_6"
- ]
- },
- "values": {
- "android": [
- 193
- ],
- "fuchsia": [
- 4295360262
- ]
- }
- },
- "GameButton7": {
- "name": "GameButton7",
- "value": 68719869703,
- "names": {
- "web": [
- "GameButton7"
- ],
- "android": [
- "BUTTON_7"
- ]
- },
- "values": {
- "android": [
- 194
- ],
- "fuchsia": [
- 4295360263
- ]
- }
- },
- "GameButton8": {
- "name": "GameButton8",
- "value": 68719869704,
- "names": {
- "web": [
- "GameButton8"
- ],
- "windows": [
- "GAMEPAD_A"
- ],
- "android": [
- "BUTTON_8"
- ]
- },
- "values": {
- "windows": [
- 195
- ],
- "android": [
- 195
- ],
- "fuchsia": [
- 4295360264
- ]
- }
- },
- "GameButton9": {
- "name": "GameButton9",
- "value": 68719869705,
- "names": {
- "web": [
- "GameButton9"
- ],
- "windows": [
- "GAMEPAD_B"
- ],
- "android": [
- "BUTTON_9"
- ]
- },
- "values": {
- "windows": [
- 196
- ],
- "android": [
- 196
- ],
- "fuchsia": [
- 4295360265
- ]
- }
- },
- "GameButton10": {
- "name": "GameButton10",
- "value": 68719869706,
- "names": {
- "web": [
- "GameButton10"
- ],
- "windows": [
- "GAMEPAD_X"
- ],
- "android": [
- "BUTTON_10"
- ]
- },
- "values": {
- "windows": [
- 197
- ],
- "android": [
- 197
- ],
- "fuchsia": [
- 4295360266
- ]
- }
- },
- "GameButton11": {
- "name": "GameButton11",
- "value": 68719869707,
- "names": {
- "web": [
- "GameButton11"
- ],
- "windows": [
- "GAMEPAD_Y"
- ],
- "android": [
- "BUTTON_11"
- ]
- },
- "values": {
- "windows": [
- 198
- ],
- "android": [
- 198
- ],
- "fuchsia": [
- 4295360267
- ]
- }
- },
- "GameButton12": {
- "name": "GameButton12",
- "value": 68719869708,
- "names": {
- "web": [
- "GameButton12"
- ],
- "windows": [
- "GAMEPAD_RIGHT_SHOULDER"
- ],
- "android": [
- "BUTTON_12"
- ]
- },
- "values": {
- "windows": [
- 199
- ],
- "android": [
- 199
- ],
- "fuchsia": [
- 4295360268
- ]
- }
- },
- "GameButton13": {
- "name": "GameButton13",
- "value": 68719869709,
- "names": {
- "web": [
- "GameButton13"
- ],
- "windows": [
- "GAMEPAD_LEFT_SHOULDER"
- ],
- "android": [
- "BUTTON_13"
- ]
- },
- "values": {
- "windows": [
- 200
- ],
- "android": [
- 200
- ],
- "fuchsia": [
- 4295360269
- ]
- }
- },
- "GameButton14": {
- "name": "GameButton14",
- "value": 68719869710,
- "names": {
- "web": [
- "GameButton14"
- ],
- "windows": [
- "GAMEPAD_LEFT_TRIGGER"
- ],
- "android": [
- "BUTTON_14"
- ]
- },
- "values": {
- "windows": [
- 201
- ],
- "android": [
- 201
- ],
- "fuchsia": [
- 4295360270
- ]
- }
- },
- "GameButton15": {
- "name": "GameButton15",
- "value": 68719869711,
- "names": {
- "web": [
- "GameButton15"
- ],
- "windows": [
- "GAMEPAD_RIGHT_TRIGGER"
- ],
- "android": [
- "BUTTON_15"
- ]
- },
- "values": {
- "windows": [
- 202
- ],
- "android": [
- 202
- ],
- "fuchsia": [
- 4295360271
- ]
- }
- },
- "GameButton16": {
- "name": "GameButton16",
- "value": 68719869712,
- "names": {
- "web": [
- "GameButton16"
- ],
- "windows": [
- "GAMEPAD_DPAD_UP"
- ],
- "android": [
- "BUTTON_16"
- ]
- },
- "values": {
- "windows": [
- 203
- ],
- "android": [
- 203
- ],
- "fuchsia": [
- 4295360272
- ]
- }
- },
- "GameButtonA": {
- "name": "GameButtonA",
- "value": 68719869713,
- "names": {
- "web": [
- "GameButtonA"
- ],
- "android": [
- "BUTTON_A"
- ]
- },
- "values": {
- "android": [
- 96
- ],
- "fuchsia": [
- 4295360273
- ]
- }
- },
- "GameButtonB": {
- "name": "GameButtonB",
- "value": 68719869714,
- "names": {
- "web": [
- "GameButtonB"
- ],
- "android": [
- "BUTTON_B"
- ]
- },
- "values": {
- "android": [
- 97
- ],
- "fuchsia": [
- 4295360274
- ]
- }
- },
- "GameButtonC": {
- "name": "GameButtonC",
- "value": 68719869715,
- "names": {
- "web": [
- "GameButtonC"
- ],
- "android": [
- "BUTTON_C"
- ]
- },
- "values": {
- "android": [
- 98
- ],
- "fuchsia": [
- 4295360275
- ]
- }
- },
- "GameButtonLeft1": {
- "name": "GameButtonLeft1",
- "value": 68719869716,
- "names": {
- "web": [
- "GameButtonLeft1"
- ],
- "android": [
- "BUTTON_L1"
- ]
- },
- "values": {
- "android": [
- 102
- ],
- "fuchsia": [
- 4295360276
- ]
- }
- },
- "GameButtonLeft2": {
- "name": "GameButtonLeft2",
- "value": 68719869717,
- "names": {
- "web": [
- "GameButtonLeft2"
- ],
- "android": [
- "BUTTON_L2"
- ]
- },
- "values": {
- "android": [
- 104
- ],
- "fuchsia": [
- 4295360277
- ]
- }
- },
- "GameButtonMode": {
- "name": "GameButtonMode",
- "value": 68719869718,
- "names": {
- "web": [
- "GameButtonMode"
- ],
- "android": [
- "BUTTON_MODE"
- ]
- },
- "values": {
- "android": [
- 110
- ],
- "fuchsia": [
- 4295360278
- ]
- }
- },
- "GameButtonRight1": {
- "name": "GameButtonRight1",
- "value": 68719869719,
- "names": {
- "web": [
- "GameButtonRight1"
- ],
- "android": [
- "BUTTON_R1"
- ]
- },
- "values": {
- "android": [
- 103
- ],
- "fuchsia": [
- 4295360279
- ]
- }
- },
- "GameButtonRight2": {
- "name": "GameButtonRight2",
- "value": 68719869720,
- "names": {
- "web": [
- "GameButtonRight2"
- ],
- "android": [
- "BUTTON_R2"
- ]
- },
- "values": {
- "android": [
- 105
- ],
- "fuchsia": [
- 4295360280
- ]
- }
- },
- "GameButtonSelect": {
- "name": "GameButtonSelect",
- "value": 68719869721,
- "names": {
- "web": [
- "GameButtonSelect"
- ],
- "android": [
- "BUTTON_SELECT"
- ]
- },
- "values": {
- "android": [
- 109
- ],
- "fuchsia": [
- 4295360281
- ]
- }
- },
- "GameButtonStart": {
- "name": "GameButtonStart",
- "value": 68719869722,
- "names": {
- "web": [
- "GameButtonStart"
- ],
- "android": [
- "BUTTON_START"
- ]
- },
- "values": {
- "android": [
- 108
- ],
- "fuchsia": [
- 4295360282
- ]
- }
- },
- "GameButtonThumbLeft": {
- "name": "GameButtonThumbLeft",
- "value": 68719869723,
- "names": {
- "web": [
- "GameButtonThumbLeft"
- ],
- "android": [
- "BUTTON_THUMBL"
- ]
- },
- "values": {
- "android": [
- 106
- ],
- "fuchsia": [
- 4295360283
- ]
- }
- },
- "GameButtonThumbRight": {
- "name": "GameButtonThumbRight",
- "value": 68719869724,
- "names": {
- "web": [
- "GameButtonThumbRight"
- ],
- "android": [
- "BUTTON_THUMBR"
- ]
- },
- "values": {
- "android": [
- 107
- ],
- "fuchsia": [
- 4295360284
- ]
- }
- },
- "GameButtonX": {
- "name": "GameButtonX",
- "value": 68719869725,
- "names": {
- "web": [
- "GameButtonX"
- ],
- "android": [
- "BUTTON_X"
- ]
- },
- "values": {
- "android": [
- 99
- ],
- "fuchsia": [
- 4295360285
- ]
- }
- },
- "GameButtonY": {
- "name": "GameButtonY",
- "value": 68719869726,
- "names": {
- "web": [
- "GameButtonY"
- ],
- "android": [
- "BUTTON_Y"
- ]
- },
- "values": {
- "android": [
- 100
- ],
- "fuchsia": [
- 4295360286
- ]
- }
- },
- "GameButtonZ": {
- "name": "GameButtonZ",
- "value": 68719869727,
- "names": {
- "web": [
- "GameButtonZ"
- ],
- "android": [
- "BUTTON_Z"
- ]
- },
- "values": {
- "android": [
- 101
- ],
- "fuchsia": [
- 4295360287
- ]
- }
- },
"Suspend": {
"name": "Suspend",
- "value": 73014444052,
+ "value": 8589934592,
"names": {
"web": [
"Suspend"
@@ -8006,13 +7338,13 @@
269025191
],
"fuchsia": [
- 4294967316
+ 77309411348
]
}
},
"Resume": {
"name": "Resume",
- "value": 73014444053,
+ "value": 8589934593,
"names": {
"web": [
"Resume"
@@ -8020,13 +7352,13 @@
},
"values": {
"fuchsia": [
- 4294967317
+ 77309411349
]
}
},
"Sleep": {
"name": "Sleep",
- "value": 73014509698,
+ "value": 8589934594,
"names": {
"web": [
"Sleep"
@@ -8052,13 +7384,145 @@
223
],
"fuchsia": [
- 4295032962
+ 77309476994
+ ]
+ }
+ },
+ "Abort": {
+ "name": "Abort",
+ "value": 8589934595,
+ "names": {
+ "web": [
+ "Abort"
+ ]
+ },
+ "values": {
+ "fuchsia": [
+ 77309870235
+ ]
+ }
+ },
+ "Lang1": {
+ "name": "Lang1",
+ "value": 8589934608,
+ "names": {
+ "web": [
+ "Lang1"
+ ],
+ "macos": [
+ "Lang1"
+ ],
+ "ios": [
+ "Lang1"
+ ],
+ "windows": [
+ "KANA, HANGEUL, HANGUL"
+ ]
+ },
+ "values": {
+ "macos": [
+ 104
+ ],
+ "ios": [
+ 144
+ ],
+ "windows": [
+ 21
+ ],
+ "fuchsia": [
+ 77309870224
+ ]
+ }
+ },
+ "Lang2": {
+ "name": "Lang2",
+ "value": 8589934609,
+ "names": {
+ "web": [
+ "Lang2"
+ ],
+ "macos": [
+ "Lang2"
+ ],
+ "ios": [
+ "Lang2"
+ ]
+ },
+ "values": {
+ "macos": [
+ 102
+ ],
+ "ios": [
+ 145
+ ],
+ "fuchsia": [
+ 77309870225
+ ]
+ }
+ },
+ "Lang3": {
+ "name": "Lang3",
+ "value": 8589934610,
+ "names": {
+ "web": [
+ "Lang3"
+ ],
+ "ios": [
+ "Lang3"
+ ]
+ },
+ "values": {
+ "ios": [
+ 146
+ ],
+ "fuchsia": [
+ 77309870226
+ ]
+ }
+ },
+ "Lang4": {
+ "name": "Lang4",
+ "value": 8589934611,
+ "names": {
+ "web": [
+ "Lang4"
+ ],
+ "ios": [
+ "Lang4"
+ ]
+ },
+ "values": {
+ "ios": [
+ 147
+ ],
+ "fuchsia": [
+ 77309870227
+ ]
+ }
+ },
+ "Lang5": {
+ "name": "Lang5",
+ "value": 8589934612,
+ "names": {
+ "web": [
+ "Lang5"
+ ],
+ "ios": [
+ "Lang5"
+ ]
+ },
+ "values": {
+ "ios": [
+ 148
+ ],
+ "fuchsia": [
+ 77309870228
]
}
},
"IntlBackslash": {
"name": "IntlBackslash",
- "value": 73014902884,
+ "value": 8589934624,
"names": {
"web": [
"IntlBackslash"
@@ -8066,13 +7530,13 @@
},
"values": {
"fuchsia": [
- 4295426148
+ 77309870180
]
}
},
"IntlRo": {
"name": "IntlRo",
- "value": 73014902919,
+ "value": 8589934625,
"names": {
"web": [
"IntlRo"
@@ -8098,13 +7562,13 @@
217
],
"fuchsia": [
- 4295426183
+ 77309870215
]
}
},
"IntlYen": {
"name": "IntlYen",
- "value": 73014902921,
+ "value": 8589934626,
"names": {
"web": [
"IntlYen"
@@ -8136,189 +7600,13 @@
216
],
"fuchsia": [
- 4295426185
- ]
- }
- },
- "Lang1": {
- "name": "Lang1",
- "value": 73014902928,
- "names": {
- "web": [
- "Lang1"
- ],
- "macos": [
- "Lang1"
- ],
- "ios": [
- "Lang1"
- ],
- "windows": [
- "KANA, HANGEUL, HANGUL"
- ]
- },
- "values": {
- "macos": [
- 104
- ],
- "ios": [
- 144
- ],
- "windows": [
- 21
- ],
- "fuchsia": [
- 4295426192
- ]
- }
- },
- "Lang2": {
- "name": "Lang2",
- "value": 73014902929,
- "names": {
- "web": [
- "Lang2"
- ],
- "macos": [
- "Lang2"
- ],
- "ios": [
- "Lang2"
- ]
- },
- "values": {
- "macos": [
- 102
- ],
- "ios": [
- 145
- ],
- "fuchsia": [
- 4295426193
- ]
- }
- },
- "Lang3": {
- "name": "Lang3",
- "value": 73014902930,
- "names": {
- "web": [
- "Lang3"
- ],
- "ios": [
- "Lang3"
- ]
- },
- "values": {
- "ios": [
- 146
- ],
- "fuchsia": [
- 4295426194
- ]
- }
- },
- "Lang4": {
- "name": "Lang4",
- "value": 73014902931,
- "names": {
- "web": [
- "Lang4"
- ],
- "ios": [
- "Lang4"
- ]
- },
- "values": {
- "ios": [
- 147
- ],
- "fuchsia": [
- 4295426195
- ]
- }
- },
- "Lang5": {
- "name": "Lang5",
- "value": 73014902932,
- "names": {
- "web": [
- "Lang5"
- ],
- "ios": [
- "Lang5"
- ]
- },
- "values": {
- "ios": [
- 148
- ],
- "fuchsia": [
- 4295426196
- ]
- }
- },
- "Abort": {
- "name": "Abort",
- "value": 73014902939,
- "names": {
- "web": [
- "Abort"
- ]
- },
- "values": {
- "fuchsia": [
- 4295426203
- ]
- }
- },
- "AltLeft": {
- "name": "AltLeft",
- "value": 3298534883586,
- "names": {
- "web": [
- "AltLeft"
- ],
- "macos": [
- "AltLeft"
- ],
- "ios": [
- "AltLeft"
- ],
- "gtk": [
- "Alt_L"
- ],
- "windows": [
- "LMENU"
- ],
- "android": [
- "ALT_LEFT"
- ]
- },
- "values": {
- "macos": [
- 58
- ],
- "ios": [
- 226
- ],
- "gtk": [
- 65513
- ],
- "windows": [
- 164
- ],
- "android": [
- 57
- ],
- "fuchsia": [
- 4295426274
+ 77309870217
]
}
},
"ControlLeft": {
"name": "ControlLeft",
- "value": 3298534883589,
+ "value": 8589934848,
"names": {
"web": [
"ControlLeft"
@@ -8358,57 +7646,57 @@
113
],
"fuchsia": [
- 4295426272
+ 77309870304
]
}
},
- "MetaLeft": {
- "name": "MetaLeft",
- "value": 3298534883593,
+ "ControlRight": {
+ "name": "ControlRight",
+ "value": 8589934849,
"names": {
"web": [
- "MetaLeft"
+ "ControlRight"
],
"macos": [
- "MetaLeft"
+ "ControlRight"
],
"ios": [
- "MetaLeft"
+ "ControlRight"
],
"gtk": [
- "Meta_L"
+ "Control_R"
],
"windows": [
- "LWIN"
+ "RCONTROL"
],
"android": [
- "META_LEFT"
+ "CTRL_RIGHT"
]
},
"values": {
"macos": [
- 55
+ 62
],
"ios": [
- 227
+ 228
],
"gtk": [
- 65511
+ 65508
],
"windows": [
- 91
+ 163
],
"android": [
- 117
+ 114
],
"fuchsia": [
- 4295426275
+ 77309870308
]
}
},
"ShiftLeft": {
"name": "ShiftLeft",
- "value": 3298534883597,
+ "value": 8589934850,
"names": {
"web": [
"ShiftLeft"
@@ -8448,13 +7736,101 @@
59
],
"fuchsia": [
- 4295426273
+ 77309870305
+ ]
+ }
+ },
+ "ShiftRight": {
+ "name": "ShiftRight",
+ "value": 8589934851,
+ "names": {
+ "web": [
+ "ShiftRight"
+ ],
+ "macos": [
+ "ShiftRight"
+ ],
+ "ios": [
+ "ShiftRight"
+ ],
+ "gtk": [
+ "Shift_R"
+ ],
+ "windows": [
+ "RSHIFT"
+ ],
+ "android": [
+ "SHIFT_RIGHT"
+ ]
+ },
+ "values": {
+ "macos": [
+ 60
+ ],
+ "ios": [
+ 229
+ ],
+ "gtk": [
+ 65506
+ ],
+ "windows": [
+ 161
+ ],
+ "android": [
+ 60
+ ],
+ "fuchsia": [
+ 77309870309
+ ]
+ }
+ },
+ "AltLeft": {
+ "name": "AltLeft",
+ "value": 8589934852,
+ "names": {
+ "web": [
+ "AltLeft"
+ ],
+ "macos": [
+ "AltLeft"
+ ],
+ "ios": [
+ "AltLeft"
+ ],
+ "gtk": [
+ "Alt_L"
+ ],
+ "windows": [
+ "LMENU"
+ ],
+ "android": [
+ "ALT_LEFT"
+ ]
+ },
+ "values": {
+ "macos": [
+ 58
+ ],
+ "ios": [
+ 226
+ ],
+ "gtk": [
+ 65513
+ ],
+ "windows": [
+ 164
+ ],
+ "android": [
+ 57
+ ],
+ "fuchsia": [
+ 77309870306
]
}
},
"AltRight": {
"name": "AltRight",
- "value": 4398046511362,
+ "value": 8589934853,
"names": {
"web": [
"AltRight"
@@ -8494,57 +7870,57 @@
58
],
"fuchsia": [
- 4295426278
+ 77309870310
]
}
},
- "ControlRight": {
- "name": "ControlRight",
- "value": 4398046511365,
+ "MetaLeft": {
+ "name": "MetaLeft",
+ "value": 8589934854,
"names": {
"web": [
- "ControlRight"
+ "MetaLeft"
],
"macos": [
- "ControlRight"
+ "MetaLeft"
],
"ios": [
- "ControlRight"
+ "MetaLeft"
],
"gtk": [
- "Control_R"
+ "Meta_L"
],
"windows": [
- "RCONTROL"
+ "LWIN"
],
"android": [
- "CTRL_RIGHT"
+ "META_LEFT"
]
},
"values": {
"macos": [
- 62
+ 55
],
"ios": [
- 228
+ 227
],
"gtk": [
- 65508
+ 65511
],
"windows": [
- 163
+ 91
],
"android": [
- 114
+ 117
],
"fuchsia": [
- 4295426276
+ 77309870307
]
}
},
"MetaRight": {
"name": "MetaRight",
- "value": 4398046511369,
+ "value": 8589934855,
"names": {
"web": [
"MetaRight"
@@ -8582,57 +7958,49 @@
118
],
"fuchsia": [
- 4295426279
+ 77309870311
]
}
},
- "ShiftRight": {
- "name": "ShiftRight",
- "value": 4398046511373,
+ "Control": {
+ "name": "Control",
+ "value": 8589935088,
"names": {
"web": [
- "ShiftRight"
- ],
- "macos": [
- "ShiftRight"
- ],
- "ios": [
- "ShiftRight"
- ],
- "gtk": [
- "Shift_R"
- ],
- "windows": [
- "RSHIFT"
- ],
- "android": [
- "SHIFT_RIGHT"
+ "Control"
]
- },
- "values": {
- "macos": [
- 60
- ],
- "ios": [
- 229
- ],
- "gtk": [
- 65506
- ],
- "windows": [
- 161
- ],
- "android": [
- 60
- ],
- "fuchsia": [
- 4295426277
+ }
+ },
+ "Shift": {
+ "name": "Shift",
+ "value": 8589935090,
+ "names": {
+ "web": [
+ "Shift"
+ ]
+ }
+ },
+ "Alt": {
+ "name": "Alt",
+ "value": 8589935092,
+ "names": {
+ "web": [
+ "Alt"
+ ]
+ }
+ },
+ "Meta": {
+ "name": "Meta",
+ "value": 8589935094,
+ "names": {
+ "web": [
+ "Meta"
]
}
},
"NumpadEnter": {
"name": "NumpadEnter",
- "value": 5497558138893,
+ "value": 8589935117,
"names": {
"web": [
"NumpadEnter"
@@ -8664,13 +8032,13 @@
160
],
"fuchsia": [
- 4295426136
+ 77309870168
]
}
},
"NumpadParenLeft": {
"name": "NumpadParenLeft",
- "value": 5497558138920,
+ "value": 8589935144,
"names": {
"web": [
"NumpadParenLeft"
@@ -8684,13 +8052,13 @@
162
],
"fuchsia": [
- 4295426230
+ 77309870262
]
}
},
"NumpadParenRight": {
"name": "NumpadParenRight",
- "value": 5497558138921,
+ "value": 8589935145,
"names": {
"web": [
"NumpadParenRight"
@@ -8704,13 +8072,13 @@
163
],
"fuchsia": [
- 4295426231
+ 77309870263
]
}
},
"NumpadMultiply": {
"name": "NumpadMultiply",
- "value": 5497558138922,
+ "value": 8589935146,
"names": {
"web": [
"NumpadMultiply"
@@ -8748,13 +8116,13 @@
155
],
"fuchsia": [
- 4295426133
+ 77309870165
]
}
},
"NumpadAdd": {
"name": "NumpadAdd",
- "value": 5497558138923,
+ "value": 8589935147,
"names": {
"web": [
"NumpadAdd"
@@ -8792,13 +8160,13 @@
157
],
"fuchsia": [
- 4295426135
+ 77309870167
]
}
},
"NumpadComma": {
"name": "NumpadComma",
- "value": 5497558138924,
+ "value": 8589935148,
"names": {
"web": [
"NumpadComma"
@@ -8809,6 +8177,9 @@
"ios": [
"NumpadComma"
],
+ "windows": [
+ "SEPARATOR"
+ ],
"android": [
"NUMPAD_COMMA"
]
@@ -8820,17 +8191,20 @@
"ios": [
133
],
+ "windows": [
+ 108
+ ],
"android": [
159
],
"fuchsia": [
- 4295426181
+ 77309870213
]
}
},
"NumpadSubtract": {
"name": "NumpadSubtract",
- "value": 5497558138925,
+ "value": 8589935149,
"names": {
"web": [
"NumpadSubtract"
@@ -8868,13 +8242,13 @@
156
],
"fuchsia": [
- 4295426134
+ 77309870166
]
}
},
"NumpadDecimal": {
"name": "NumpadDecimal",
- "value": 5497558138926,
+ "value": 8589935150,
"names": {
"web": [
"NumpadDecimal"
@@ -8912,13 +8286,13 @@
158
],
"fuchsia": [
- 4295426147
+ 77309870179
]
}
},
"NumpadDivide": {
"name": "NumpadDivide",
- "value": 5497558138927,
+ "value": 8589935151,
"names": {
"web": [
"NumpadDivide"
@@ -8956,13 +8330,13 @@
154
],
"fuchsia": [
- 4295426132
+ 77309870164
]
}
},
"Numpad0": {
"name": "Numpad0",
- "value": 5497558138928,
+ "value": 8589935152,
"names": {
"web": [
"Numpad0"
@@ -9002,13 +8376,13 @@
144
],
"fuchsia": [
- 4295426146
+ 77309870178
]
}
},
"Numpad1": {
"name": "Numpad1",
- "value": 5497558138929,
+ "value": 8589935153,
"names": {
"web": [
"Numpad1"
@@ -9048,13 +8422,13 @@
145
],
"fuchsia": [
- 4295426137
+ 77309870169
]
}
},
"Numpad2": {
"name": "Numpad2",
- "value": 5497558138930,
+ "value": 8589935154,
"names": {
"web": [
"Numpad2"
@@ -9094,13 +8468,13 @@
146
],
"fuchsia": [
- 4295426138
+ 77309870170
]
}
},
"Numpad3": {
"name": "Numpad3",
- "value": 5497558138931,
+ "value": 8589935155,
"names": {
"web": [
"Numpad3"
@@ -9140,13 +8514,13 @@
147
],
"fuchsia": [
- 4295426139
+ 77309870171
]
}
},
"Numpad4": {
"name": "Numpad4",
- "value": 5497558138932,
+ "value": 8589935156,
"names": {
"web": [
"Numpad4"
@@ -9186,13 +8560,13 @@
148
],
"fuchsia": [
- 4295426140
+ 77309870172
]
}
},
"Numpad5": {
"name": "Numpad5",
- "value": 5497558138933,
+ "value": 8589935157,
"names": {
"web": [
"Numpad5"
@@ -9230,13 +8604,13 @@
149
],
"fuchsia": [
- 4295426141
+ 77309870173
]
}
},
"Numpad6": {
"name": "Numpad6",
- "value": 5497558138934,
+ "value": 8589935158,
"names": {
"web": [
"Numpad6"
@@ -9276,13 +8650,13 @@
150
],
"fuchsia": [
- 4295426142
+ 77309870174
]
}
},
"Numpad7": {
"name": "Numpad7",
- "value": 5497558138935,
+ "value": 8589935159,
"names": {
"web": [
"Numpad7"
@@ -9322,13 +8696,13 @@
151
],
"fuchsia": [
- 4295426143
+ 77309870175
]
}
},
"Numpad8": {
"name": "Numpad8",
- "value": 5497558138936,
+ "value": 8589935160,
"names": {
"web": [
"Numpad8"
@@ -9368,13 +8742,13 @@
152
],
"fuchsia": [
- 4295426144
+ 77309870176
]
}
},
"Numpad9": {
"name": "Numpad9",
- "value": 5497558138937,
+ "value": 8589935161,
"names": {
"web": [
"Numpad9"
@@ -9414,13 +8788,13 @@
153
],
"fuchsia": [
- 4295426145
+ 77309870177
]
}
},
"NumpadEqual": {
"name": "NumpadEqual",
- "value": 5497558138941,
+ "value": 8589935165,
"names": {
"web": [
"NumpadEqual"
@@ -9458,7 +8832,681 @@
161
],
"fuchsia": [
- 4295426151
+ 77309870183
+ ]
+ }
+ },
+ "GameButton1": {
+ "name": "GameButton1",
+ "value": 8589935361,
+ "names": {
+ "web": [
+ "GameButton1"
+ ],
+ "android": [
+ "BUTTON_1"
+ ]
+ },
+ "values": {
+ "android": [
+ 188
+ ],
+ "fuchsia": [
+ 77309804289
+ ]
+ }
+ },
+ "GameButton2": {
+ "name": "GameButton2",
+ "value": 8589935362,
+ "names": {
+ "web": [
+ "GameButton2"
+ ],
+ "android": [
+ "BUTTON_2"
+ ]
+ },
+ "values": {
+ "android": [
+ 189
+ ],
+ "fuchsia": [
+ 77309804290
+ ]
+ }
+ },
+ "GameButton3": {
+ "name": "GameButton3",
+ "value": 8589935363,
+ "names": {
+ "web": [
+ "GameButton3"
+ ],
+ "android": [
+ "BUTTON_3"
+ ]
+ },
+ "values": {
+ "android": [
+ 190
+ ],
+ "fuchsia": [
+ 77309804291
+ ]
+ }
+ },
+ "GameButton4": {
+ "name": "GameButton4",
+ "value": 8589935364,
+ "names": {
+ "web": [
+ "GameButton4"
+ ],
+ "android": [
+ "BUTTON_4"
+ ]
+ },
+ "values": {
+ "android": [
+ 191
+ ],
+ "fuchsia": [
+ 77309804292
+ ]
+ }
+ },
+ "GameButton5": {
+ "name": "GameButton5",
+ "value": 8589935365,
+ "names": {
+ "web": [
+ "GameButton5"
+ ],
+ "android": [
+ "BUTTON_5"
+ ]
+ },
+ "values": {
+ "android": [
+ 192
+ ],
+ "fuchsia": [
+ 77309804293
+ ]
+ }
+ },
+ "GameButton6": {
+ "name": "GameButton6",
+ "value": 8589935366,
+ "names": {
+ "web": [
+ "GameButton6"
+ ],
+ "android": [
+ "BUTTON_6"
+ ]
+ },
+ "values": {
+ "android": [
+ 193
+ ],
+ "fuchsia": [
+ 77309804294
+ ]
+ }
+ },
+ "GameButton7": {
+ "name": "GameButton7",
+ "value": 8589935367,
+ "names": {
+ "web": [
+ "GameButton7"
+ ],
+ "android": [
+ "BUTTON_7"
+ ]
+ },
+ "values": {
+ "android": [
+ 194
+ ],
+ "fuchsia": [
+ 77309804295
+ ]
+ }
+ },
+ "GameButton8": {
+ "name": "GameButton8",
+ "value": 8589935368,
+ "names": {
+ "web": [
+ "GameButton8"
+ ],
+ "windows": [
+ "GAMEPAD_A"
+ ],
+ "android": [
+ "BUTTON_8"
+ ]
+ },
+ "values": {
+ "windows": [
+ 195
+ ],
+ "android": [
+ 195
+ ],
+ "fuchsia": [
+ 77309804296
+ ]
+ }
+ },
+ "GameButton9": {
+ "name": "GameButton9",
+ "value": 8589935369,
+ "names": {
+ "web": [
+ "GameButton9"
+ ],
+ "windows": [
+ "GAMEPAD_B"
+ ],
+ "android": [
+ "BUTTON_9"
+ ]
+ },
+ "values": {
+ "windows": [
+ 196
+ ],
+ "android": [
+ 196
+ ],
+ "fuchsia": [
+ 77309804297
+ ]
+ }
+ },
+ "GameButton10": {
+ "name": "GameButton10",
+ "value": 8589935370,
+ "names": {
+ "web": [
+ "GameButton10"
+ ],
+ "windows": [
+ "GAMEPAD_X"
+ ],
+ "android": [
+ "BUTTON_10"
+ ]
+ },
+ "values": {
+ "windows": [
+ 197
+ ],
+ "android": [
+ 197
+ ],
+ "fuchsia": [
+ 77309804298
+ ]
+ }
+ },
+ "GameButton11": {
+ "name": "GameButton11",
+ "value": 8589935371,
+ "names": {
+ "web": [
+ "GameButton11"
+ ],
+ "windows": [
+ "GAMEPAD_Y"
+ ],
+ "android": [
+ "BUTTON_11"
+ ]
+ },
+ "values": {
+ "windows": [
+ 198
+ ],
+ "android": [
+ 198
+ ],
+ "fuchsia": [
+ 77309804299
+ ]
+ }
+ },
+ "GameButton12": {
+ "name": "GameButton12",
+ "value": 8589935372,
+ "names": {
+ "web": [
+ "GameButton12"
+ ],
+ "windows": [
+ "GAMEPAD_RIGHT_SHOULDER"
+ ],
+ "android": [
+ "BUTTON_12"
+ ]
+ },
+ "values": {
+ "windows": [
+ 199
+ ],
+ "android": [
+ 199
+ ],
+ "fuchsia": [
+ 77309804300
+ ]
+ }
+ },
+ "GameButton13": {
+ "name": "GameButton13",
+ "value": 8589935373,
+ "names": {
+ "web": [
+ "GameButton13"
+ ],
+ "windows": [
+ "GAMEPAD_LEFT_SHOULDER"
+ ],
+ "android": [
+ "BUTTON_13"
+ ]
+ },
+ "values": {
+ "windows": [
+ 200
+ ],
+ "android": [
+ 200
+ ],
+ "fuchsia": [
+ 77309804301
+ ]
+ }
+ },
+ "GameButton14": {
+ "name": "GameButton14",
+ "value": 8589935374,
+ "names": {
+ "web": [
+ "GameButton14"
+ ],
+ "windows": [
+ "GAMEPAD_LEFT_TRIGGER"
+ ],
+ "android": [
+ "BUTTON_14"
+ ]
+ },
+ "values": {
+ "windows": [
+ 201
+ ],
+ "android": [
+ 201
+ ],
+ "fuchsia": [
+ 77309804302
+ ]
+ }
+ },
+ "GameButton15": {
+ "name": "GameButton15",
+ "value": 8589935375,
+ "names": {
+ "web": [
+ "GameButton15"
+ ],
+ "windows": [
+ "GAMEPAD_RIGHT_TRIGGER"
+ ],
+ "android": [
+ "BUTTON_15"
+ ]
+ },
+ "values": {
+ "windows": [
+ 202
+ ],
+ "android": [
+ 202
+ ],
+ "fuchsia": [
+ 77309804303
+ ]
+ }
+ },
+ "GameButton16": {
+ "name": "GameButton16",
+ "value": 8589935376,
+ "names": {
+ "web": [
+ "GameButton16"
+ ],
+ "windows": [
+ "GAMEPAD_DPAD_UP"
+ ],
+ "android": [
+ "BUTTON_16"
+ ]
+ },
+ "values": {
+ "windows": [
+ 203
+ ],
+ "android": [
+ 203
+ ],
+ "fuchsia": [
+ 77309804304
+ ]
+ }
+ },
+ "GameButtonA": {
+ "name": "GameButtonA",
+ "value": 8589935377,
+ "names": {
+ "web": [
+ "GameButtonA"
+ ],
+ "android": [
+ "BUTTON_A"
+ ]
+ },
+ "values": {
+ "android": [
+ 96
+ ],
+ "fuchsia": [
+ 77309804305
+ ]
+ }
+ },
+ "GameButtonB": {
+ "name": "GameButtonB",
+ "value": 8589935378,
+ "names": {
+ "web": [
+ "GameButtonB"
+ ],
+ "android": [
+ "BUTTON_B"
+ ]
+ },
+ "values": {
+ "android": [
+ 97
+ ],
+ "fuchsia": [
+ 77309804306
+ ]
+ }
+ },
+ "GameButtonC": {
+ "name": "GameButtonC",
+ "value": 8589935379,
+ "names": {
+ "web": [
+ "GameButtonC"
+ ],
+ "android": [
+ "BUTTON_C"
+ ]
+ },
+ "values": {
+ "android": [
+ 98
+ ],
+ "fuchsia": [
+ 77309804307
+ ]
+ }
+ },
+ "GameButtonLeft1": {
+ "name": "GameButtonLeft1",
+ "value": 8589935380,
+ "names": {
+ "web": [
+ "GameButtonLeft1"
+ ],
+ "android": [
+ "BUTTON_L1"
+ ]
+ },
+ "values": {
+ "android": [
+ 102
+ ],
+ "fuchsia": [
+ 77309804308
+ ]
+ }
+ },
+ "GameButtonLeft2": {
+ "name": "GameButtonLeft2",
+ "value": 8589935381,
+ "names": {
+ "web": [
+ "GameButtonLeft2"
+ ],
+ "android": [
+ "BUTTON_L2"
+ ]
+ },
+ "values": {
+ "android": [
+ 104
+ ],
+ "fuchsia": [
+ 77309804309
+ ]
+ }
+ },
+ "GameButtonMode": {
+ "name": "GameButtonMode",
+ "value": 8589935382,
+ "names": {
+ "web": [
+ "GameButtonMode"
+ ],
+ "android": [
+ "BUTTON_MODE"
+ ]
+ },
+ "values": {
+ "android": [
+ 110
+ ],
+ "fuchsia": [
+ 77309804310
+ ]
+ }
+ },
+ "GameButtonRight1": {
+ "name": "GameButtonRight1",
+ "value": 8589935383,
+ "names": {
+ "web": [
+ "GameButtonRight1"
+ ],
+ "android": [
+ "BUTTON_R1"
+ ]
+ },
+ "values": {
+ "android": [
+ 103
+ ],
+ "fuchsia": [
+ 77309804311
+ ]
+ }
+ },
+ "GameButtonRight2": {
+ "name": "GameButtonRight2",
+ "value": 8589935384,
+ "names": {
+ "web": [
+ "GameButtonRight2"
+ ],
+ "android": [
+ "BUTTON_R2"
+ ]
+ },
+ "values": {
+ "android": [
+ 105
+ ],
+ "fuchsia": [
+ 77309804312
+ ]
+ }
+ },
+ "GameButtonSelect": {
+ "name": "GameButtonSelect",
+ "value": 8589935385,
+ "names": {
+ "web": [
+ "GameButtonSelect"
+ ],
+ "android": [
+ "BUTTON_SELECT"
+ ]
+ },
+ "values": {
+ "android": [
+ 109
+ ],
+ "fuchsia": [
+ 77309804313
+ ]
+ }
+ },
+ "GameButtonStart": {
+ "name": "GameButtonStart",
+ "value": 8589935386,
+ "names": {
+ "web": [
+ "GameButtonStart"
+ ],
+ "android": [
+ "BUTTON_START"
+ ]
+ },
+ "values": {
+ "android": [
+ 108
+ ],
+ "fuchsia": [
+ 77309804314
+ ]
+ }
+ },
+ "GameButtonThumbLeft": {
+ "name": "GameButtonThumbLeft",
+ "value": 8589935387,
+ "names": {
+ "web": [
+ "GameButtonThumbLeft"
+ ],
+ "android": [
+ "BUTTON_THUMBL"
+ ]
+ },
+ "values": {
+ "android": [
+ 106
+ ],
+ "fuchsia": [
+ 77309804315
+ ]
+ }
+ },
+ "GameButtonThumbRight": {
+ "name": "GameButtonThumbRight",
+ "value": 8589935388,
+ "names": {
+ "web": [
+ "GameButtonThumbRight"
+ ],
+ "android": [
+ "BUTTON_THUMBR"
+ ]
+ },
+ "values": {
+ "android": [
+ 107
+ ],
+ "fuchsia": [
+ 77309804316
+ ]
+ }
+ },
+ "GameButtonX": {
+ "name": "GameButtonX",
+ "value": 8589935389,
+ "names": {
+ "web": [
+ "GameButtonX"
+ ],
+ "android": [
+ "BUTTON_X"
+ ]
+ },
+ "values": {
+ "android": [
+ 99
+ ],
+ "fuchsia": [
+ 77309804317
+ ]
+ }
+ },
+ "GameButtonY": {
+ "name": "GameButtonY",
+ "value": 8589935390,
+ "names": {
+ "web": [
+ "GameButtonY"
+ ],
+ "android": [
+ "BUTTON_Y"
+ ]
+ },
+ "values": {
+ "android": [
+ 100
+ ],
+ "fuchsia": [
+ 77309804318
+ ]
+ }
+ },
+ "GameButtonZ": {
+ "name": "GameButtonZ",
+ "value": 8589935391,
+ "names": {
+ "web": [
+ "GameButtonZ"
+ ],
+ "android": [
+ "BUTTON_Z"
+ ]
+ },
+ "values": {
+ "android": [
+ 101
+ ],
+ "fuchsia": [
+ 77309804319
]
}
}
diff --git a/dev/tools/gen_keycodes/data/mask_constants.json b/dev/tools/gen_keycodes/data/mask_constants.json
deleted file mode 100644
index a6769fca85..0000000000
--- a/dev/tools/gen_keycodes/data/mask_constants.json
+++ /dev/null
@@ -1,50 +0,0 @@
-{
- "valueMask": {
- "value": "0x000FFFFFFFF",
- "description": [
- "Mask for the 32-bit value portion of the key code.",
- "This is used by platform-specific code to generate Flutter key codes."
- ]
- },
-
- "platformMask": {
- "value": "0x0FF00000000",
- "description": [
- "Mask for the platform prefix portion of the key code.",
- "This is used by platform-specific code to generate Flutter key codes."
- ]
- },
-
- "unicodePlane": {
- "value": "0x00000000000",
- "description": [
- "The code prefix for keys which have a Unicode representation.",
- "This is used by platform-specific code to generate Flutter key codes."
- ]
- },
-
- "autogeneratedMask": {
- "value": "0x10000000000",
- "description": [
- "Mask for the auto-generated bit portion of the key code.",
- "This is used by platform-specific code to generate new Flutter key codes for keys which are not recognized."
- ]
- },
-
- "synonymMask": {
- "value": "0x20000000000",
- "description": [
- "Mask for the synonym pseudo-keys generated for keys which appear in more than one place on the keyboard.",
- "IDs in this range are used to represent keys which appear in multiple places on the keyboard, such as the SHIFT, ALT, CTRL, and numeric keypad keys. These key codes will never be generated by the key event system, but may be used in key maps to represent the union of all the keys of each type in order to match them.",
- "To look up the synonyms that are defined, look in the [synonyms] map."
- ]
- },
-
- "hidPlane": {
- "value": "0x00100000000",
- "description": [
- "The code prefix for keys which do not have a Unicode representation.",
- "This is used by platform-specific code to generate Flutter key codes using HID Usage codes."
- ]
- }
-}
diff --git a/dev/tools/gen_keycodes/data/physical_key_data.json b/dev/tools/gen_keycodes/data/physical_key_data.json
index 606bbba886..3cdbfd0931 100644
--- a/dev/tools/gen_keycodes/data/physical_key_data.json
+++ b/dev/tools/gen_keycodes/data/physical_key_data.json
@@ -1,12 +1,4 @@
{
- "None": {
- "names": {
- "name": "None"
- },
- "scanCodes": {
- "usb": 0
- }
- },
"Hyper": {
"names": {
"name": "Hyper",
diff --git a/dev/tools/gen_keycodes/data/printable_to_numpads.json b/dev/tools/gen_keycodes/data/printable_to_numpads.json
deleted file mode 100644
index 8b65e4d9ad..0000000000
--- a/dev/tools/gen_keycodes/data/printable_to_numpads.json
+++ /dev/null
@@ -1,22 +0,0 @@
-{
- "0": "Numpad0",
- "1": "Numpad1",
- "2": "Numpad2",
- "3": "Numpad3",
- "4": "Numpad4",
- "5": "Numpad5",
- "6": "Numpad6",
- "7": "Numpad7",
- "8": "Numpad8",
- "9": "Numpad9",
- ".": "NumpadDecimal",
- "+": "NumpadAdd",
- "-": "NumpadSubtract",
- "*": "NumpadMultiply",
- "/": "NumpadDivide",
- "=": "NumpadEqual",
- ",": "NumpadComma",
- "(": "NumpadParenLeft",
- ")": "NumpadParenRight",
- "\u000D": "NumpadEnter"
-}
diff --git a/dev/tools/gen_keycodes/data/supplemental_key_data.inc b/dev/tools/gen_keycodes/data/supplemental_key_data.inc
index a04c0c3add..c7c38af190 100644
--- a/dev/tools/gen_keycodes/data/supplemental_key_data.inc
+++ b/dev/tools/gen_keycodes/data/supplemental_key_data.inc
@@ -1,8 +1,8 @@
- // These are supplemental key data to be added to those that Chromium
- // defines.
+ // This file contains supplemental key data to be added to those that
+ // Chromium defines.
// ============================================================
- // Printable keys
+ // Printable keys (Unicode plane)
// ============================================================
// Key Enum Unicode code point
@@ -76,63 +76,105 @@
DOM_KEY_UNI("Tilde", TILDE, '~'),
DOM_KEY_UNI("Bar", BAR, '|'),
+ // The following keys reside in the Flutter plane (0x0100000000).
// ============================================================
- // Game controller buttons
+ // Miscellaneous (0x000__)
// ============================================================
- // Since the web doesn't have game controller buttons defined in the
- // same way, these map USB HID codes for game controller buttons to
- // Android/Linux button names.
- // Key Enum Value
- DOM_KEY_MAP("GameButton1", GAME_BUTTON_1, 0x05ff01),
- DOM_KEY_MAP("GameButton2", GAME_BUTTON_2, 0x05ff02),
- DOM_KEY_MAP("GameButton3", GAME_BUTTON_3, 0x05ff03),
- DOM_KEY_MAP("GameButton4", GAME_BUTTON_4, 0x05ff04),
- DOM_KEY_MAP("GameButton5", GAME_BUTTON_5, 0x05ff05),
- DOM_KEY_MAP("GameButton6", GAME_BUTTON_6, 0x05ff06),
- DOM_KEY_MAP("GameButton7", GAME_BUTTON_7, 0x05ff07),
- DOM_KEY_MAP("GameButton8", GAME_BUTTON_8, 0x05ff08),
- DOM_KEY_MAP("GameButton9", GAME_BUTTON_9, 0x05ff09),
- DOM_KEY_MAP("GameButton10", GAME_BUTTON_10, 0x05ff0a),
- DOM_KEY_MAP("GameButton11", GAME_BUTTON_11, 0x05ff0b),
- DOM_KEY_MAP("GameButton12", GAME_BUTTON_12, 0x05ff0c),
- DOM_KEY_MAP("GameButton13", GAME_BUTTON_13, 0x05ff0d),
- DOM_KEY_MAP("GameButton14", GAME_BUTTON_14, 0x05ff0e),
- DOM_KEY_MAP("GameButton15", GAME_BUTTON_15, 0x05ff0f),
- DOM_KEY_MAP("GameButton16", GAME_BUTTON_16, 0x05ff10),
- DOM_KEY_MAP("GameButtonA", GAME_BUTTON_A, 0x05ff11),
- DOM_KEY_MAP("GameButtonB", GAME_BUTTON_B, 0x05ff12),
- DOM_KEY_MAP("GameButtonC", GAME_BUTTON_C, 0x05ff13),
- DOM_KEY_MAP("GameButtonLeft1", GAME_BUTTON_L1, 0x05ff14),
- DOM_KEY_MAP("GameButtonLeft2", GAME_BUTTON_L2, 0x05ff15),
- DOM_KEY_MAP("GameButtonMode", GAME_BUTTON_MODE, 0x05ff16),
- DOM_KEY_MAP("GameButtonRight1", GAME_BUTTON_R1, 0x05ff17),
- DOM_KEY_MAP("GameButtonRight2", GAME_BUTTON_R2, 0x05ff18),
- DOM_KEY_MAP("GameButtonSelect", GAME_BUTTON_SELECT, 0x05ff19),
- DOM_KEY_MAP("GameButtonStart", GAME_BUTTON_START, 0x05ff1a),
- DOM_KEY_MAP("GameButtonThumbLeft", GAME_BUTTON_THUMBL, 0x05ff1b),
- DOM_KEY_MAP("GameButtonThumbRight", GAME_BUTTON_THUMBR, 0x05ff1c),
- DOM_KEY_MAP("GameButtonX", GAME_BUTTON_X, 0x05ff1d),
- DOM_KEY_MAP("GameButtonY", GAME_BUTTON_Y, 0x05ff1e),
- DOM_KEY_MAP("GameButtonZ", GAME_BUTTON_Z, 0x05ff1f),
-
+ // Key Enum Value
+ FLUTTER_KEY_MAP("Suspend", SUSPEND, 0x00000),
+ FLUTTER_KEY_MAP("Resume", RESUME, 0x00001),
+ FLUTTER_KEY_MAP("Sleep", SLEEP, 0x00002),
+ FLUTTER_KEY_MAP("Abort", ABORT, 0x00003),
+ FLUTTER_KEY_MAP("Lang1", LANG1, 0x00010),
+ FLUTTER_KEY_MAP("Lang2", LANG2, 0x00011),
+ FLUTTER_KEY_MAP("Lang3", LANG3, 0x00012),
+ FLUTTER_KEY_MAP("Lang4", LANG4, 0x00013),
+ FLUTTER_KEY_MAP("Lang5", LANG5, 0x00014),
+ FLUTTER_KEY_MAP("IntlBackslash", INTL_BACKSLASH, 0x00020),
+ FLUTTER_KEY_MAP("IntlRo", INTL_RO, 0x00021),
+ FLUTTER_KEY_MAP("IntlYen", INTL_YEN, 0x00022),
// ============================================================
- // Other buttons
+ // Modifiers (0x001__)
+ // ============================================================
+ // Key Enum Value
+ FLUTTER_KEY_MAP("ControlLeft", CONTROL_LEFT, 0x00100),
+ FLUTTER_KEY_MAP("ControlRight", CONTROL_RIGHT, 0x00101),
+ FLUTTER_KEY_MAP("ShiftLeft", SHIFT_LEFT, 0x00102),
+ FLUTTER_KEY_MAP("ShiftRight", SHIFT_RIGHT, 0x00103),
+ FLUTTER_KEY_MAP("AltLeft", ALT_LEFT, 0x00104),
+ FLUTTER_KEY_MAP("AltRight", ALT_RIGHT, 0x00105),
+ FLUTTER_KEY_MAP("MetaLeft", META_LEFT, 0x00106),
+ FLUTTER_KEY_MAP("MetaRight", META_RIGHT, 0x00107),
+ // Synonym keys are added for compatibility and will be removed in the future.
+ FLUTTER_KEY_MAP("Control", CONTROL, 0x001F0),
+ FLUTTER_KEY_MAP("Shift", SHIFT, 0x001F2),
+ FLUTTER_KEY_MAP("Alt", ALT, 0x001F4),
+ FLUTTER_KEY_MAP("Meta", META, 0x001F6),
+
+ // ============================================================
+ // Number pad (0x002__)
+ // ============================================================
+ // The value for number pad buttons are derived from their unicode code
+ // points.
+ FLUTTER_KEY_MAP("NumpadEnter", NUMPAD_ENTER, 0x0020D),
+ FLUTTER_KEY_MAP("NumpadParenLeft", NUMPAD_PAREN_LEFT, 0x00228),
+ FLUTTER_KEY_MAP("NumpadParenRight", NUMPAD_PAREN_RIGHT, 0x00229),
+ FLUTTER_KEY_MAP("NumpadMultiply", NUMPAD_MULTIPLY, 0x0022A),
+ FLUTTER_KEY_MAP("NumpadAdd", NUMPAD_ADD, 0x0022B),
+ FLUTTER_KEY_MAP("NumpadComma", NUMPAD_COMMA, 0x0022C),
+ FLUTTER_KEY_MAP("NumpadSubtract", NUMPAD_SUBTRACT, 0x0022D),
+ FLUTTER_KEY_MAP("NumpadDecimal", NUMPAD_DECIMAL, 0x0022E),
+ FLUTTER_KEY_MAP("NumpadDivide", NUMPAD_DIVIDE, 0x0022F),
+ FLUTTER_KEY_MAP("Numpad0", NUMPAD_0, 0x00230),
+ FLUTTER_KEY_MAP("Numpad1", NUMPAD_1, 0x00231),
+ FLUTTER_KEY_MAP("Numpad2", NUMPAD_2, 0x00232),
+ FLUTTER_KEY_MAP("Numpad3", NUMPAD_3, 0x00233),
+ FLUTTER_KEY_MAP("Numpad4", NUMPAD_4, 0x00234),
+ FLUTTER_KEY_MAP("Numpad5", NUMPAD_5, 0x00235),
+ FLUTTER_KEY_MAP("Numpad6", NUMPAD_6, 0x00236),
+ FLUTTER_KEY_MAP("Numpad7", NUMPAD_7, 0x00237),
+ FLUTTER_KEY_MAP("Numpad8", NUMPAD_8, 0x00238),
+ FLUTTER_KEY_MAP("Numpad9", NUMPAD_9, 0x00239),
+ FLUTTER_KEY_MAP("NumpadEqual", NUMPAD_EQUAL, 0x0023D),
+
+ // ============================================================
+ // Game controller buttons (0x003__)
// ============================================================
- // Key Enum Value
- DOM_KEY_MAP("None", NONE, 0x0),
- DOM_KEY_MAP("Suspend", SUSPEND, 0x100000014),
- DOM_KEY_MAP("Resume", RESUME, 0x100000015),
- DOM_KEY_MAP("Sleep", SLEEP, 0x100010082),
- DOM_KEY_MAP("IntlBackslash", INTL_BACKSLASH, 0x100070064),
- DOM_KEY_MAP("IntlRo", INTL_RO, 0x100070087),
- DOM_KEY_MAP("IntlYen", INTL_YEN, 0x100070089),
- DOM_KEY_MAP("Lang1", LANG1, 0x100070090),
- DOM_KEY_MAP("Lang2", LANG2, 0x100070091),
- DOM_KEY_MAP("Lang3", LANG3, 0x100070092),
- DOM_KEY_MAP("Lang4", LANG4, 0x100070093),
- DOM_KEY_MAP("Lang5", LANG5, 0x100070094),
- DOM_KEY_MAP("Abort", ABORT, 0x10007009b),
+ // The value for game controller buttons are derived from the last 8 bit
+ // of its USB HID usage.
+ // Key Enum Value
+ FLUTTER_KEY_MAP("GameButton1", GAME_BUTTON_1, 0x00301),
+ FLUTTER_KEY_MAP("GameButton2", GAME_BUTTON_2, 0x00302),
+ FLUTTER_KEY_MAP("GameButton3", GAME_BUTTON_3, 0x00303),
+ FLUTTER_KEY_MAP("GameButton4", GAME_BUTTON_4, 0x00304),
+ FLUTTER_KEY_MAP("GameButton5", GAME_BUTTON_5, 0x00305),
+ FLUTTER_KEY_MAP("GameButton6", GAME_BUTTON_6, 0x00306),
+ FLUTTER_KEY_MAP("GameButton7", GAME_BUTTON_7, 0x00307),
+ FLUTTER_KEY_MAP("GameButton8", GAME_BUTTON_8, 0x00308),
+ FLUTTER_KEY_MAP("GameButton9", GAME_BUTTON_9, 0x00309),
+ FLUTTER_KEY_MAP("GameButton10", GAME_BUTTON_10, 0x0030a),
+ FLUTTER_KEY_MAP("GameButton11", GAME_BUTTON_11, 0x0030b),
+ FLUTTER_KEY_MAP("GameButton12", GAME_BUTTON_12, 0x0030c),
+ FLUTTER_KEY_MAP("GameButton13", GAME_BUTTON_13, 0x0030d),
+ FLUTTER_KEY_MAP("GameButton14", GAME_BUTTON_14, 0x0030e),
+ FLUTTER_KEY_MAP("GameButton15", GAME_BUTTON_15, 0x0030f),
+ FLUTTER_KEY_MAP("GameButton16", GAME_BUTTON_16, 0x00310),
+ FLUTTER_KEY_MAP("GameButtonA", GAME_BUTTON_A, 0x00311),
+ FLUTTER_KEY_MAP("GameButtonB", GAME_BUTTON_B, 0x00312),
+ FLUTTER_KEY_MAP("GameButtonC", GAME_BUTTON_C, 0x00313),
+ FLUTTER_KEY_MAP("GameButtonLeft1", GAME_BUTTON_L1, 0x00314),
+ FLUTTER_KEY_MAP("GameButtonLeft2", GAME_BUTTON_L2, 0x00315),
+ FLUTTER_KEY_MAP("GameButtonMode", GAME_BUTTON_MODE, 0x00316),
+ FLUTTER_KEY_MAP("GameButtonRight1", GAME_BUTTON_R1, 0x00317),
+ FLUTTER_KEY_MAP("GameButtonRight2", GAME_BUTTON_R2, 0x00318),
+ FLUTTER_KEY_MAP("GameButtonSelect", GAME_BUTTON_SELECT, 0x00319),
+ FLUTTER_KEY_MAP("GameButtonStart", GAME_BUTTON_START, 0x0031a),
+ FLUTTER_KEY_MAP("GameButtonThumbLeft", GAME_BUTTON_THUMBL, 0x0031b),
+ FLUTTER_KEY_MAP("GameButtonThumbRight", GAME_BUTTON_THUMBR, 0x0031c),
+ FLUTTER_KEY_MAP("GameButtonX", GAME_BUTTON_X, 0x0031d),
+ FLUTTER_KEY_MAP("GameButtonY", GAME_BUTTON_Y, 0x0031e),
+ FLUTTER_KEY_MAP("GameButtonZ", GAME_BUTTON_Z, 0x0031f),
diff --git a/dev/tools/gen_keycodes/data/web_key_map_dart.tmpl b/dev/tools/gen_keycodes/data/web_key_map_dart.tmpl
index e8d04a7ee2..5a5eeec463 100644
--- a/dev/tools/gen_keycodes/data/web_key_map_dart.tmpl
+++ b/dev/tools/gen_keycodes/data/web_key_map_dart.tmpl
@@ -9,7 +9,7 @@
// Edit the template dev/tools/gen_keycodes/data/web_key_map_dart.tmpl instead.
// See dev/tools/gen_keycodes/README.md for more information.
-/// Maps Web KeyboardEvent codes to the matching LogicalKeyboardKey id.
+/// Maps Web KeyboardEvent keys to the matching LogicalKeyboardKey id.
const Map kWebToLogicalKey = {
@@@WEB_LOGICAL_KEY_CODE_MAP@@@
};
diff --git a/dev/tools/gen_keycodes/data/windows_flutter_key_map_cc.tmpl b/dev/tools/gen_keycodes/data/windows_flutter_key_map_cc.tmpl
index 97f3621a1d..99603e555e 100644
--- a/dev/tools/gen_keycodes/data/windows_flutter_key_map_cc.tmpl
+++ b/dev/tools/gen_keycodes/data/windows_flutter_key_map_cc.tmpl
@@ -37,6 +37,8 @@ std::map KeyboardKeyEmbedderHandler::scanCodeToLogicalMap_ =
@@@WINDOWS_SCAN_CODE_TO_LOGICAL_MAP@@@
};
+@@@MASK_CONSTANTS@@@
+
} // namespace flutter
#endif
diff --git a/dev/tools/gen_keycodes/data/windows_logical_to_window_vk.json b/dev/tools/gen_keycodes/data/windows_logical_to_window_vk.json
index e8d022450b..e4803cbe24 100644
--- a/dev/tools/gen_keycodes/data/windows_logical_to_window_vk.json
+++ b/dev/tools/gen_keycodes/data/windows_logical_to_window_vk.json
@@ -10,8 +10,7 @@
"Lang1": ["HANGUL", "HANGEUL", "KANA"],
"JunjaMode": ["JUNJA"],
"FinalMode": ["FINAL"],
- "HanjaMode": ["HANJA"],
- "KanjiMode": ["KANJI"],
+ "KanjiMode": ["KANJI", "HANJA"],
"Escape": ["ESCAPE"],
"Convert": ["CONVERT"],
"Nonconvert": ["NONCONVERT"],
@@ -49,7 +48,7 @@
"Numpad9": ["NUMPAD9"],
"NumpadMultiply": ["MULTIPLY"],
"NumpadAdd": ["ADD"],
- "NumpadSeparator": ["SEPARATOR"],
+ "NumpadComma": ["SEPARATOR"],
"NumpadSubtract": ["SUBTRACT"],
"NumpadDecimal": ["DECIMAL"],
"NumpadDivide": ["DIVIDE"],
diff --git a/dev/tools/gen_keycodes/lib/constants.dart b/dev/tools/gen_keycodes/lib/constants.dart
index bf2c0f221a..3fe8b758c0 100644
--- a/dev/tools/gen_keycodes/lib/constants.dart
+++ b/dev/tools/gen_keycodes/lib/constants.dart
@@ -2,147 +2,107 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-/* === LOGICAL KEY BITMASKS === */
-// The following constants are used to composite the value for a Flutter logical
-// key.
-//
-// A Flutter logical key supports up to 53-bits, as limited by JavaScript
-// integers.
-
-/* Bit 31-0: Value */
-// The lower 32 bits represent different values within a plane.
-
-/// Mask for the 32-bit value portion of the code.
-const int kValueMask = 0x000FFFFFFFF;
-
-
-/* Bit 39-32: Source of value */
-// The next 8 bits represent where the values come from, consequently how to
-// interpret them.
-
-/// Mask for bit #39-32 portion of the code, indicating the source of the value.
-const int kPlatformMask = 0x0FF00000000;
-
-/// The code prefix for keys that have a Unicode representation, generated from
-/// their code points.
-///
-/// See also:
-///
-/// * [kUnprintablePlane], for keys that are also generated from code points but
-/// unprintable.
-const int kUnicodePlane = 0x00000000000;
-
-/// The code prefix for keys generated from their USB HID usages.
-const int kHidPlane = 0x00100000000;
-
-/// The code prefix for unrecognized keys that are unique to Android, generated
-/// from platform-specific codes.
-const int kAndroidPlane = 0x00200000000;
-
-/// The code prefix for unrecognized keys that are unique to Fuchsia, generated
-/// from platform-specific codes.
-const int kFuchsiaPlane = 0x00300000000;
-
-/// The code prefix for unrecognized keys that are unique to iOS, generated
-/// from platform-specific codes.
-const int kIosPlane = 0x00400000000;
-
-/// The code prefix for unrecognized keys that are unique to macOS, generated
-/// from platform-specific codes.
-const int kMacOsPlane = 0x00500000000;
-
-/// The code prefix for unrecognized keys that are unique to Gtk, generated from
-/// platform-specific codes.
-const int kGtkPlane = 0x00600000000;
-
-/// The code prefix for unrecognized keys that are unique to Windows, generated
-/// from platform-specific codes.
-const int kWindowsPlane = 0x00700000000;
-
-/// The code prefix for unrecognized keys that are unique to Web, generated from
-/// platform-specific codes.
-const int kWebPlane = 0x00800000000;
-
-/// The code prefix for keys that do not have a Unicode representation, generated
-/// from their code points.
-///
-/// See also:
-///
-/// * [kUnicodePlane], for keys that are also generated from code points but
-/// printable.
-const int kUnprintablePlane = 0x01000000000;
-
-
-/* Bit 43-40: Key variation */
-// The next 4 bits represent keys that have multiple variations, such as a left
-// and right variation of a modifier key, or a Numpad variation of a digit key.
-
-/// Mask for bit #43-40 portion of the code, indicating the variation of the key.
-const int kVariationMask = 0xF0000000000;
-
-/// The code prefix for pseudo-keys which represent collections of key synonyms,
-/// such as Control.
-const int kSynonymPlane = 0x20000000000;
-
-/// The code prefix for the left modifier of a pair of modifiers, such as Control
-/// Left.
-const int kLeftModifierPlane = 0x30000000000;
-
-/// The code prefix for the right modifier of a pair of modifiers, such as Control
-/// Right.
-const int kRightModifierPlane = 0x40000000000;
-
-/// The code prefix for a Numpad key, such as Numpad 1.
-const int kNumpadPlane = 0x50000000000;
+import 'utils.dart';
class MaskConstant {
const MaskConstant({required this.name, required this.value, required this.description});
+ const MaskConstant.platform({required String platform, required int value})
+ : this(
+ name: '$platform Plane',
+ value: value,
+ description: 'The plane value for the private keys defined by the $platform embedding.'
+ );
+
final String name;
final int value;
- final List description;
+ final String description;
+
+ String get upperCamelName {
+ return name
+ .split(' ')
+ .map((String word) => lowerCamelToUpperCamel(word.toLowerCase()))
+ .join('');
+ }
+
+ String get lowerCamelName {
+ final String upperCamel = upperCamelName;
+ return upperCamel.substring(0, 1).toLowerCase() + upperCamel.substring(1);
+ }
}
-const List maskConstants = [
- MaskConstant(
- name: 'valueMask',
- value: kValueMask,
- description: [
- 'Mask for the 32-bit value portion of the key code.',
- 'This is used by platform-specific code to generate Flutter key codes.',
- ],
- ),
- MaskConstant(
- name: 'platformMask',
- value: kPlatformMask,
- description: [
- 'Mask for the platform prefix portion of the key code.',
- 'This is used by platform-specific code to generate Flutter key codes.'
- ],
- ),
- MaskConstant(
- name: 'unicodePlane',
- value: kUnicodePlane,
- description: [
- 'The code prefix for keys which have a Unicode representation.',
- 'This is used by platform-specific code to generate Flutter key codes.'
- ],
- ),
- MaskConstant(
- name: 'synonymMask',
- value: kSynonymPlane,
- description: [
- 'Mask for the synonym pseudo-keys generated for keys which appear in more than one place on the keyboard.',
- 'IDs in this range are used to represent keys which appear in multiple places on the keyboard, such as the SHIFT, ALT, CTRL, and numeric keypad keys. These key codes will never be generated by the key event system, but may be used in key maps to represent the union of all the keys of each type in order to match them.',
- 'To look up the synonyms that are defined, look in the [synonyms] map.'
- ],
- ),
- MaskConstant(
- name: 'hidPlane',
- value: kHidPlane,
- description: [
- 'The code prefix for keys which do not have a Unicode representation.',
- 'This is used by platform-specific code to generate Flutter key codes using HID Usage codes.'
- ],
- ),
-];
+const MaskConstant kValueMask = MaskConstant(
+ name: 'Value Mask',
+ value: 0x00FFFFFFFF,
+ description: 'Mask for the 32-bit value portion of the key code.',
+);
+
+const MaskConstant kPlaneMask = MaskConstant(
+ name: 'Plane Mask',
+ value: 0xFF00000000,
+ description: 'Mask for the plane prefix portion of the key code.',
+);
+
+const MaskConstant kUnicodePlane = MaskConstant(
+ name: 'Unicode Plane',
+ value: 0x0000000000,
+ description: 'The plane value for keys which have a Unicode representation.',
+);
+
+const MaskConstant kUnprintablePlane = MaskConstant(
+ name: 'Unprintable Plane',
+ value: 0x0100000000,
+ description: 'The plane value for keys defined by Chromium and does not have a Unicode representation.',
+);
+
+const MaskConstant kFlutterPlane = MaskConstant(
+ name: 'Flutter Plane',
+ value: 0x0200000000,
+ description: 'The plane value for keys defined by Flutter.',
+);
+
+const MaskConstant kStartOfPlatformPlanes = MaskConstant(
+ name: 'Start Of Platform Planes',
+ value: 0x1100000000,
+ description: 'The platform plane with the lowest mask value, beyond which the keys are considered autogenerated.',
+);
+
+const MaskConstant kAndroidPlane = MaskConstant.platform(
+ platform: 'Android',
+ value: 0x1100000000,
+);
+
+const MaskConstant kFuchsiaPlane = MaskConstant.platform(
+ platform: 'Fuchsia',
+ value: 0x1200000000,
+);
+
+const MaskConstant kIosPlane = MaskConstant.platform(
+ platform: 'iOS',
+ value: 0x1300000000,
+);
+
+const MaskConstant kMacosPlane = MaskConstant.platform(
+ platform: 'macOS',
+ value: 0x1400000000,
+);
+
+const MaskConstant kGtkPlane = MaskConstant.platform(
+ platform: 'Gtk',
+ value: 0x1500000000,
+);
+
+const MaskConstant kWindowsPlane = MaskConstant.platform(
+ platform: 'Windows',
+ value: 0x1600000000,
+);
+
+const MaskConstant kWebPlane = MaskConstant.platform(
+ platform: 'Web',
+ value: 0x1700000000,
+);
+
+const MaskConstant kGlfwPlane = MaskConstant.platform(
+ platform: 'GLFW',
+ value: 0x1800000000,
+);
diff --git a/dev/tools/gen_keycodes/lib/gtk_code_gen.dart b/dev/tools/gen_keycodes/lib/gtk_code_gen.dart
index 1a61a5e320..bca173afe2 100644
--- a/dev/tools/gen_keycodes/lib/gtk_code_gen.dart
+++ b/dev/tools/gen_keycodes/lib/gtk_code_gen.dart
@@ -5,6 +5,7 @@
import 'package:path/path.dart' as path;
import 'base_code_gen.dart';
+import 'constants.dart';
import 'logical_key_data.dart';
import 'physical_key_data.dart';
import 'utils.dart';
@@ -55,27 +56,27 @@ class GtkCodeGenerator extends PlatformCodeGenerator {
final StringBuffer result = StringBuffer();
source.forEach((String modifierBitName, List keyNames) {
assert(keyNames.length == 2 || keyNames.length == 3);
- final String primaryLogicalName = keyNames[0];
- final String primaryPhysicalName = keyNames[1];
- final String? secondaryPhysicalName = keyNames.length == 3 ? keyNames[2] : null;
- final LogicalKeyEntry primaryLogical = logicalData.entryByName(primaryLogicalName);
+ final String primaryPhysicalName = keyNames[0];
+ final String primaryLogicalName = keyNames[1];
+ final String? secondaryLogicalName = keyNames.length == 3 ? keyNames[2] : null;
final PhysicalKeyEntry primaryPhysical = physicalData.entryByName(primaryPhysicalName);
- final PhysicalKeyEntry? secondaryPhysical = secondaryPhysicalName == null ? null : physicalData.entryByName(secondaryPhysicalName);
- if (secondaryPhysical == null && secondaryPhysicalName != null) {
- print('Unrecognized secondary physical key $secondaryPhysicalName specified for $debugFunctionName.');
+ final LogicalKeyEntry primaryLogical = logicalData.entryByName(primaryLogicalName);
+ final LogicalKeyEntry? secondaryLogical = secondaryLogicalName == null ? null : logicalData.entryByName(secondaryLogicalName);
+ if (secondaryLogical == null && secondaryLogicalName != null) {
+ print('Unrecognized secondary logical key $secondaryLogicalName specified for $debugFunctionName.');
return;
}
- final String pad = secondaryPhysical == null ? '' : ' ';
+ final String pad = secondaryLogical == null ? '' : ' ';
result.writeln('''
data = g_new(FlKeyEmbedderCheckedKey, 1);
g_hash_table_insert(table, GUINT_TO_POINTER(GDK_${modifierBitName}_MASK), data);
data->is_caps_lock = ${primaryPhysicalName == 'CapsLock' ? 'true' : 'false'};
- data->primary_logical_key = ${toHex(primaryLogical.value, digits: 11)};$pad // ${primaryLogical.constantName}
- data->primary_physical_key = ${toHex(primaryPhysical.usbHidCode, digits: 9)};$pad // ${primaryPhysical.constantName}''');
- if (secondaryPhysical != null) {
+ data->primary_physical_key = ${toHex(primaryPhysical.usbHidCode, digits: 9)};$pad // ${primaryPhysical.constantName}
+ data->primary_logical_key = ${toHex(primaryLogical.value, digits: 11)};$pad // ${primaryLogical.constantName}''');
+ if (secondaryLogical != null) {
result.writeln('''
- data->secondary_physical_key = ${toHex(secondaryPhysical.usbHidCode, digits: 9)}; // ${secondaryPhysical.constantName}''');
+ data->secondary_logical_key = ${toHex(secondaryLogical.value, digits: 11)}; // ${secondaryLogical.constantName}''');
}
});
return result.toString().trimRight();
@@ -91,6 +92,20 @@ class GtkCodeGenerator extends PlatformCodeGenerator {
}
final Map> _lockBitMapping;
+ /// This generates the mask values for the part of a key code that defines its plane.
+ String get _maskConstants {
+ final StringBuffer buffer = StringBuffer();
+ const List maskConstants = [
+ kValueMask,
+ kUnicodePlane,
+ kGtkPlane,
+ ];
+ for (final MaskConstant constant in maskConstants) {
+ buffer.writeln('const uint64_t k${constant.upperCamelName} = ${toHex(constant.value, digits: 11)};');
+ }
+ return buffer.toString().trimRight();
+ }
+
@override
String get templatePath => path.join(dataRoot, 'gtk_key_mapping_cc.tmpl');
@@ -105,6 +120,7 @@ class GtkCodeGenerator extends PlatformCodeGenerator {
'GTK_KEYVAL_CODE_MAP': _gtkKeyvalCodeMap,
'GTK_MODIFIER_BIT_MAP': _gtkModifierBitMap,
'GTK_MODE_BIT_MAP': _gtkModeBitMap,
+ 'MASK_CONSTANTS': _maskConstants,
};
}
}
diff --git a/dev/tools/gen_keycodes/lib/ios_code_gen.dart b/dev/tools/gen_keycodes/lib/ios_code_gen.dart
index 5a631becd7..40cade26de 100644
--- a/dev/tools/gen_keycodes/lib/ios_code_gen.dart
+++ b/dev/tools/gen_keycodes/lib/ios_code_gen.dart
@@ -25,10 +25,6 @@ const List kModifiersOfInterest = [
const List kSpecialPhysicalKeys = ['CapsLock'];
const List kSpecialLogicalKeys = ['CapsLock'];
-String _toConstantVariableName(String variableName) {
- return 'k${variableName[0].toUpperCase()}${variableName.substring(1)}';
-}
-
/// Generates the key mapping for iOS, based on the information in the key
/// data structure given to it.
class IOSCodeGenerator extends PlatformCodeGenerator {
@@ -37,35 +33,39 @@ class IOSCodeGenerator extends PlatformCodeGenerator {
/// This generates the map of iOS key codes to physical keys.
String get _scanCodeMap {
- final StringBuffer scanCodeMap = StringBuffer();
+ final OutputLines lines = OutputLines('iOS scancode map');
for (final PhysicalKeyEntry entry in keyData.entries) {
if (entry.iOSScanCode != null) {
- scanCodeMap.writeln(' {${toHex(entry.iOSScanCode)}, ${toHex(entry.usbHidCode)}}, // ${entry.constantName}');
+ lines.add(entry.iOSScanCode!,
+ ' {${toHex(entry.iOSScanCode)}, ${toHex(entry.usbHidCode)}}, // ${entry.constantName}');
}
}
- return scanCodeMap.toString().trimRight();
+ return lines.sortedJoin().trimRight();
}
String get _keyCodeToLogicalMap {
- final StringBuffer result = StringBuffer();
+ final OutputLines lines = OutputLines('iOS keycode map');
for (final LogicalKeyEntry entry in logicalData.entries) {
zipStrict(entry.iOSKeyCodeValues, entry.iOSKeyCodeNames, (int iOSValue, String iOSName) {
- result.writeln(' {${toHex(iOSValue)}, ${toHex(entry.value, digits: 11)}}, // $iOSName');
+ lines.add(iOSValue, ' {${toHex(iOSValue)}, ${toHex(entry.value, digits: 11)}}, // $iOSName');
});
}
- return result.toString().trimRight();
+ return lines.sortedJoin().trimRight();
}
/// This generates the mask values for the part of a key code that defines its plane.
String get _maskConstants {
final StringBuffer buffer = StringBuffer();
+ const List maskConstants = [
+ kValueMask,
+ kUnicodePlane,
+ kIosPlane,
+ ];
for (final MaskConstant constant in maskConstants) {
buffer.writeln('/**');
- buffer.write(constant.description
- .map((String line) => wrapString(line, prefix: ' * '))
- .join(' *\n'));
+ buffer.write(wrapString(constant.description, prefix: ' * '));
buffer.writeln(' */');
- buffer.writeln('const uint64_t ${_toConstantVariableName(constant.name)} = ${toHex(constant.value, digits: 11)};');
+ buffer.writeln('const uint64_t k${constant.upperCamelName} = ${toHex(constant.value, digits: 11)};');
buffer.writeln('');
}
return buffer.toString().trimRight();
@@ -75,7 +75,8 @@ class IOSCodeGenerator extends PlatformCodeGenerator {
String get _keyToModifierFlagMap {
final StringBuffer modifierKeyMap = StringBuffer();
for (final String name in kModifiersOfInterest) {
- modifierKeyMap.writeln(' {${toHex(logicalData.entryByName(name).iOSKeyCodeValues[0])}, kModifierFlag${lowerCamelToUpperCamel(name)}},');
+ final String line = '{${toHex(logicalData.entryByName(name).iOSKeyCodeValues[0])}, kModifierFlag${lowerCamelToUpperCamel(name)}},';
+ modifierKeyMap.writeln(' ${line.padRight(42)}// $name');
}
return modifierKeyMap.toString().trimRight();
}
@@ -84,7 +85,8 @@ class IOSCodeGenerator extends PlatformCodeGenerator {
String get _modifierFlagToKeyMap {
final StringBuffer modifierKeyMap = StringBuffer();
for (final String name in kModifiersOfInterest) {
- modifierKeyMap.writeln(' {kModifierFlag${lowerCamelToUpperCamel(name)}, ${toHex(logicalData.entryByName(name).iOSKeyCodeValues[0])}},');
+ final String line = '{kModifierFlag${lowerCamelToUpperCamel(name)}, ${toHex(logicalData.entryByName(name).iOSKeyCodeValues[0])}},';
+ modifierKeyMap.writeln(' ${line.padRight(42)}// $name');
}
return modifierKeyMap.toString().trimRight();
}
diff --git a/dev/tools/gen_keycodes/lib/keyboard_keys_code_gen.dart b/dev/tools/gen_keycodes/lib/keyboard_keys_code_gen.dart
index cd83d02e23..10c680e766 100644
--- a/dev/tools/gen_keycodes/lib/keyboard_keys_code_gen.dart
+++ b/dev/tools/gen_keycodes/lib/keyboard_keys_code_gen.dart
@@ -16,6 +16,23 @@ String _wrapString(String input) {
return wrapString(input, prefix: ' /// ');
}
+final List _maskConstants = [
+ kValueMask,
+ kPlaneMask,
+ kUnicodePlane,
+ kUnprintablePlane,
+ kFlutterPlane,
+ kStartOfPlatformPlanes,
+ kAndroidPlane,
+ kFuchsiaPlane,
+ kIosPlane,
+ kMacosPlane,
+ kGtkPlane,
+ kWindowsPlane,
+ kWebPlane,
+ kGlfwPlane,
+];
+
class SynonymKeyInfo {
SynonymKeyInfo(this.keys, this.name);
@@ -26,7 +43,6 @@ class SynonymKeyInfo {
// It won't end up being the same value because it'll be in the pseudo-key
// plane.
LogicalKeyEntry get primaryKey => keys[0];
- int get value => (primaryKey.value & ~kVariationMask) + kSynonymPlane;
String get constantName => upperCamelToLowerCamel(name);
}
@@ -37,39 +53,36 @@ class KeyboardKeysCodeGenerator extends BaseCodeGenerator {
/// Gets the generated definitions of PhysicalKeyboardKeys.
String get _physicalDefinitions {
- final StringBuffer definitions = StringBuffer();
+ final OutputLines lines = OutputLines('Physical Key Definition');
for (final PhysicalKeyEntry entry in keyData.entries) {
final String firstComment = _wrapString('Represents the location of the '
'"${entry.commentName}" key on a generalized keyboard.');
final String otherComments = _wrapString('See the function '
- '[KeyEvent.physical] for more information.');
- definitions.write('''
-
+ '[RawKeyEvent.physicalKey] for more information.');
+ lines.add(entry.usbHidCode, '''
$firstComment ///
$otherComments static const PhysicalKeyboardKey ${entry.constantName} = PhysicalKeyboardKey(${toHex(entry.usbHidCode, digits: 8)});
''');
}
- return definitions.toString();
+ return lines.sortedJoin().trimRight();
}
String get _physicalDebugNames {
- final StringBuffer result = StringBuffer();
+ final OutputLines lines = OutputLines('Physical debug names');
for (final PhysicalKeyEntry entry in keyData.entries) {
- result.write('''
- ${toHex(entry.usbHidCode, digits: 8)}: '${entry.commentName}',
-''');
+ lines.add(entry.usbHidCode, '''
+ ${toHex(entry.usbHidCode, digits: 8)}: '${entry.commentName}',''');
}
- return result.toString();
+ return lines.sortedJoin().trimRight();
}
/// Gets the generated definitions of LogicalKeyboardKeys.
String get _logicalDefinitions {
- final StringBuffer definitions = StringBuffer();
+ final OutputLines lines = OutputLines('Logical debug names');
void printKey(int flutterId, String constantName, String commentName, {String? otherComments}) {
final String firstComment = _wrapString('Represents the logical "$commentName" key on the keyboard.');
- otherComments ??= _wrapString('See the function [KeyEvent.logical] for more information.');
- definitions.write('''
-
+ otherComments ??= _wrapString('See the function [RawKeyEvent.logicalKey] for more information.');
+ lines.add(flutterId, '''
$firstComment ///
$otherComments static const LogicalKeyboardKey $constantName = LogicalKeyboardKey(${toHex(flutterId, digits: 11)});
''');
@@ -80,67 +93,71 @@ $otherComments static const LogicalKeyboardKey $constantName = LogicalKeyboardK
entry.value,
entry.constantName,
entry.commentName,
+ otherComments: _otherComments(entry.name),
);
}
- for (final SynonymKeyInfo synonymInfo in synonyms) {
- // Use the first item in the synonyms as a template for the ID to use.
- // It won't end up being the same value because it'll be in the pseudo-key
- // plane.
- final Set unionNames = synonymInfo.keys.map(
+ return lines.sortedJoin().trimRight();
+ }
+
+ String? _otherComments(String name) {
+ if (synonyms.containsKey(name)) {
+ final Set unionNames = synonyms[name]!.keys.map(
(LogicalKeyEntry entry) => entry.constantName).toSet();
- printKey(synonymInfo.value, synonymInfo.constantName, PhysicalKeyEntry.getCommentName(synonymInfo.name),
- otherComments: _wrapString('This key represents the union of the keys '
+ return _wrapString('This key represents the union of the keys '
'$unionNames when comparing keys. This key will never be generated '
- 'directly, its main use is in defining key maps.'));
+ 'directly, its main use is in defining key maps.');
}
- return definitions.toString();
+ return null;
}
String get _logicalSynonyms {
final StringBuffer result = StringBuffer();
- for (final SynonymKeyInfo synonymInfo in synonyms) {
+ for (final SynonymKeyInfo synonymInfo in synonyms.values) {
for (final LogicalKeyEntry key in synonymInfo.keys) {
- final String synonymName = upperCamelToLowerCamel(synonymInfo.name);
- result.writeln(' ${key.constantName}: $synonymName,');
+ final LogicalKeyEntry synonnym = logicalData.entryByName(synonymInfo.name);
+ result.writeln(' ${key.constantName}: ${synonnym.constantName},');
}
}
return result.toString();
}
String get _logicalKeyLabels {
- final StringBuffer result = StringBuffer();
+ final OutputLines lines = OutputLines('Logical key labels');
for (final LogicalKeyEntry entry in logicalData.entries) {
- result.write('''
- ${toHex(entry.value, digits: 11)}: '${entry.commentName}',
-''');
+ lines.add(entry.value, '''
+ ${toHex(entry.value, digits: 11)}: '${entry.commentName}',''');
}
- for (final SynonymKeyInfo synonymInfo in synonyms) {
- result.write('''
- ${toHex(synonymInfo.value)}: '${synonymInfo.name}',
-''');
- }
- return result.toString();
+ return lines.sortedJoin().trimRight();
}
/// This generates the map of USB HID codes to physical keys.
String get _predefinedHidCodeMap {
- final StringBuffer scanCodeMap = StringBuffer();
+ final OutputLines lines = OutputLines('Physical key map');
for (final PhysicalKeyEntry entry in keyData.entries) {
- scanCodeMap.writeln(' ${toHex(entry.usbHidCode)}: ${entry.constantName},');
+ lines.add(entry.usbHidCode, ' ${toHex(entry.usbHidCode)}: ${entry.constantName},');
}
- return scanCodeMap.toString().trimRight();
+ return lines.sortedJoin().trimRight();
}
/// This generates the map of Flutter key codes to logical keys.
String get _predefinedKeyCodeMap {
- final StringBuffer keyCodeMap = StringBuffer();
+ final OutputLines lines = OutputLines('Logical key map');
for (final LogicalKeyEntry entry in logicalData.entries) {
- keyCodeMap.writeln(' ${toHex(entry.value, digits: 11)}: ${entry.constantName},');
+ lines.add(entry.value, ' ${toHex(entry.value, digits: 11)}: ${entry.constantName},');
}
- for (final SynonymKeyInfo synonymInfo in synonyms) {
- keyCodeMap.writeln(' ${toHex(synonymInfo.value, digits: 11)}: ${synonymInfo.constantName},');
+ return lines.sortedJoin().trimRight();
+ }
+
+ String get _maskConstantVariables {
+ final OutputLines lines = OutputLines('Mask constants', checkDuplicate: false);
+ for (final MaskConstant constant in _maskConstants) {
+ lines.add(constant.value, '''
+${_wrapString(constant.description)} ///
+ /// This is used by platform-specific code to generate Flutter key codes.
+ static const int ${constant.lowerCamelName} = ${toHex(constant.value, digits: 11)};
+''');
}
- return keyCodeMap.toString().trimRight();
+ return lines.join().trimRight();
}
@override
@@ -156,17 +173,21 @@ $otherComments static const LogicalKeyboardKey $constantName = LogicalKeyboardK
'PHYSICAL_KEY_MAP': _predefinedHidCodeMap,
'PHYSICAL_KEY_DEFINITIONS': _physicalDefinitions,
'PHYSICAL_KEY_DEBUG_NAMES': _physicalDebugNames,
+ 'MASK_CONSTANTS': _maskConstantVariables,
};
}
- late final List synonyms = LogicalKeyData.synonyms.entries.map(
- (MapEntry> synonymDefinition) {
+ late final Map synonyms = Map.fromEntries(
+ LogicalKeyData.synonyms.entries.map((MapEntry> synonymDefinition) {
final List entries = synonymDefinition.value.map(
(String name) => logicalData.entryByName(name)).toList();
- return SynonymKeyInfo(
- entries,
+ return MapEntry(
synonymDefinition.key,
+ SynonymKeyInfo(
+ entries,
+ synonymDefinition.key,
+ ),
);
- }
- ).toList();
+ }),
+ );
}
diff --git a/dev/tools/gen_keycodes/lib/keyboard_maps_code_gen.dart b/dev/tools/gen_keycodes/lib/keyboard_maps_code_gen.dart
index 5f8e49b510..b83f283ddf 100644
--- a/dev/tools/gen_keycodes/lib/keyboard_maps_code_gen.dart
+++ b/dev/tools/gen_keycodes/lib/keyboard_maps_code_gen.dart
@@ -51,24 +51,24 @@ class KeyboardMapsCodeGenerator extends BaseCodeGenerator {
/// This generates the map of GLFW number pad key codes to logical keys.
String get _glfwNumpadMap {
- final StringBuffer glfwNumpadMap = StringBuffer();
+ final OutputLines lines = OutputLines('GLFW numpad map');
for (final PhysicalKeyEntry entry in _numpadKeyData) {
for (final int code in entry.glfwKeyCodes) {
- glfwNumpadMap.writeln(' $code: LogicalKeyboardKey.${entry.constantName},');
+ lines.add(code, ' $code: LogicalKeyboardKey.${entry.constantName},');
}
}
- return glfwNumpadMap.toString().trimRight();
+ return lines.sortedJoin().trimRight();
}
/// This generates the map of GLFW key codes to logical keys.
String get _glfwKeyCodeMap {
- final StringBuffer glfwKeyCodeMap = StringBuffer();
+ final OutputLines lines = OutputLines('GLFW key code map');
for (final PhysicalKeyEntry entry in keyData.entries) {
for (final int code in entry.glfwKeyCodes) {
- glfwKeyCodeMap.writeln(' $code: LogicalKeyboardKey.${entry.constantName},');
+ lines.add(code, ' $code: LogicalKeyboardKey.${entry.constantName},');
}
}
- return glfwKeyCodeMap.toString().trimRight();
+ return lines.sortedJoin().trimRight();
}
/// This generates the map of GTK number pad key codes to logical keys.
@@ -95,13 +95,14 @@ class KeyboardMapsCodeGenerator extends BaseCodeGenerator {
/// This generates the map of XKB USB HID codes to physical keys.
String get _xkbScanCodeMap {
- final StringBuffer xkbScanCodeMap = StringBuffer();
+ final OutputLines lines = OutputLines('GTK scancode map');
for (final PhysicalKeyEntry entry in keyData.entries) {
if (entry.xKbScanCode != null) {
- xkbScanCodeMap.writeln(' ${toHex(entry.xKbScanCode)}: PhysicalKeyboardKey.${entry.constantName},');
+ lines.add(entry.xKbScanCode!,
+ ' ${toHex(entry.xKbScanCode)}: PhysicalKeyboardKey.${entry.constantName},');
}
}
- return xkbScanCodeMap.toString().trimRight();
+ return lines.sortedJoin().trimRight();
}
/// This generates the map of Android key codes to logical keys.
@@ -128,26 +129,26 @@ class KeyboardMapsCodeGenerator extends BaseCodeGenerator {
/// This generates the map of Android scan codes to physical keys.
String get _androidScanCodeMap {
- final StringBuffer androidScanCodeMap = StringBuffer();
+ final OutputLines lines = OutputLines('Android scancode map');
for (final PhysicalKeyEntry entry in keyData.entries) {
if (entry.androidScanCodes != null) {
for (final int code in entry.androidScanCodes) {
- androidScanCodeMap.writeln(' $code: PhysicalKeyboardKey.${entry.constantName},');
+ lines.add(code, ' $code: PhysicalKeyboardKey.${entry.constantName},');
}
}
}
- return androidScanCodeMap.toString().trimRight();
+ return lines.sortedJoin().trimRight();
}
/// This generates the map of Windows scan codes to physical keys.
String get _windowsScanCodeMap {
- final StringBuffer windowsScanCodeMap = StringBuffer();
+ final OutputLines lines = OutputLines('Windows scancode map');
for (final PhysicalKeyEntry entry in keyData.entries) {
if (entry.windowsScanCode != null) {
- windowsScanCodeMap.writeln(' ${toHex(entry.windowsScanCode)}: PhysicalKeyboardKey.${entry.constantName},');
+ lines.add(entry.windowsScanCode!, ' ${entry.windowsScanCode}: PhysicalKeyboardKey.${entry.constantName},');
}
}
- return windowsScanCodeMap.toString().trimRight();
+ return lines.sortedJoin().trimRight();
}
/// This generates the map of Windows number pad key codes to logical keys.
@@ -181,34 +182,34 @@ class KeyboardMapsCodeGenerator extends BaseCodeGenerator {
/// This generates the map of macOS key codes to physical keys.
String get _macOSScanCodeMap {
- final StringBuffer macOSScanCodeMap = StringBuffer();
+ final OutputLines lines = OutputLines('macOS scancode map');
for (final PhysicalKeyEntry entry in keyData.entries) {
if (entry.macOSScanCode != null) {
- macOSScanCodeMap.writeln(' ${toHex(entry.macOSScanCode)}: PhysicalKeyboardKey.${entry.constantName},');
+ lines.add(entry.macOSScanCode!, ' ${toHex(entry.macOSScanCode)}: PhysicalKeyboardKey.${entry.constantName},');
}
}
- return macOSScanCodeMap.toString().trimRight();
+ return lines.sortedJoin().trimRight();
}
/// This generates the map of macOS number pad key codes to logical keys.
String get _macOSNumpadMap {
- final StringBuffer macOSNumPadMap = StringBuffer();
+ final OutputLines lines = OutputLines('macOS numpad map');
for (final PhysicalKeyEntry entry in _numpadKeyData) {
if (entry.macOSScanCode != null) {
- macOSNumPadMap.writeln(' ${toHex(entry.macOSScanCode)}: LogicalKeyboardKey.${entry.constantName},');
+ lines.add(entry.macOSScanCode!, ' ${toHex(entry.macOSScanCode)}: LogicalKeyboardKey.${entry.constantName},');
}
}
- return macOSNumPadMap.toString().trimRight();
+ return lines.sortedJoin().trimRight();
}
String get _macOSFunctionKeyMap {
- final StringBuffer macOSFunctionKeyMap = StringBuffer();
+ final OutputLines lines = OutputLines('macOS function key map');
for (final PhysicalKeyEntry entry in _functionKeyData) {
if (entry.macOSScanCode != null) {
- macOSFunctionKeyMap.writeln(' ${toHex(entry.macOSScanCode)}: LogicalKeyboardKey.${entry.constantName},');
+ lines.add(entry.macOSScanCode!, ' ${toHex(entry.macOSScanCode)}: LogicalKeyboardKey.${entry.constantName},');
}
}
- return macOSFunctionKeyMap.toString().trimRight();
+ return lines.sortedJoin().trimRight();
}
/// This generates the map of macOS key codes to physical keys.
@@ -290,38 +291,38 @@ class KeyboardMapsCodeGenerator extends BaseCodeGenerator {
/// This generates the map of Web KeyboardEvent codes to physical keys.
String get _webPhysicalKeyMap {
- final StringBuffer result = StringBuffer();
+ final OutputLines lines = OutputLines('Web physical key map');
for (final PhysicalKeyEntry entry in keyData.entries) {
if (entry.name != null) {
- result.writeln(" '${entry.name}': PhysicalKeyboardKey.${entry.constantName},");
+ lines.add(entry.name, " '${entry.name}': PhysicalKeyboardKey.${entry.constantName},");
}
}
- return result.toString().trimRight();
+ return lines.sortedJoin().trimRight();
}
String get _webNumpadMap {
- final StringBuffer result = StringBuffer();
+ final OutputLines lines = OutputLines('Web numpad map');
for (final LogicalKeyEntry entry in _numpadLogicalKeyData) {
if (entry.name != null) {
- result.writeln(" '${entry.name}': LogicalKeyboardKey.${entry.constantName},");
+ lines.add(entry.name, " '${entry.name}': LogicalKeyboardKey.${entry.constantName},");
}
}
- return result.toString().trimRight();
+ return lines.sortedJoin().trimRight();
}
/// This generates the map of Web number pad codes to logical keys.
String get _webLocationMap {
final String jsonRaw = File(path.join(dataRoot, 'web_logical_location_mapping.json')).readAsStringSync();
final Map> locationMap = parseMapOfListOfNullableString(jsonRaw);
- final StringBuffer result = StringBuffer();
+ final OutputLines lines = OutputLines('Web location map');
locationMap.forEach((String key, List keyNames) {
final String keyStrings = keyNames.map((String? keyName) {
final String? constantName = keyName == null ? null : logicalData.entryByName(keyName).constantName;
return constantName != null ? 'LogicalKeyboardKey.$constantName' : 'null';
}).join(', ');
- result.writeln(" '$key': [$keyStrings],");
+ lines.add(key, " '$key': [$keyStrings],");
});
- return result.toString().trimRight();
+ return lines.sortedJoin().trimRight();
}
@override
diff --git a/dev/tools/gen_keycodes/lib/logical_key_data.dart b/dev/tools/gen_keycodes/lib/logical_key_data.dart
index cf75eda638..c55c36c4bf 100644
--- a/dev/tools/gen_keycodes/lib/logical_key_data.dart
+++ b/dev/tools/gen_keycodes/lib/logical_key_data.dart
@@ -120,15 +120,17 @@ class LogicalKeyData {
/// Key Enum Value
/// DOM_KEY_MAP("Accel", ACCEL, 0x0101),
///
- /// Flutter's supplemental_key_data.inc also has a new format
- /// that uses a character as the 3rd argument.
+ /// Flutter's supplemental_key_data.inc also has some new formats.
+ /// The following format uses a character as the 3rd argument.
/// Key Enum Character
/// DOM_KEY_UNI("KeyB", KEY_B, 'b'),
+ ///
+ /// The following format should be mapped to the Flutter plane.
+ /// Key Enum Character
+ /// FLUTTER_KEY_MAP("Lang4", LANG4, 0x00013),
static void _readKeyEntries(Map data, String input) {
- final Map unusedNumpad = Map.from(_printableToNumpads);
-
final RegExp domKeyRegExp = RegExp(
- r'DOM_KEY_(?UNI|MAP)\s*\(\s*'
+ r'(?DOM|FLUTTER)_KEY_(?UNI|MAP)\s*\(\s*'
r'"(?[^\s]+?)",\s*'
r'(?[^\s]+?),\s*'
r"(?:0[xX](?[a-fA-F0-9]+)|'(?.)')\s*"
@@ -140,6 +142,7 @@ class LogicalKeyData {
final RegExp commentRegExp = RegExp(r'//.*$', multiLine: true);
input = input.replaceAll(commentRegExp, '');
for (final RegExpMatch match in domKeyRegExp.allMatches(input)) {
+ final String source = match.namedGroup('source')!;
final String webName = match.namedGroup('name')!;
// ".AltGraphLatch" is consumed internally and not expressed to the Web.
if (webName.startsWith('.')) {
@@ -150,51 +153,21 @@ class LogicalKeyData {
getHex(match.namedGroup('unicode')!) :
match.namedGroup('char')!.codeUnitAt(0);
final String? keyLabel = match.namedGroup('kind')! == 'UNI' ? String.fromCharCode(value) : null;
- // If it's a modifier key, add left and right keys instead.
- // Don't add web names and values; they're solved with locations.
- if (_chromeModifiers.containsKey(name)) {
- final _ModifierPair pair = _chromeModifiers[name]!;
- data[pair.left] = LogicalKeyEntry.fromName(
- value: value + kLeftModifierPlane,
- name: pair.left,
- keyLabel: null, // Modifier keys don't have keyLabels
- )..webNames.add(pair.left);
- data[pair.right] = LogicalKeyEntry.fromName(
- value: value + kRightModifierPlane,
- name: pair.right,
- keyLabel: null, // Modifier keys don't have keyLabels
- )..webNames.add(pair.right);
+ // Skip modifier keys from DOM. They will be added with supplemental data.
+ if (_chromeModifiers.containsKey(name) && source == 'DOM') {
continue;
}
- // If it has a numpad counterpart, also add the numpad key.
- final String? char = value < 256 ? String.fromCharCode(value) : null;
- if (char != null && _printableToNumpads.containsKey(char)) {
- final String numpadName = _printableToNumpads[char]!;
- data[numpadName] = LogicalKeyEntry.fromName(
- value: char.codeUnitAt(0) + kNumpadPlane,
- name: numpadName,
- keyLabel: null, // Don't add keyLabel for numpad counterparts
- )..webNames.add(numpadName);
- unusedNumpad.remove(char);
- }
-
+ final bool isPrintable = (keyLabel != null && !_isControlCharacter(keyLabel))
+ || printable.containsKey(name);
data.putIfAbsent(name, () {
- final bool isPrintable = (keyLabel != null && !_isControlCharacter(keyLabel))
- || printable.containsKey(name)
- || value == 0; // "None" key
return LogicalKeyEntry.fromName(
- value: value + (isPrintable ? kUnicodePlane : kUnprintablePlane),
+ value: toPlane(value, _sourceToPlane(source, isPrintable)),
name: name,
keyLabel: keyLabel,
)..webNames.add(webName);
});
}
-
- // Make sure every Numpad key that we care about has been defined.
- unusedNumpad.forEach((String key, String value) {
- print('Undefined numpad key $value');
- });
}
static void _readMacOsKeyCodes(
@@ -347,11 +320,11 @@ class LogicalKeyData {
return 0;
final String? keyLabel = printable[entry.constantName];
if (keyLabel != null && !entry.constantName.startsWith('numpad')) {
- return kUnicodePlane | (keyLabel.codeUnitAt(0) & kValueMask);
+ return toPlane(keyLabel.codeUnitAt(0), kUnicodePlane.value);
} else {
final PhysicalKeyEntry? physicalEntry = physicalData.tryEntryByName(entry.name);
if (physicalEntry != null) {
- return kHidPlane | (physicalEntry.usbHidCode & kValueMask);
+ return toPlane(physicalEntry.usbHidCode, kFuchsiaPlane.value);
}
}
})();
@@ -376,14 +349,6 @@ class LogicalKeyData {
.cast();
})();
- // Map printable to corresponding numpad key name
- static late final Map _printableToNumpads = () {
- final String rawJson = File(path.join(dataRoot, 'printable_to_numpads.json',)).readAsStringSync();
- return (json.decode(rawJson) as Map).map((String key, dynamic value) {
- return MapEntry(key, value as String);
- });
- }();
-
/// Returns the static map of synonym representations.
///
/// These include synonyms for keys which don't have printable
@@ -400,6 +365,18 @@ class LogicalKeyData {
return MapEntry>(name, names);
});
})();
+
+ static int _sourceToPlane(String source, bool isPrintable) {
+ switch (source) {
+ case 'DOM':
+ return isPrintable ? kUnicodePlane.value : kUnprintablePlane.value;
+ case 'FLUTTER':
+ return kFlutterPlane.value;
+ default:
+ assert(false, 'Unrecognized logical key source $source');
+ return kFlutterPlane.value;
+ }
+ }
}
diff --git a/dev/tools/gen_keycodes/lib/macos_code_gen.dart b/dev/tools/gen_keycodes/lib/macos_code_gen.dart
index 85c09cb87d..316a1e43ca 100644
--- a/dev/tools/gen_keycodes/lib/macos_code_gen.dart
+++ b/dev/tools/gen_keycodes/lib/macos_code_gen.dart
@@ -25,10 +25,6 @@ const List kModifiersOfInterest = [
const List kSpecialPhysicalKeys = ['CapsLock'];
const List kSpecialLogicalKeys = ['CapsLock'];
-String _toConstantVariableName(String variableName) {
- return 'k${variableName[0].toUpperCase()}${variableName.substring(1)}';
-}
-
/// Generates the key mapping for macOS, based on the information in the key
/// data structure given to it.
class MacOSCodeGenerator extends PlatformCodeGenerator {
@@ -37,36 +33,36 @@ class MacOSCodeGenerator extends PlatformCodeGenerator {
/// This generates the map of macOS key codes to physical keys.
String get _scanCodeMap {
- final StringBuffer scanCodeMap = StringBuffer();
+ final OutputLines lines = OutputLines('macOS scancode map');
for (final PhysicalKeyEntry entry in keyData.entries) {
if (entry.macOSScanCode != null) {
- scanCodeMap.writeln(' @${toHex(entry.macOSScanCode)} : @${toHex(entry.usbHidCode)}, // ${entry.constantName}');
+ lines.add(entry.macOSScanCode!, ' @${toHex(entry.macOSScanCode)} : @${toHex(entry.usbHidCode)}, // ${entry.constantName}');
}
}
- return scanCodeMap.toString().trimRight();
+ return lines.sortedJoin().trimRight();
}
String get _keyCodeToLogicalMap {
- final StringBuffer result = StringBuffer();
+ final OutputLines lines = OutputLines('macOS keycode map');
for (final LogicalKeyEntry entry in logicalData.entries) {
zipStrict(entry.macOSKeyCodeValues, entry.macOSKeyCodeNames, (int macOSValue, String macOSName) {
- result.writeln(' @${toHex(macOSValue)} : @${toHex(entry.value, digits: 11)}, // $macOSName');
+ lines.add(macOSValue,
+ ' @${toHex(macOSValue)} : @${toHex(entry.value, digits: 11)}, // $macOSName -> ${entry.constantName}');
});
}
- return result.toString().trimRight();
+ return lines.sortedJoin().trimRight();
}
/// This generates the mask values for the part of a key code that defines its plane.
String get _maskConstants {
final StringBuffer buffer = StringBuffer();
+ const List maskConstants = [
+ kValueMask,
+ kUnicodePlane,
+ kMacosPlane,
+ ];
for (final MaskConstant constant in maskConstants) {
- buffer.writeln('/**');
- buffer.write(constant.description
- .map((String line) => wrapString(line, prefix: ' * '))
- .join(' *\n'));
- buffer.writeln(' */');
- buffer.writeln('const uint64_t ${_toConstantVariableName(constant.name)} = ${toHex(constant.value, digits: 11)};');
- buffer.writeln('');
+ buffer.writeln('const uint64_t k${constant.upperCamelName} = ${toHex(constant.value, digits: 11)};');
}
return buffer.toString().trimRight();
}
diff --git a/dev/tools/gen_keycodes/lib/physical_key_data.dart b/dev/tools/gen_keycodes/lib/physical_key_data.dart
index 3c60e9ead8..957b990c85 100644
--- a/dev/tools/gen_keycodes/lib/physical_key_data.dart
+++ b/dev/tools/gen_keycodes/lib/physical_key_data.dart
@@ -220,7 +220,7 @@ class PhysicalKeyData {
final String enumName = match.namedGroup('enum')!.replaceAll('MINIMIUM', 'MINIMUM');
final String name = chromiumCode ?? shoutingToUpperCamel(enumName);
- if (name == 'IntlHash') {
+ if (name == 'IntlHash' || name == 'None') {
// Skip key that is not actually generated by any keyboard.
continue;
}
diff --git a/dev/tools/gen_keycodes/lib/testing_key_codes_gen.dart b/dev/tools/gen_keycodes/lib/testing_key_codes_gen.dart
new file mode 100644
index 0000000000..3f48dd6082
--- /dev/null
+++ b/dev/tools/gen_keycodes/lib/testing_key_codes_gen.dart
@@ -0,0 +1,51 @@
+// 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.
+
+import 'package:path/path.dart' as path;
+
+import 'base_code_gen.dart';
+import 'logical_key_data.dart';
+import 'physical_key_data.dart';
+import 'utils.dart';
+
+String _toUpperCammel(String lowerCammel) {
+ return lowerCammel.substring(0, 1).toUpperCase() + lowerCammel.substring(1);
+}
+
+/// Generates the common/testing/key_codes.h based on the information in the key
+/// data structure given to it.
+class KeyCodesCcGenerator extends BaseCodeGenerator {
+ KeyCodesCcGenerator(PhysicalKeyData keyData, LogicalKeyData logicalData) : super(keyData, logicalData);
+
+ /// Gets the generated definitions of PhysicalKeyboardKeys.
+ String get _physicalDefinitions {
+ final OutputLines lines = OutputLines('Physical Key list');
+ for (final PhysicalKeyEntry entry in keyData.entries) {
+ lines.add(entry.usbHidCode, '''
+constexpr uint64_t kPhysical${_toUpperCammel(entry.constantName)} = ${toHex(entry.usbHidCode, digits: 8)};''');
+ }
+ return lines.sortedJoin().trimRight();
+ }
+
+ /// Gets the generated definitions of PhysicalKeyboardKeys.
+ String get _logicalDefinitions {
+ final OutputLines lines = OutputLines('Logical Key list');
+ for (final LogicalKeyEntry entry in logicalData.entries) {
+ lines.add(entry.value, '''
+constexpr uint64_t kLogical${_toUpperCammel(entry.constantName)} = ${toHex(entry.value, digits: 11)};''');
+ }
+ return lines.sortedJoin().trimRight();
+ }
+
+ @override
+ String get templatePath => path.join(dataRoot, 'key_codes_h.tmpl');
+
+ @override
+ Map mappings() {
+ return {
+ 'LOGICAL_KEY_DEFINITIONS': _logicalDefinitions,
+ 'PHYSICAL_KEY_DEFINITIONS': _physicalDefinitions,
+ };
+ }
+}
diff --git a/dev/tools/gen_keycodes/lib/utils.dart b/dev/tools/gen_keycodes/lib/utils.dart
index 7be65c6318..cf8808ee89 100644
--- a/dev/tools/gen_keycodes/lib/utils.dart
+++ b/dev/tools/gen_keycodes/lib/utils.dart
@@ -7,6 +7,8 @@ import 'dart:io';
import 'package:path/path.dart' as path;
+import 'constants.dart';
+
/// The location of the Flutter root directory, based on the known location of
/// this script.
final Directory flutterRoot = Directory(path.dirname(Platform.script.toFilePath())).parent.parent.parent.parent;
@@ -221,32 +223,63 @@ void addNameValue(List names, List values, String name, int value)
}
}
+/// The information for a line used by [OutputLines].
+class OutputLine> {
+ const OutputLine(this.key, this.value);
+
+ final T key;
+ final String value;
+}
+
/// A utility class to build join a number of lines in a sorted order.
///
/// Use [add] to add a line and associate it with an index. Use [sortedJoin] to
/// get the joined string of these lines joined sorting them in the order of the
/// index.
class OutputLines> {
- OutputLines(this.mapName);
+ OutputLines(this.mapName, {this.checkDuplicate = true});
+
+ /// If true, then lines with duplicate keys will be warned and discarded.
+ ///
+ /// Default to true.
+ final bool checkDuplicate;
/// The name for this map.
///
/// Used in warning messages.
final String mapName;
- final Map lines = {};
+ final Set keys = {};
+ final List> lines = >[];
void add(T code, String line) {
- if (lines.containsKey(code)) {
- print('Warn: $mapName is requested to add line $code as:\n $line\n but it already exists as:\n ${lines[code]}');
+ if (checkDuplicate) {
+ if (keys.contains(code)) {
+ final OutputLine existing = lines.firstWhere((OutputLine line) => line.key == code);
+ print('Warn: $mapName is requested to add line $code as:\n $line\n but it already exists as:\n ${existing.value}');
+ return;
+ }
+ keys.add(code);
}
- lines[code] = line;
+ lines.add(OutputLine(code, line));
+ }
+
+ String join() {
+ return lines.map((OutputLine line) => line.value).join('\n');
}
String sortedJoin() {
- return (lines.entries.toList()
- ..sort((MapEntry a, MapEntry b) => a.key.compareTo(b.key)))
- .map((MapEntry entry) => entry.value)
+ return (lines.sublist(0)
+ ..sort((OutputLine a, OutputLine b) => a.key.compareTo(b.key)))
+ .map((OutputLine line) => line.value)
.join('\n');
}
}
+
+int toPlane(int value, int plane) {
+ return (value & kValueMask.value) + (plane & kPlaneMask.value);
+}
+
+int getPlane(int value) {
+ return value & kPlaneMask.value;
+}
diff --git a/dev/tools/gen_keycodes/lib/web_code_gen.dart b/dev/tools/gen_keycodes/lib/web_code_gen.dart
index b5730a065b..845d08f755 100644
--- a/dev/tools/gen_keycodes/lib/web_code_gen.dart
+++ b/dev/tools/gen_keycodes/lib/web_code_gen.dart
@@ -5,6 +5,7 @@
import 'package:path/path.dart' as path;
import 'base_code_gen.dart';
+import 'constants.dart';
import 'logical_key_data.dart';
import 'physical_key_data.dart';
import 'utils.dart';
@@ -23,8 +24,11 @@ class WebCodeGenerator extends PlatformCodeGenerator {
String get _webLogicalKeyCodeMap {
final OutputLines lines = OutputLines('Web logical map');
for (final LogicalKeyEntry entry in logicalData.entries) {
- for (final String name in entry.webNames) {
- lines.add(name, " '$name': ${toHex(entry.value, digits: 11)},");
+ final int plane = getPlane(entry.value);
+ if (plane == kUnprintablePlane.value) {
+ for (final String name in entry.webNames) {
+ lines.add(name, " '$name': ${toHex(entry.value, digits: 11)},");
+ }
}
}
return lines.sortedJoin().trimRight();
@@ -32,25 +36,29 @@ class WebCodeGenerator extends PlatformCodeGenerator {
/// This generates the map of Web KeyboardEvent codes to physical key USB HID codes.
String get _webPhysicalKeyCodeMap {
- final StringBuffer result = StringBuffer();
+ final OutputLines lines = OutputLines('Web physical map');
for (final PhysicalKeyEntry entry in keyData.entries) {
if (entry.name != null) {
- result.writeln(" '${entry.name}': ${toHex(entry.usbHidCode)},");
+ lines.add(entry.name,
+ " '${entry.name}': ${toHex(entry.usbHidCode)}, // ${entry.constantName}");
}
}
- return result.toString().trimRight();
+ return lines.sortedJoin().trimRight();
}
/// This generates the map of Web number pad codes to logical key ids.
String get _webLogicalLocationMap {
- final StringBuffer result = StringBuffer();
+ final OutputLines lines = OutputLines('Web logical location map');
_logicalLocationMap.forEach((String webKey, List locations) {
final String valuesString = locations.map((String? value) {
- return value == null ? 'null' : toHex(logicalData.entryByName(value).value, digits: 10);
+ return value == null ? 'null' : toHex(logicalData.entryByName(value).value, digits: 11);
}).join(', ');
- result.writeln(" '$webKey': [$valuesString],");
+ final String namesString = locations.map((String? value) {
+ return value == null ? 'null' : logicalData.entryByName(value).constantName;
+ }).join(', ');
+ lines.add(webKey, " '$webKey': [$valuesString], // $namesString");
});
- return result.toString().trimRight();
+ return lines.sortedJoin().trimRight();
}
final Map> _logicalLocationMap;
diff --git a/dev/tools/gen_keycodes/lib/windows_code_gen.dart b/dev/tools/gen_keycodes/lib/windows_code_gen.dart
index f8553c544c..cc83a4ea41 100644
--- a/dev/tools/gen_keycodes/lib/windows_code_gen.dart
+++ b/dev/tools/gen_keycodes/lib/windows_code_gen.dart
@@ -5,6 +5,7 @@
import 'package:path/path.dart' as path;
import 'base_code_gen.dart';
+import 'constants.dart';
import 'logical_key_data.dart';
import 'physical_key_data.dart';
import 'utils.dart';
@@ -21,24 +22,29 @@ class WindowsCodeGenerator extends PlatformCodeGenerator {
/// This generates the map of Windows scan codes to physical keys.
String get _windowsScanCodeMap {
- final StringBuffer windowsScanCodeMap = StringBuffer();
+ final OutputLines lines = OutputLines('Windows scancode map');
for (final PhysicalKeyEntry entry in keyData.entries) {
if (entry.windowsScanCode != null) {
- windowsScanCodeMap.writeln(' {${toHex(entry.windowsScanCode)}, ${toHex(entry.usbHidCode)}}, // ${entry.constantName}');
+ lines.add(entry.windowsScanCode!,
+ ' {${toHex(entry.windowsScanCode)}, ${toHex(entry.usbHidCode)}}, // ${entry.constantName}');
}
}
- return windowsScanCodeMap.toString().trimRight();
+ return lines.sortedJoin().trimRight();
}
/// This generates the map of Windows key codes to logical keys.
String get _windowsLogicalKeyCodeMap {
- final StringBuffer result = StringBuffer();
+ final OutputLines lines = OutputLines('Windows logical map');
for (final LogicalKeyEntry entry in logicalData.entries) {
- zipStrict(entry.windowsValues, entry.windowsNames, (int windowsValue, String windowsName) {
- result.writeln(' {${toHex(windowsValue)}, ${toHex(entry.value, digits: 11)}}, // $windowsName');
- });
+ zipStrict(entry.windowsValues, entry.windowsNames,
+ (int windowsValue, String windowsName) {
+ lines.add(windowsValue,
+ ' {${toHex(windowsValue)}, ${toHex(entry.value, digits: 11)}}, '
+ '// $windowsName -> ${entry.constantName}');
+ },
+ );
}
- return result.toString().trimRight();
+ return lines.sortedJoin().trimRight();
}
/// This generates the map from scan code to logical keys.
@@ -47,16 +53,32 @@ class WindowsCodeGenerator extends PlatformCodeGenerator {
/// key codes are either 0 or ambiguous (multiple keys using the same key
/// code), these keys are resolved by scan codes.
String get _scanCodeToLogicalMap {
- final StringBuffer result = StringBuffer();
+ final OutputLines lines = OutputLines('Windows scancode to logical map');
_scancodeToLogical.forEach((String scanCodeName, String logicalName) {
final PhysicalKeyEntry physicalEntry = keyData.entryByName(scanCodeName);
- final int logicalValue = logicalData.entryByName(logicalName).value;
- result.writeln(' {${toHex(physicalEntry.windowsScanCode)}, ${toHex(logicalValue, digits: 10)}}, // ${physicalEntry.name}');
+ final LogicalKeyEntry logicalEntry = logicalData.entryByName(logicalName);
+ lines.add(physicalEntry.windowsScanCode!,
+ ' {${toHex(physicalEntry.windowsScanCode)}, ${toHex(logicalEntry.value, digits: 11)}}, '
+ '// ${physicalEntry.constantName} -> ${logicalEntry.constantName}');
});
- return result.toString().trimRight();
+ return lines.sortedJoin().trimRight();
}
final Map _scancodeToLogical;
+ /// This generates the mask values for the part of a key code that defines its plane.
+ String get _maskConstants {
+ final StringBuffer buffer = StringBuffer();
+ const List maskConstants = [
+ kValueMask,
+ kUnicodePlane,
+ kWindowsPlane,
+ ];
+ for (final MaskConstant constant in maskConstants) {
+ buffer.writeln('const uint64_t KeyboardKeyEmbedderHandler::${constant.lowerCamelName} = ${toHex(constant.value, digits: 11)};');
+ }
+ return buffer.toString().trimRight();
+ }
+
@override
String get templatePath => path.join(dataRoot, 'windows_flutter_key_map_cc.tmpl');
@@ -70,6 +92,7 @@ class WindowsCodeGenerator extends PlatformCodeGenerator {
'WINDOWS_SCAN_CODE_MAP': _windowsScanCodeMap,
'WINDOWS_SCAN_CODE_TO_LOGICAL_MAP': _scanCodeToLogicalMap,
'WINDOWS_KEY_CODE_MAP': _windowsLogicalKeyCodeMap,
+ 'MASK_CONSTANTS': _maskConstants,
};
}
}
diff --git a/packages/flutter/lib/src/services/keyboard_key.dart b/packages/flutter/lib/src/services/keyboard_key.dart
index 7ceeb35d91..de4d6cdf28 100644
--- a/packages/flutter/lib/src/services/keyboard_key.dart
+++ b/packages/flutter/lib/src/services/keyboard_key.dart
@@ -280,7 +280,7 @@ class LogicalKeyboardKey extends KeyboardKey {
/// would be 0x1020000ffff, but once Flutter added the "doWhatIMean" key to
/// the definitions below, the new code would be 0x0020000ffff for all
/// platforms that had a "do what I mean" key from then on.
- bool get isAutogenerated => (keyId & autogeneratedMask) != 0;
+ bool get isAutogenerated => (keyId & planeMask) >= startOfPlatformPlanes;
/// Returns a set of pseudo-key synonyms for the given `key`.
///
@@ -326,46 +326,74 @@ class LogicalKeyboardKey extends KeyboardKey {
/// Mask for the 32-bit value portion of the key code.
///
/// This is used by platform-specific code to generate Flutter key codes.
- static const int valueMask = 0x000FFFFFFFF;
+ static const int valueMask = 0x000ffffffff;
- /// Mask for the platform prefix portion of the key code.
+ /// Mask for the plane prefix portion of the key code.
///
/// This is used by platform-specific code to generate Flutter key codes.
- static const int platformMask = 0x0FF00000000;
+ static const int planeMask = 0x0ff00000000;
- /// Mask for the auto-generated bit portion of the key code.
- ///
- /// This is used by platform-specific code to generate new Flutter key codes
- /// for keys which are not recognized.
- static const int autogeneratedMask = 0x10000000000;
-
- /// Mask for the synonym pseudo-keys generated for keys which appear in more
- /// than one place on the keyboard.
- ///
- /// IDs in this range are used to represent keys which appear in multiple
- /// places on the keyboard, such as the SHIFT, ALT, CTRL, and numeric keypad
- /// keys. These key codes will never be generated by the key event system, but
- /// may be used in key maps to represent the union of all the keys of each
- /// type in order to match them.
- ///
- /// To look up the synonyms that are defined, look in the [synonyms] map.
- static const int synonymMask = 0x20000000000;
-
- /// The code prefix for keys which have a Unicode representation.
+ /// The plane value for keys which have a Unicode representation.
///
/// This is used by platform-specific code to generate Flutter key codes.
static const int unicodePlane = 0x00000000000;
- /// The code prefix for keys which do not have a Unicode representation.
+ /// The plane value for keys defined by Chromium and does not have a Unicode
+ /// representation.
///
- /// This is used by platform-specific code to generate Flutter key codes using
- /// HID Usage codes.
- static const int hidPlane = 0x00100000000;
+ /// This is used by platform-specific code to generate Flutter key codes.
+ static const int unprintablePlane = 0x00100000000;
- /// Represents the logical "None" key on the keyboard.
+ /// The plane value for keys defined by Flutter.
///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey none = LogicalKeyboardKey(0x00000000000);
+ /// This is used by platform-specific code to generate Flutter key codes.
+ static const int flutterPlane = 0x00200000000;
+
+ /// The platform plane with the lowest mask value, beyond which the keys are
+ /// considered autogenerated.
+ ///
+ /// This is used by platform-specific code to generate Flutter key codes.
+ static const int startOfPlatformPlanes = 0x01100000000;
+
+ /// The plane value for the private keys defined by the Android embedding.
+ ///
+ /// This is used by platform-specific code to generate Flutter key codes.
+ static const int androidPlane = 0x01100000000;
+
+ /// The plane value for the private keys defined by the Fuchsia embedding.
+ ///
+ /// This is used by platform-specific code to generate Flutter key codes.
+ static const int fuchsiaPlane = 0x01200000000;
+
+ /// The plane value for the private keys defined by the iOS embedding.
+ ///
+ /// This is used by platform-specific code to generate Flutter key codes.
+ static const int iosPlane = 0x01300000000;
+
+ /// The plane value for the private keys defined by the macOS embedding.
+ ///
+ /// This is used by platform-specific code to generate Flutter key codes.
+ static const int macosPlane = 0x01400000000;
+
+ /// The plane value for the private keys defined by the Gtk embedding.
+ ///
+ /// This is used by platform-specific code to generate Flutter key codes.
+ static const int gtkPlane = 0x01500000000;
+
+ /// The plane value for the private keys defined by the Windows embedding.
+ ///
+ /// This is used by platform-specific code to generate Flutter key codes.
+ static const int windowsPlane = 0x01600000000;
+
+ /// The plane value for the private keys defined by the Web embedding.
+ ///
+ /// This is used by platform-specific code to generate Flutter key codes.
+ static const int webPlane = 0x01700000000;
+
+ /// The plane value for the private keys defined by the GLFW embedding.
+ ///
+ /// This is used by platform-specific code to generate Flutter key codes.
+ static const int glfwPlane = 0x01800000000;
/// Represents the logical "Space" key on the keyboard.
///
@@ -715,1891 +743,1890 @@ class LogicalKeyboardKey extends KeyboardKey {
/// Represents the logical "Unidentified" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey unidentified = LogicalKeyboardKey(0x01000000001);
+ static const LogicalKeyboardKey unidentified = LogicalKeyboardKey(0x00100000001);
/// Represents the logical "Backspace" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey backspace = LogicalKeyboardKey(0x01000000008);
+ static const LogicalKeyboardKey backspace = LogicalKeyboardKey(0x00100000008);
/// Represents the logical "Tab" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey tab = LogicalKeyboardKey(0x01000000009);
+ static const LogicalKeyboardKey tab = LogicalKeyboardKey(0x00100000009);
/// Represents the logical "Enter" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey enter = LogicalKeyboardKey(0x0100000000d);
+ static const LogicalKeyboardKey enter = LogicalKeyboardKey(0x0010000000d);
/// Represents the logical "Escape" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey escape = LogicalKeyboardKey(0x0100000001b);
+ static const LogicalKeyboardKey escape = LogicalKeyboardKey(0x0010000001b);
/// Represents the logical "Delete" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey delete = LogicalKeyboardKey(0x0100000007f);
+ static const LogicalKeyboardKey delete = LogicalKeyboardKey(0x0010000007f);
/// Represents the logical "Accel" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey accel = LogicalKeyboardKey(0x01000000101);
+ static const LogicalKeyboardKey accel = LogicalKeyboardKey(0x00100000101);
/// Represents the logical "Alt Graph" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey altGraph = LogicalKeyboardKey(0x01000000103);
+ static const LogicalKeyboardKey altGraph = LogicalKeyboardKey(0x00100000103);
/// Represents the logical "Caps Lock" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey capsLock = LogicalKeyboardKey(0x01000000104);
+ static const LogicalKeyboardKey capsLock = LogicalKeyboardKey(0x00100000104);
/// Represents the logical "Fn" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey fn = LogicalKeyboardKey(0x01000000106);
+ static const LogicalKeyboardKey fn = LogicalKeyboardKey(0x00100000106);
/// Represents the logical "Fn Lock" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey fnLock = LogicalKeyboardKey(0x01000000107);
+ static const LogicalKeyboardKey fnLock = LogicalKeyboardKey(0x00100000107);
/// Represents the logical "Hyper" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey hyper = LogicalKeyboardKey(0x01000000108);
+ static const LogicalKeyboardKey hyper = LogicalKeyboardKey(0x00100000108);
/// Represents the logical "Num Lock" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey numLock = LogicalKeyboardKey(0x0100000010a);
+ static const LogicalKeyboardKey numLock = LogicalKeyboardKey(0x0010000010a);
/// Represents the logical "Scroll Lock" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey scrollLock = LogicalKeyboardKey(0x0100000010c);
+ static const LogicalKeyboardKey scrollLock = LogicalKeyboardKey(0x0010000010c);
/// Represents the logical "Super" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey superKey = LogicalKeyboardKey(0x0100000010e);
+ static const LogicalKeyboardKey superKey = LogicalKeyboardKey(0x0010000010e);
/// Represents the logical "Symbol" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey symbol = LogicalKeyboardKey(0x0100000010f);
+ static const LogicalKeyboardKey symbol = LogicalKeyboardKey(0x0010000010f);
/// Represents the logical "Symbol Lock" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey symbolLock = LogicalKeyboardKey(0x01000000110);
+ static const LogicalKeyboardKey symbolLock = LogicalKeyboardKey(0x00100000110);
/// Represents the logical "Shift Level 5" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey shiftLevel5 = LogicalKeyboardKey(0x01000000111);
+ static const LogicalKeyboardKey shiftLevel5 = LogicalKeyboardKey(0x00100000111);
/// Represents the logical "Arrow Down" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey arrowDown = LogicalKeyboardKey(0x01000000301);
+ static const LogicalKeyboardKey arrowDown = LogicalKeyboardKey(0x00100000301);
/// Represents the logical "Arrow Left" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey arrowLeft = LogicalKeyboardKey(0x01000000302);
+ static const LogicalKeyboardKey arrowLeft = LogicalKeyboardKey(0x00100000302);
/// Represents the logical "Arrow Right" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey arrowRight = LogicalKeyboardKey(0x01000000303);
+ static const LogicalKeyboardKey arrowRight = LogicalKeyboardKey(0x00100000303);
/// Represents the logical "Arrow Up" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey arrowUp = LogicalKeyboardKey(0x01000000304);
+ static const LogicalKeyboardKey arrowUp = LogicalKeyboardKey(0x00100000304);
/// Represents the logical "End" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey end = LogicalKeyboardKey(0x01000000305);
+ static const LogicalKeyboardKey end = LogicalKeyboardKey(0x00100000305);
/// Represents the logical "Home" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey home = LogicalKeyboardKey(0x01000000306);
+ static const LogicalKeyboardKey home = LogicalKeyboardKey(0x00100000306);
/// Represents the logical "Page Down" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey pageDown = LogicalKeyboardKey(0x01000000307);
+ static const LogicalKeyboardKey pageDown = LogicalKeyboardKey(0x00100000307);
/// Represents the logical "Page Up" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey pageUp = LogicalKeyboardKey(0x01000000308);
+ static const LogicalKeyboardKey pageUp = LogicalKeyboardKey(0x00100000308);
/// Represents the logical "Clear" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey clear = LogicalKeyboardKey(0x01000000401);
+ static const LogicalKeyboardKey clear = LogicalKeyboardKey(0x00100000401);
/// Represents the logical "Copy" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey copy = LogicalKeyboardKey(0x01000000402);
+ static const LogicalKeyboardKey copy = LogicalKeyboardKey(0x00100000402);
/// Represents the logical "Cr Sel" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey crSel = LogicalKeyboardKey(0x01000000403);
+ static const LogicalKeyboardKey crSel = LogicalKeyboardKey(0x00100000403);
/// Represents the logical "Cut" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey cut = LogicalKeyboardKey(0x01000000404);
+ static const LogicalKeyboardKey cut = LogicalKeyboardKey(0x00100000404);
/// Represents the logical "Erase Eof" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey eraseEof = LogicalKeyboardKey(0x01000000405);
+ static const LogicalKeyboardKey eraseEof = LogicalKeyboardKey(0x00100000405);
/// Represents the logical "Ex Sel" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey exSel = LogicalKeyboardKey(0x01000000406);
+ static const LogicalKeyboardKey exSel = LogicalKeyboardKey(0x00100000406);
/// Represents the logical "Insert" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey insert = LogicalKeyboardKey(0x01000000407);
+ static const LogicalKeyboardKey insert = LogicalKeyboardKey(0x00100000407);
/// Represents the logical "Paste" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey paste = LogicalKeyboardKey(0x01000000408);
+ static const LogicalKeyboardKey paste = LogicalKeyboardKey(0x00100000408);
/// Represents the logical "Redo" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey redo = LogicalKeyboardKey(0x01000000409);
+ static const LogicalKeyboardKey redo = LogicalKeyboardKey(0x00100000409);
/// Represents the logical "Undo" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey undo = LogicalKeyboardKey(0x0100000040a);
+ static const LogicalKeyboardKey undo = LogicalKeyboardKey(0x0010000040a);
/// Represents the logical "Accept" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey accept = LogicalKeyboardKey(0x01000000501);
+ static const LogicalKeyboardKey accept = LogicalKeyboardKey(0x00100000501);
/// Represents the logical "Again" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey again = LogicalKeyboardKey(0x01000000502);
+ static const LogicalKeyboardKey again = LogicalKeyboardKey(0x00100000502);
/// Represents the logical "Attn" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey attn = LogicalKeyboardKey(0x01000000503);
+ static const LogicalKeyboardKey attn = LogicalKeyboardKey(0x00100000503);
/// Represents the logical "Cancel" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey cancel = LogicalKeyboardKey(0x01000000504);
+ static const LogicalKeyboardKey cancel = LogicalKeyboardKey(0x00100000504);
/// Represents the logical "Context Menu" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey contextMenu = LogicalKeyboardKey(0x01000000505);
+ static const LogicalKeyboardKey contextMenu = LogicalKeyboardKey(0x00100000505);
/// Represents the logical "Execute" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey execute = LogicalKeyboardKey(0x01000000506);
+ static const LogicalKeyboardKey execute = LogicalKeyboardKey(0x00100000506);
/// Represents the logical "Find" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey find = LogicalKeyboardKey(0x01000000507);
+ static const LogicalKeyboardKey find = LogicalKeyboardKey(0x00100000507);
/// Represents the logical "Help" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey help = LogicalKeyboardKey(0x01000000508);
+ static const LogicalKeyboardKey help = LogicalKeyboardKey(0x00100000508);
/// Represents the logical "Pause" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey pause = LogicalKeyboardKey(0x01000000509);
+ static const LogicalKeyboardKey pause = LogicalKeyboardKey(0x00100000509);
/// Represents the logical "Play" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey play = LogicalKeyboardKey(0x0100000050a);
+ static const LogicalKeyboardKey play = LogicalKeyboardKey(0x0010000050a);
/// Represents the logical "Props" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey props = LogicalKeyboardKey(0x0100000050b);
+ static const LogicalKeyboardKey props = LogicalKeyboardKey(0x0010000050b);
/// Represents the logical "Select" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey select = LogicalKeyboardKey(0x0100000050c);
+ static const LogicalKeyboardKey select = LogicalKeyboardKey(0x0010000050c);
/// Represents the logical "Zoom In" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey zoomIn = LogicalKeyboardKey(0x0100000050d);
+ static const LogicalKeyboardKey zoomIn = LogicalKeyboardKey(0x0010000050d);
/// Represents the logical "Zoom Out" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey zoomOut = LogicalKeyboardKey(0x0100000050e);
+ static const LogicalKeyboardKey zoomOut = LogicalKeyboardKey(0x0010000050e);
/// Represents the logical "Brightness Down" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey brightnessDown = LogicalKeyboardKey(0x01000000601);
+ static const LogicalKeyboardKey brightnessDown = LogicalKeyboardKey(0x00100000601);
/// Represents the logical "Brightness Up" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey brightnessUp = LogicalKeyboardKey(0x01000000602);
+ static const LogicalKeyboardKey brightnessUp = LogicalKeyboardKey(0x00100000602);
/// Represents the logical "Camera" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey camera = LogicalKeyboardKey(0x01000000603);
+ static const LogicalKeyboardKey camera = LogicalKeyboardKey(0x00100000603);
/// Represents the logical "Eject" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey eject = LogicalKeyboardKey(0x01000000604);
+ static const LogicalKeyboardKey eject = LogicalKeyboardKey(0x00100000604);
/// Represents the logical "Log Off" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey logOff = LogicalKeyboardKey(0x01000000605);
+ static const LogicalKeyboardKey logOff = LogicalKeyboardKey(0x00100000605);
/// Represents the logical "Power" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey power = LogicalKeyboardKey(0x01000000606);
+ static const LogicalKeyboardKey power = LogicalKeyboardKey(0x00100000606);
/// Represents the logical "Power Off" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey powerOff = LogicalKeyboardKey(0x01000000607);
+ static const LogicalKeyboardKey powerOff = LogicalKeyboardKey(0x00100000607);
/// Represents the logical "Print Screen" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey printScreen = LogicalKeyboardKey(0x01000000608);
+ static const LogicalKeyboardKey printScreen = LogicalKeyboardKey(0x00100000608);
/// Represents the logical "Hibernate" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey hibernate = LogicalKeyboardKey(0x01000000609);
+ static const LogicalKeyboardKey hibernate = LogicalKeyboardKey(0x00100000609);
/// Represents the logical "Standby" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey standby = LogicalKeyboardKey(0x0100000060a);
+ static const LogicalKeyboardKey standby = LogicalKeyboardKey(0x0010000060a);
/// Represents the logical "Wake Up" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey wakeUp = LogicalKeyboardKey(0x0100000060b);
+ static const LogicalKeyboardKey wakeUp = LogicalKeyboardKey(0x0010000060b);
/// Represents the logical "All Candidates" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey allCandidates = LogicalKeyboardKey(0x01000000701);
+ static const LogicalKeyboardKey allCandidates = LogicalKeyboardKey(0x00100000701);
/// Represents the logical "Alphanumeric" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey alphanumeric = LogicalKeyboardKey(0x01000000702);
+ static const LogicalKeyboardKey alphanumeric = LogicalKeyboardKey(0x00100000702);
/// Represents the logical "Code Input" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey codeInput = LogicalKeyboardKey(0x01000000703);
+ static const LogicalKeyboardKey codeInput = LogicalKeyboardKey(0x00100000703);
/// Represents the logical "Compose" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey compose = LogicalKeyboardKey(0x01000000704);
+ static const LogicalKeyboardKey compose = LogicalKeyboardKey(0x00100000704);
/// Represents the logical "Convert" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey convert = LogicalKeyboardKey(0x01000000705);
+ static const LogicalKeyboardKey convert = LogicalKeyboardKey(0x00100000705);
/// Represents the logical "Final Mode" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey finalMode = LogicalKeyboardKey(0x01000000706);
+ static const LogicalKeyboardKey finalMode = LogicalKeyboardKey(0x00100000706);
/// Represents the logical "Group First" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey groupFirst = LogicalKeyboardKey(0x01000000707);
+ static const LogicalKeyboardKey groupFirst = LogicalKeyboardKey(0x00100000707);
/// Represents the logical "Group Last" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey groupLast = LogicalKeyboardKey(0x01000000708);
+ static const LogicalKeyboardKey groupLast = LogicalKeyboardKey(0x00100000708);
/// Represents the logical "Group Next" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey groupNext = LogicalKeyboardKey(0x01000000709);
+ static const LogicalKeyboardKey groupNext = LogicalKeyboardKey(0x00100000709);
/// Represents the logical "Group Previous" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey groupPrevious = LogicalKeyboardKey(0x0100000070a);
+ static const LogicalKeyboardKey groupPrevious = LogicalKeyboardKey(0x0010000070a);
/// Represents the logical "Mode Change" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey modeChange = LogicalKeyboardKey(0x0100000070b);
+ static const LogicalKeyboardKey modeChange = LogicalKeyboardKey(0x0010000070b);
/// Represents the logical "Next Candidate" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey nextCandidate = LogicalKeyboardKey(0x0100000070c);
+ static const LogicalKeyboardKey nextCandidate = LogicalKeyboardKey(0x0010000070c);
/// Represents the logical "Non Convert" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey nonConvert = LogicalKeyboardKey(0x0100000070d);
+ static const LogicalKeyboardKey nonConvert = LogicalKeyboardKey(0x0010000070d);
/// Represents the logical "Previous Candidate" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey previousCandidate = LogicalKeyboardKey(0x0100000070e);
+ static const LogicalKeyboardKey previousCandidate = LogicalKeyboardKey(0x0010000070e);
/// Represents the logical "Process" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey process = LogicalKeyboardKey(0x0100000070f);
+ static const LogicalKeyboardKey process = LogicalKeyboardKey(0x0010000070f);
/// Represents the logical "Single Candidate" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey singleCandidate = LogicalKeyboardKey(0x01000000710);
+ static const LogicalKeyboardKey singleCandidate = LogicalKeyboardKey(0x00100000710);
/// Represents the logical "Hangul Mode" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey hangulMode = LogicalKeyboardKey(0x01000000711);
+ static const LogicalKeyboardKey hangulMode = LogicalKeyboardKey(0x00100000711);
/// Represents the logical "Hanja Mode" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey hanjaMode = LogicalKeyboardKey(0x01000000712);
+ static const LogicalKeyboardKey hanjaMode = LogicalKeyboardKey(0x00100000712);
/// Represents the logical "Junja Mode" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey junjaMode = LogicalKeyboardKey(0x01000000713);
+ static const LogicalKeyboardKey junjaMode = LogicalKeyboardKey(0x00100000713);
/// Represents the logical "Eisu" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey eisu = LogicalKeyboardKey(0x01000000714);
+ static const LogicalKeyboardKey eisu = LogicalKeyboardKey(0x00100000714);
/// Represents the logical "Hankaku" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey hankaku = LogicalKeyboardKey(0x01000000715);
+ static const LogicalKeyboardKey hankaku = LogicalKeyboardKey(0x00100000715);
/// Represents the logical "Hiragana" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey hiragana = LogicalKeyboardKey(0x01000000716);
+ static const LogicalKeyboardKey hiragana = LogicalKeyboardKey(0x00100000716);
/// Represents the logical "Hiragana Katakana" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey hiraganaKatakana = LogicalKeyboardKey(0x01000000717);
+ static const LogicalKeyboardKey hiraganaKatakana = LogicalKeyboardKey(0x00100000717);
/// Represents the logical "Kana Mode" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey kanaMode = LogicalKeyboardKey(0x01000000718);
+ static const LogicalKeyboardKey kanaMode = LogicalKeyboardKey(0x00100000718);
/// Represents the logical "Kanji Mode" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey kanjiMode = LogicalKeyboardKey(0x01000000719);
+ static const LogicalKeyboardKey kanjiMode = LogicalKeyboardKey(0x00100000719);
/// Represents the logical "Katakana" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey katakana = LogicalKeyboardKey(0x0100000071a);
+ static const LogicalKeyboardKey katakana = LogicalKeyboardKey(0x0010000071a);
/// Represents the logical "Romaji" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey romaji = LogicalKeyboardKey(0x0100000071b);
+ static const LogicalKeyboardKey romaji = LogicalKeyboardKey(0x0010000071b);
/// Represents the logical "Zenkaku" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey zenkaku = LogicalKeyboardKey(0x0100000071c);
+ static const LogicalKeyboardKey zenkaku = LogicalKeyboardKey(0x0010000071c);
/// Represents the logical "Zenkaku Hankaku" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey zenkakuHankaku = LogicalKeyboardKey(0x0100000071d);
+ static const LogicalKeyboardKey zenkakuHankaku = LogicalKeyboardKey(0x0010000071d);
/// Represents the logical "F1" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey f1 = LogicalKeyboardKey(0x01000000801);
+ static const LogicalKeyboardKey f1 = LogicalKeyboardKey(0x00100000801);
/// Represents the logical "F2" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey f2 = LogicalKeyboardKey(0x01000000802);
+ static const LogicalKeyboardKey f2 = LogicalKeyboardKey(0x00100000802);
/// Represents the logical "F3" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey f3 = LogicalKeyboardKey(0x01000000803);
+ static const LogicalKeyboardKey f3 = LogicalKeyboardKey(0x00100000803);
/// Represents the logical "F4" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey f4 = LogicalKeyboardKey(0x01000000804);
+ static const LogicalKeyboardKey f4 = LogicalKeyboardKey(0x00100000804);
/// Represents the logical "F5" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey f5 = LogicalKeyboardKey(0x01000000805);
+ static const LogicalKeyboardKey f5 = LogicalKeyboardKey(0x00100000805);
/// Represents the logical "F6" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey f6 = LogicalKeyboardKey(0x01000000806);
+ static const LogicalKeyboardKey f6 = LogicalKeyboardKey(0x00100000806);
/// Represents the logical "F7" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey f7 = LogicalKeyboardKey(0x01000000807);
+ static const LogicalKeyboardKey f7 = LogicalKeyboardKey(0x00100000807);
/// Represents the logical "F8" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey f8 = LogicalKeyboardKey(0x01000000808);
+ static const LogicalKeyboardKey f8 = LogicalKeyboardKey(0x00100000808);
/// Represents the logical "F9" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey f9 = LogicalKeyboardKey(0x01000000809);
+ static const LogicalKeyboardKey f9 = LogicalKeyboardKey(0x00100000809);
/// Represents the logical "F10" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey f10 = LogicalKeyboardKey(0x0100000080a);
+ static const LogicalKeyboardKey f10 = LogicalKeyboardKey(0x0010000080a);
/// Represents the logical "F11" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey f11 = LogicalKeyboardKey(0x0100000080b);
+ static const LogicalKeyboardKey f11 = LogicalKeyboardKey(0x0010000080b);
/// Represents the logical "F12" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey f12 = LogicalKeyboardKey(0x0100000080c);
+ static const LogicalKeyboardKey f12 = LogicalKeyboardKey(0x0010000080c);
/// Represents the logical "F13" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey f13 = LogicalKeyboardKey(0x0100000080d);
+ static const LogicalKeyboardKey f13 = LogicalKeyboardKey(0x0010000080d);
/// Represents the logical "F14" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey f14 = LogicalKeyboardKey(0x0100000080e);
+ static const LogicalKeyboardKey f14 = LogicalKeyboardKey(0x0010000080e);
/// Represents the logical "F15" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey f15 = LogicalKeyboardKey(0x0100000080f);
+ static const LogicalKeyboardKey f15 = LogicalKeyboardKey(0x0010000080f);
/// Represents the logical "F16" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey f16 = LogicalKeyboardKey(0x01000000810);
+ static const LogicalKeyboardKey f16 = LogicalKeyboardKey(0x00100000810);
/// Represents the logical "F17" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey f17 = LogicalKeyboardKey(0x01000000811);
+ static const LogicalKeyboardKey f17 = LogicalKeyboardKey(0x00100000811);
/// Represents the logical "F18" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey f18 = LogicalKeyboardKey(0x01000000812);
+ static const LogicalKeyboardKey f18 = LogicalKeyboardKey(0x00100000812);
/// Represents the logical "F19" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey f19 = LogicalKeyboardKey(0x01000000813);
+ static const LogicalKeyboardKey f19 = LogicalKeyboardKey(0x00100000813);
/// Represents the logical "F20" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey f20 = LogicalKeyboardKey(0x01000000814);
+ static const LogicalKeyboardKey f20 = LogicalKeyboardKey(0x00100000814);
/// Represents the logical "F21" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey f21 = LogicalKeyboardKey(0x01000000815);
+ static const LogicalKeyboardKey f21 = LogicalKeyboardKey(0x00100000815);
/// Represents the logical "F22" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey f22 = LogicalKeyboardKey(0x01000000816);
+ static const LogicalKeyboardKey f22 = LogicalKeyboardKey(0x00100000816);
/// Represents the logical "F23" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey f23 = LogicalKeyboardKey(0x01000000817);
+ static const LogicalKeyboardKey f23 = LogicalKeyboardKey(0x00100000817);
/// Represents the logical "F24" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey f24 = LogicalKeyboardKey(0x01000000818);
+ static const LogicalKeyboardKey f24 = LogicalKeyboardKey(0x00100000818);
/// Represents the logical "Soft 1" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey soft1 = LogicalKeyboardKey(0x01000000901);
+ static const LogicalKeyboardKey soft1 = LogicalKeyboardKey(0x00100000901);
/// Represents the logical "Soft 2" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey soft2 = LogicalKeyboardKey(0x01000000902);
+ static const LogicalKeyboardKey soft2 = LogicalKeyboardKey(0x00100000902);
/// Represents the logical "Soft 3" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey soft3 = LogicalKeyboardKey(0x01000000903);
+ static const LogicalKeyboardKey soft3 = LogicalKeyboardKey(0x00100000903);
/// Represents the logical "Soft 4" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey soft4 = LogicalKeyboardKey(0x01000000904);
+ static const LogicalKeyboardKey soft4 = LogicalKeyboardKey(0x00100000904);
/// Represents the logical "Soft 5" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey soft5 = LogicalKeyboardKey(0x01000000905);
+ static const LogicalKeyboardKey soft5 = LogicalKeyboardKey(0x00100000905);
/// Represents the logical "Soft 6" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey soft6 = LogicalKeyboardKey(0x01000000906);
+ static const LogicalKeyboardKey soft6 = LogicalKeyboardKey(0x00100000906);
/// Represents the logical "Soft 7" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey soft7 = LogicalKeyboardKey(0x01000000907);
+ static const LogicalKeyboardKey soft7 = LogicalKeyboardKey(0x00100000907);
/// Represents the logical "Soft 8" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey soft8 = LogicalKeyboardKey(0x01000000908);
+ static const LogicalKeyboardKey soft8 = LogicalKeyboardKey(0x00100000908);
/// Represents the logical "Close" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey close = LogicalKeyboardKey(0x01000000a01);
+ static const LogicalKeyboardKey close = LogicalKeyboardKey(0x00100000a01);
/// Represents the logical "Mail Forward" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey mailForward = LogicalKeyboardKey(0x01000000a02);
+ static const LogicalKeyboardKey mailForward = LogicalKeyboardKey(0x00100000a02);
/// Represents the logical "Mail Reply" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey mailReply = LogicalKeyboardKey(0x01000000a03);
+ static const LogicalKeyboardKey mailReply = LogicalKeyboardKey(0x00100000a03);
/// Represents the logical "Mail Send" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey mailSend = LogicalKeyboardKey(0x01000000a04);
+ static const LogicalKeyboardKey mailSend = LogicalKeyboardKey(0x00100000a04);
/// Represents the logical "Media Play Pause" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey mediaPlayPause = LogicalKeyboardKey(0x01000000a05);
+ static const LogicalKeyboardKey mediaPlayPause = LogicalKeyboardKey(0x00100000a05);
/// Represents the logical "Media Stop" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey mediaStop = LogicalKeyboardKey(0x01000000a07);
+ static const LogicalKeyboardKey mediaStop = LogicalKeyboardKey(0x00100000a07);
/// Represents the logical "Media Track Next" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey mediaTrackNext = LogicalKeyboardKey(0x01000000a08);
+ static const LogicalKeyboardKey mediaTrackNext = LogicalKeyboardKey(0x00100000a08);
/// Represents the logical "Media Track Previous" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey mediaTrackPrevious = LogicalKeyboardKey(0x01000000a09);
+ static const LogicalKeyboardKey mediaTrackPrevious = LogicalKeyboardKey(0x00100000a09);
/// Represents the logical "New" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey newKey = LogicalKeyboardKey(0x01000000a0a);
+ static const LogicalKeyboardKey newKey = LogicalKeyboardKey(0x00100000a0a);
/// Represents the logical "Open" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey open = LogicalKeyboardKey(0x01000000a0b);
+ static const LogicalKeyboardKey open = LogicalKeyboardKey(0x00100000a0b);
/// Represents the logical "Print" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey print = LogicalKeyboardKey(0x01000000a0c);
+ static const LogicalKeyboardKey print = LogicalKeyboardKey(0x00100000a0c);
/// Represents the logical "Save" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey save = LogicalKeyboardKey(0x01000000a0d);
+ static const LogicalKeyboardKey save = LogicalKeyboardKey(0x00100000a0d);
/// Represents the logical "Spell Check" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey spellCheck = LogicalKeyboardKey(0x01000000a0e);
+ static const LogicalKeyboardKey spellCheck = LogicalKeyboardKey(0x00100000a0e);
/// Represents the logical "Audio Volume Down" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey audioVolumeDown = LogicalKeyboardKey(0x01000000a0f);
+ static const LogicalKeyboardKey audioVolumeDown = LogicalKeyboardKey(0x00100000a0f);
/// Represents the logical "Audio Volume Up" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey audioVolumeUp = LogicalKeyboardKey(0x01000000a10);
+ static const LogicalKeyboardKey audioVolumeUp = LogicalKeyboardKey(0x00100000a10);
/// Represents the logical "Audio Volume Mute" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey audioVolumeMute = LogicalKeyboardKey(0x01000000a11);
+ static const LogicalKeyboardKey audioVolumeMute = LogicalKeyboardKey(0x00100000a11);
/// Represents the logical "Launch Application 2" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey launchApplication2 = LogicalKeyboardKey(0x01000000b01);
+ static const LogicalKeyboardKey launchApplication2 = LogicalKeyboardKey(0x00100000b01);
/// Represents the logical "Launch Calendar" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey launchCalendar = LogicalKeyboardKey(0x01000000b02);
+ static const LogicalKeyboardKey launchCalendar = LogicalKeyboardKey(0x00100000b02);
/// Represents the logical "Launch Mail" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey launchMail = LogicalKeyboardKey(0x01000000b03);
+ static const LogicalKeyboardKey launchMail = LogicalKeyboardKey(0x00100000b03);
/// Represents the logical "Launch Media Player" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey launchMediaPlayer = LogicalKeyboardKey(0x01000000b04);
+ static const LogicalKeyboardKey launchMediaPlayer = LogicalKeyboardKey(0x00100000b04);
/// Represents the logical "Launch Music Player" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey launchMusicPlayer = LogicalKeyboardKey(0x01000000b05);
+ static const LogicalKeyboardKey launchMusicPlayer = LogicalKeyboardKey(0x00100000b05);
/// Represents the logical "Launch Application 1" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey launchApplication1 = LogicalKeyboardKey(0x01000000b06);
+ static const LogicalKeyboardKey launchApplication1 = LogicalKeyboardKey(0x00100000b06);
/// Represents the logical "Launch Screen Saver" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey launchScreenSaver = LogicalKeyboardKey(0x01000000b07);
+ static const LogicalKeyboardKey launchScreenSaver = LogicalKeyboardKey(0x00100000b07);
/// Represents the logical "Launch Spreadsheet" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey launchSpreadsheet = LogicalKeyboardKey(0x01000000b08);
+ static const LogicalKeyboardKey launchSpreadsheet = LogicalKeyboardKey(0x00100000b08);
/// Represents the logical "Launch Web Browser" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey launchWebBrowser = LogicalKeyboardKey(0x01000000b09);
+ static const LogicalKeyboardKey launchWebBrowser = LogicalKeyboardKey(0x00100000b09);
/// Represents the logical "Launch Web Cam" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey launchWebCam = LogicalKeyboardKey(0x01000000b0a);
+ static const LogicalKeyboardKey launchWebCam = LogicalKeyboardKey(0x00100000b0a);
/// Represents the logical "Launch Word Processor" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey launchWordProcessor = LogicalKeyboardKey(0x01000000b0b);
+ static const LogicalKeyboardKey launchWordProcessor = LogicalKeyboardKey(0x00100000b0b);
/// Represents the logical "Launch Contacts" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey launchContacts = LogicalKeyboardKey(0x01000000b0c);
+ static const LogicalKeyboardKey launchContacts = LogicalKeyboardKey(0x00100000b0c);
/// Represents the logical "Launch Phone" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey launchPhone = LogicalKeyboardKey(0x01000000b0d);
+ static const LogicalKeyboardKey launchPhone = LogicalKeyboardKey(0x00100000b0d);
/// Represents the logical "Launch Assistant" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey launchAssistant = LogicalKeyboardKey(0x01000000b0e);
+ static const LogicalKeyboardKey launchAssistant = LogicalKeyboardKey(0x00100000b0e);
/// Represents the logical "Launch Control Panel" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey launchControlPanel = LogicalKeyboardKey(0x01000000b0f);
+ static const LogicalKeyboardKey launchControlPanel = LogicalKeyboardKey(0x00100000b0f);
/// Represents the logical "Browser Back" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey browserBack = LogicalKeyboardKey(0x01000000c01);
+ static const LogicalKeyboardKey browserBack = LogicalKeyboardKey(0x00100000c01);
/// Represents the logical "Browser Favorites" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey browserFavorites = LogicalKeyboardKey(0x01000000c02);
+ static const LogicalKeyboardKey browserFavorites = LogicalKeyboardKey(0x00100000c02);
/// Represents the logical "Browser Forward" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey browserForward = LogicalKeyboardKey(0x01000000c03);
+ static const LogicalKeyboardKey browserForward = LogicalKeyboardKey(0x00100000c03);
/// Represents the logical "Browser Home" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey browserHome = LogicalKeyboardKey(0x01000000c04);
+ static const LogicalKeyboardKey browserHome = LogicalKeyboardKey(0x00100000c04);
/// Represents the logical "Browser Refresh" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey browserRefresh = LogicalKeyboardKey(0x01000000c05);
+ static const LogicalKeyboardKey browserRefresh = LogicalKeyboardKey(0x00100000c05);
/// Represents the logical "Browser Search" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey browserSearch = LogicalKeyboardKey(0x01000000c06);
+ static const LogicalKeyboardKey browserSearch = LogicalKeyboardKey(0x00100000c06);
/// Represents the logical "Browser Stop" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey browserStop = LogicalKeyboardKey(0x01000000c07);
+ static const LogicalKeyboardKey browserStop = LogicalKeyboardKey(0x00100000c07);
/// Represents the logical "Audio Balance Left" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey audioBalanceLeft = LogicalKeyboardKey(0x01000000d01);
+ static const LogicalKeyboardKey audioBalanceLeft = LogicalKeyboardKey(0x00100000d01);
/// Represents the logical "Audio Balance Right" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey audioBalanceRight = LogicalKeyboardKey(0x01000000d02);
+ static const LogicalKeyboardKey audioBalanceRight = LogicalKeyboardKey(0x00100000d02);
/// Represents the logical "Audio Bass Boost Down" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey audioBassBoostDown = LogicalKeyboardKey(0x01000000d03);
+ static const LogicalKeyboardKey audioBassBoostDown = LogicalKeyboardKey(0x00100000d03);
/// Represents the logical "Audio Bass Boost Up" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey audioBassBoostUp = LogicalKeyboardKey(0x01000000d04);
+ static const LogicalKeyboardKey audioBassBoostUp = LogicalKeyboardKey(0x00100000d04);
/// Represents the logical "Audio Fader Front" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey audioFaderFront = LogicalKeyboardKey(0x01000000d05);
+ static const LogicalKeyboardKey audioFaderFront = LogicalKeyboardKey(0x00100000d05);
/// Represents the logical "Audio Fader Rear" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey audioFaderRear = LogicalKeyboardKey(0x01000000d06);
+ static const LogicalKeyboardKey audioFaderRear = LogicalKeyboardKey(0x00100000d06);
/// Represents the logical "Audio Surround Mode Next" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey audioSurroundModeNext = LogicalKeyboardKey(0x01000000d07);
+ static const LogicalKeyboardKey audioSurroundModeNext = LogicalKeyboardKey(0x00100000d07);
/// Represents the logical "AVR Input" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey avrInput = LogicalKeyboardKey(0x01000000d08);
+ static const LogicalKeyboardKey avrInput = LogicalKeyboardKey(0x00100000d08);
/// Represents the logical "AVR Power" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey avrPower = LogicalKeyboardKey(0x01000000d09);
+ static const LogicalKeyboardKey avrPower = LogicalKeyboardKey(0x00100000d09);
/// Represents the logical "Channel Down" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey channelDown = LogicalKeyboardKey(0x01000000d0a);
+ static const LogicalKeyboardKey channelDown = LogicalKeyboardKey(0x00100000d0a);
/// Represents the logical "Channel Up" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey channelUp = LogicalKeyboardKey(0x01000000d0b);
+ static const LogicalKeyboardKey channelUp = LogicalKeyboardKey(0x00100000d0b);
/// Represents the logical "Color F0 Red" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey colorF0Red = LogicalKeyboardKey(0x01000000d0c);
+ static const LogicalKeyboardKey colorF0Red = LogicalKeyboardKey(0x00100000d0c);
/// Represents the logical "Color F1 Green" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey colorF1Green = LogicalKeyboardKey(0x01000000d0d);
+ static const LogicalKeyboardKey colorF1Green = LogicalKeyboardKey(0x00100000d0d);
/// Represents the logical "Color F2 Yellow" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey colorF2Yellow = LogicalKeyboardKey(0x01000000d0e);
+ static const LogicalKeyboardKey colorF2Yellow = LogicalKeyboardKey(0x00100000d0e);
/// Represents the logical "Color F3 Blue" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey colorF3Blue = LogicalKeyboardKey(0x01000000d0f);
+ static const LogicalKeyboardKey colorF3Blue = LogicalKeyboardKey(0x00100000d0f);
/// Represents the logical "Color F4 Grey" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey colorF4Grey = LogicalKeyboardKey(0x01000000d10);
+ static const LogicalKeyboardKey colorF4Grey = LogicalKeyboardKey(0x00100000d10);
/// Represents the logical "Color F5 Brown" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey colorF5Brown = LogicalKeyboardKey(0x01000000d11);
+ static const LogicalKeyboardKey colorF5Brown = LogicalKeyboardKey(0x00100000d11);
/// Represents the logical "Closed Caption Toggle" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey closedCaptionToggle = LogicalKeyboardKey(0x01000000d12);
+ static const LogicalKeyboardKey closedCaptionToggle = LogicalKeyboardKey(0x00100000d12);
/// Represents the logical "Dimmer" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey dimmer = LogicalKeyboardKey(0x01000000d13);
+ static const LogicalKeyboardKey dimmer = LogicalKeyboardKey(0x00100000d13);
/// Represents the logical "Display Swap" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey displaySwap = LogicalKeyboardKey(0x01000000d14);
+ static const LogicalKeyboardKey displaySwap = LogicalKeyboardKey(0x00100000d14);
/// Represents the logical "Exit" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey exit = LogicalKeyboardKey(0x01000000d15);
+ static const LogicalKeyboardKey exit = LogicalKeyboardKey(0x00100000d15);
/// Represents the logical "Favorite Clear 0" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey favoriteClear0 = LogicalKeyboardKey(0x01000000d16);
+ static const LogicalKeyboardKey favoriteClear0 = LogicalKeyboardKey(0x00100000d16);
/// Represents the logical "Favorite Clear 1" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey favoriteClear1 = LogicalKeyboardKey(0x01000000d17);
+ static const LogicalKeyboardKey favoriteClear1 = LogicalKeyboardKey(0x00100000d17);
/// Represents the logical "Favorite Clear 2" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey favoriteClear2 = LogicalKeyboardKey(0x01000000d18);
+ static const LogicalKeyboardKey favoriteClear2 = LogicalKeyboardKey(0x00100000d18);
/// Represents the logical "Favorite Clear 3" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey favoriteClear3 = LogicalKeyboardKey(0x01000000d19);
+ static const LogicalKeyboardKey favoriteClear3 = LogicalKeyboardKey(0x00100000d19);
/// Represents the logical "Favorite Recall 0" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey favoriteRecall0 = LogicalKeyboardKey(0x01000000d1a);
+ static const LogicalKeyboardKey favoriteRecall0 = LogicalKeyboardKey(0x00100000d1a);
/// Represents the logical "Favorite Recall 1" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey favoriteRecall1 = LogicalKeyboardKey(0x01000000d1b);
+ static const LogicalKeyboardKey favoriteRecall1 = LogicalKeyboardKey(0x00100000d1b);
/// Represents the logical "Favorite Recall 2" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey favoriteRecall2 = LogicalKeyboardKey(0x01000000d1c);
+ static const LogicalKeyboardKey favoriteRecall2 = LogicalKeyboardKey(0x00100000d1c);
/// Represents the logical "Favorite Recall 3" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey favoriteRecall3 = LogicalKeyboardKey(0x01000000d1d);
+ static const LogicalKeyboardKey favoriteRecall3 = LogicalKeyboardKey(0x00100000d1d);
/// Represents the logical "Favorite Store 0" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey favoriteStore0 = LogicalKeyboardKey(0x01000000d1e);
+ static const LogicalKeyboardKey favoriteStore0 = LogicalKeyboardKey(0x00100000d1e);
/// Represents the logical "Favorite Store 1" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey favoriteStore1 = LogicalKeyboardKey(0x01000000d1f);
+ static const LogicalKeyboardKey favoriteStore1 = LogicalKeyboardKey(0x00100000d1f);
/// Represents the logical "Favorite Store 2" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey favoriteStore2 = LogicalKeyboardKey(0x01000000d20);
+ static const LogicalKeyboardKey favoriteStore2 = LogicalKeyboardKey(0x00100000d20);
/// Represents the logical "Favorite Store 3" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey favoriteStore3 = LogicalKeyboardKey(0x01000000d21);
+ static const LogicalKeyboardKey favoriteStore3 = LogicalKeyboardKey(0x00100000d21);
/// Represents the logical "Guide" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey guide = LogicalKeyboardKey(0x01000000d22);
+ static const LogicalKeyboardKey guide = LogicalKeyboardKey(0x00100000d22);
/// Represents the logical "Guide Next Day" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey guideNextDay = LogicalKeyboardKey(0x01000000d23);
+ static const LogicalKeyboardKey guideNextDay = LogicalKeyboardKey(0x00100000d23);
/// Represents the logical "Guide Previous Day" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey guidePreviousDay = LogicalKeyboardKey(0x01000000d24);
+ static const LogicalKeyboardKey guidePreviousDay = LogicalKeyboardKey(0x00100000d24);
/// Represents the logical "Info" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey info = LogicalKeyboardKey(0x01000000d25);
+ static const LogicalKeyboardKey info = LogicalKeyboardKey(0x00100000d25);
/// Represents the logical "Instant Replay" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey instantReplay = LogicalKeyboardKey(0x01000000d26);
+ static const LogicalKeyboardKey instantReplay = LogicalKeyboardKey(0x00100000d26);
/// Represents the logical "Link" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey link = LogicalKeyboardKey(0x01000000d27);
+ static const LogicalKeyboardKey link = LogicalKeyboardKey(0x00100000d27);
/// Represents the logical "List Program" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey listProgram = LogicalKeyboardKey(0x01000000d28);
+ static const LogicalKeyboardKey listProgram = LogicalKeyboardKey(0x00100000d28);
/// Represents the logical "Live Content" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey liveContent = LogicalKeyboardKey(0x01000000d29);
+ static const LogicalKeyboardKey liveContent = LogicalKeyboardKey(0x00100000d29);
/// Represents the logical "Lock" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey lock = LogicalKeyboardKey(0x01000000d2a);
+ static const LogicalKeyboardKey lock = LogicalKeyboardKey(0x00100000d2a);
/// Represents the logical "Media Apps" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey mediaApps = LogicalKeyboardKey(0x01000000d2b);
+ static const LogicalKeyboardKey mediaApps = LogicalKeyboardKey(0x00100000d2b);
/// Represents the logical "Media Fast Forward" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey mediaFastForward = LogicalKeyboardKey(0x01000000d2c);
+ static const LogicalKeyboardKey mediaFastForward = LogicalKeyboardKey(0x00100000d2c);
/// Represents the logical "Media Last" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey mediaLast = LogicalKeyboardKey(0x01000000d2d);
+ static const LogicalKeyboardKey mediaLast = LogicalKeyboardKey(0x00100000d2d);
/// Represents the logical "Media Pause" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey mediaPause = LogicalKeyboardKey(0x01000000d2e);
+ static const LogicalKeyboardKey mediaPause = LogicalKeyboardKey(0x00100000d2e);
/// Represents the logical "Media Play" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey mediaPlay = LogicalKeyboardKey(0x01000000d2f);
+ static const LogicalKeyboardKey mediaPlay = LogicalKeyboardKey(0x00100000d2f);
/// Represents the logical "Media Record" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey mediaRecord = LogicalKeyboardKey(0x01000000d30);
+ static const LogicalKeyboardKey mediaRecord = LogicalKeyboardKey(0x00100000d30);
/// Represents the logical "Media Rewind" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey mediaRewind = LogicalKeyboardKey(0x01000000d31);
+ static const LogicalKeyboardKey mediaRewind = LogicalKeyboardKey(0x00100000d31);
/// Represents the logical "Media Skip" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey mediaSkip = LogicalKeyboardKey(0x01000000d32);
+ static const LogicalKeyboardKey mediaSkip = LogicalKeyboardKey(0x00100000d32);
/// Represents the logical "Next Favorite Channel" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey nextFavoriteChannel = LogicalKeyboardKey(0x01000000d33);
+ static const LogicalKeyboardKey nextFavoriteChannel = LogicalKeyboardKey(0x00100000d33);
/// Represents the logical "Next User Profile" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey nextUserProfile = LogicalKeyboardKey(0x01000000d34);
+ static const LogicalKeyboardKey nextUserProfile = LogicalKeyboardKey(0x00100000d34);
/// Represents the logical "On Demand" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey onDemand = LogicalKeyboardKey(0x01000000d35);
+ static const LogicalKeyboardKey onDemand = LogicalKeyboardKey(0x00100000d35);
/// Represents the logical "P In P Down" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey pInPDown = LogicalKeyboardKey(0x01000000d36);
+ static const LogicalKeyboardKey pInPDown = LogicalKeyboardKey(0x00100000d36);
/// Represents the logical "P In P Move" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey pInPMove = LogicalKeyboardKey(0x01000000d37);
+ static const LogicalKeyboardKey pInPMove = LogicalKeyboardKey(0x00100000d37);
/// Represents the logical "P In P Toggle" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey pInPToggle = LogicalKeyboardKey(0x01000000d38);
+ static const LogicalKeyboardKey pInPToggle = LogicalKeyboardKey(0x00100000d38);
/// Represents the logical "P In P Up" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey pInPUp = LogicalKeyboardKey(0x01000000d39);
+ static const LogicalKeyboardKey pInPUp = LogicalKeyboardKey(0x00100000d39);
/// Represents the logical "Play Speed Down" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey playSpeedDown = LogicalKeyboardKey(0x01000000d3a);
+ static const LogicalKeyboardKey playSpeedDown = LogicalKeyboardKey(0x00100000d3a);
/// Represents the logical "Play Speed Reset" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey playSpeedReset = LogicalKeyboardKey(0x01000000d3b);
+ static const LogicalKeyboardKey playSpeedReset = LogicalKeyboardKey(0x00100000d3b);
/// Represents the logical "Play Speed Up" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey playSpeedUp = LogicalKeyboardKey(0x01000000d3c);
+ static const LogicalKeyboardKey playSpeedUp = LogicalKeyboardKey(0x00100000d3c);
/// Represents the logical "Random Toggle" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey randomToggle = LogicalKeyboardKey(0x01000000d3d);
+ static const LogicalKeyboardKey randomToggle = LogicalKeyboardKey(0x00100000d3d);
/// Represents the logical "Rc Low Battery" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey rcLowBattery = LogicalKeyboardKey(0x01000000d3e);
+ static const LogicalKeyboardKey rcLowBattery = LogicalKeyboardKey(0x00100000d3e);
/// Represents the logical "Record Speed Next" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey recordSpeedNext = LogicalKeyboardKey(0x01000000d3f);
+ static const LogicalKeyboardKey recordSpeedNext = LogicalKeyboardKey(0x00100000d3f);
/// Represents the logical "Rf Bypass" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey rfBypass = LogicalKeyboardKey(0x01000000d40);
+ static const LogicalKeyboardKey rfBypass = LogicalKeyboardKey(0x00100000d40);
/// Represents the logical "Scan Channels Toggle" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey scanChannelsToggle = LogicalKeyboardKey(0x01000000d41);
+ static const LogicalKeyboardKey scanChannelsToggle = LogicalKeyboardKey(0x00100000d41);
/// Represents the logical "Screen Mode Next" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey screenModeNext = LogicalKeyboardKey(0x01000000d42);
+ static const LogicalKeyboardKey screenModeNext = LogicalKeyboardKey(0x00100000d42);
/// Represents the logical "Settings" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey settings = LogicalKeyboardKey(0x01000000d43);
+ static const LogicalKeyboardKey settings = LogicalKeyboardKey(0x00100000d43);
/// Represents the logical "Split Screen Toggle" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey splitScreenToggle = LogicalKeyboardKey(0x01000000d44);
+ static const LogicalKeyboardKey splitScreenToggle = LogicalKeyboardKey(0x00100000d44);
/// Represents the logical "STB Input" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey stbInput = LogicalKeyboardKey(0x01000000d45);
+ static const LogicalKeyboardKey stbInput = LogicalKeyboardKey(0x00100000d45);
/// Represents the logical "STB Power" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey stbPower = LogicalKeyboardKey(0x01000000d46);
+ static const LogicalKeyboardKey stbPower = LogicalKeyboardKey(0x00100000d46);
/// Represents the logical "Subtitle" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey subtitle = LogicalKeyboardKey(0x01000000d47);
+ static const LogicalKeyboardKey subtitle = LogicalKeyboardKey(0x00100000d47);
/// Represents the logical "Teletext" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey teletext = LogicalKeyboardKey(0x01000000d48);
+ static const LogicalKeyboardKey teletext = LogicalKeyboardKey(0x00100000d48);
/// Represents the logical "TV" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey tv = LogicalKeyboardKey(0x01000000d49);
+ static const LogicalKeyboardKey tv = LogicalKeyboardKey(0x00100000d49);
/// Represents the logical "TV Input" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey tvInput = LogicalKeyboardKey(0x01000000d4a);
+ static const LogicalKeyboardKey tvInput = LogicalKeyboardKey(0x00100000d4a);
/// Represents the logical "TV Power" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey tvPower = LogicalKeyboardKey(0x01000000d4b);
+ static const LogicalKeyboardKey tvPower = LogicalKeyboardKey(0x00100000d4b);
/// Represents the logical "Video Mode Next" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey videoModeNext = LogicalKeyboardKey(0x01000000d4c);
+ static const LogicalKeyboardKey videoModeNext = LogicalKeyboardKey(0x00100000d4c);
/// Represents the logical "Wink" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey wink = LogicalKeyboardKey(0x01000000d4d);
+ static const LogicalKeyboardKey wink = LogicalKeyboardKey(0x00100000d4d);
/// Represents the logical "Zoom Toggle" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey zoomToggle = LogicalKeyboardKey(0x01000000d4e);
+ static const LogicalKeyboardKey zoomToggle = LogicalKeyboardKey(0x00100000d4e);
/// Represents the logical "DVR" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey dvr = LogicalKeyboardKey(0x01000000d4f);
+ static const LogicalKeyboardKey dvr = LogicalKeyboardKey(0x00100000d4f);
/// Represents the logical "Media Audio Track" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey mediaAudioTrack = LogicalKeyboardKey(0x01000000d50);
+ static const LogicalKeyboardKey mediaAudioTrack = LogicalKeyboardKey(0x00100000d50);
/// Represents the logical "Media Skip Backward" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey mediaSkipBackward = LogicalKeyboardKey(0x01000000d51);
+ static const LogicalKeyboardKey mediaSkipBackward = LogicalKeyboardKey(0x00100000d51);
/// Represents the logical "Media Skip Forward" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey mediaSkipForward = LogicalKeyboardKey(0x01000000d52);
+ static const LogicalKeyboardKey mediaSkipForward = LogicalKeyboardKey(0x00100000d52);
/// Represents the logical "Media Step Backward" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey mediaStepBackward = LogicalKeyboardKey(0x01000000d53);
+ static const LogicalKeyboardKey mediaStepBackward = LogicalKeyboardKey(0x00100000d53);
/// Represents the logical "Media Step Forward" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey mediaStepForward = LogicalKeyboardKey(0x01000000d54);
+ static const LogicalKeyboardKey mediaStepForward = LogicalKeyboardKey(0x00100000d54);
/// Represents the logical "Media Top Menu" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey mediaTopMenu = LogicalKeyboardKey(0x01000000d55);
+ static const LogicalKeyboardKey mediaTopMenu = LogicalKeyboardKey(0x00100000d55);
/// Represents the logical "Navigate In" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey navigateIn = LogicalKeyboardKey(0x01000000d56);
+ static const LogicalKeyboardKey navigateIn = LogicalKeyboardKey(0x00100000d56);
/// Represents the logical "Navigate Next" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey navigateNext = LogicalKeyboardKey(0x01000000d57);
+ static const LogicalKeyboardKey navigateNext = LogicalKeyboardKey(0x00100000d57);
/// Represents the logical "Navigate Out" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey navigateOut = LogicalKeyboardKey(0x01000000d58);
+ static const LogicalKeyboardKey navigateOut = LogicalKeyboardKey(0x00100000d58);
/// Represents the logical "Navigate Previous" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey navigatePrevious = LogicalKeyboardKey(0x01000000d59);
+ static const LogicalKeyboardKey navigatePrevious = LogicalKeyboardKey(0x00100000d59);
/// Represents the logical "Pairing" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey pairing = LogicalKeyboardKey(0x01000000d5a);
+ static const LogicalKeyboardKey pairing = LogicalKeyboardKey(0x00100000d5a);
/// Represents the logical "Media Close" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey mediaClose = LogicalKeyboardKey(0x01000000d5b);
+ static const LogicalKeyboardKey mediaClose = LogicalKeyboardKey(0x00100000d5b);
/// Represents the logical "Audio Bass Boost Toggle" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey audioBassBoostToggle = LogicalKeyboardKey(0x01000000e02);
+ static const LogicalKeyboardKey audioBassBoostToggle = LogicalKeyboardKey(0x00100000e02);
/// Represents the logical "Audio Treble Down" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey audioTrebleDown = LogicalKeyboardKey(0x01000000e04);
+ static const LogicalKeyboardKey audioTrebleDown = LogicalKeyboardKey(0x00100000e04);
/// Represents the logical "Audio Treble Up" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey audioTrebleUp = LogicalKeyboardKey(0x01000000e05);
+ static const LogicalKeyboardKey audioTrebleUp = LogicalKeyboardKey(0x00100000e05);
/// Represents the logical "Microphone Toggle" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey microphoneToggle = LogicalKeyboardKey(0x01000000e06);
+ static const LogicalKeyboardKey microphoneToggle = LogicalKeyboardKey(0x00100000e06);
/// Represents the logical "Microphone Volume Down" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey microphoneVolumeDown = LogicalKeyboardKey(0x01000000e07);
+ static const LogicalKeyboardKey microphoneVolumeDown = LogicalKeyboardKey(0x00100000e07);
/// Represents the logical "Microphone Volume Up" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey microphoneVolumeUp = LogicalKeyboardKey(0x01000000e08);
+ static const LogicalKeyboardKey microphoneVolumeUp = LogicalKeyboardKey(0x00100000e08);
/// Represents the logical "Microphone Volume Mute" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey microphoneVolumeMute = LogicalKeyboardKey(0x01000000e09);
+ static const LogicalKeyboardKey microphoneVolumeMute = LogicalKeyboardKey(0x00100000e09);
/// Represents the logical "Speech Correction List" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey speechCorrectionList = LogicalKeyboardKey(0x01000000f01);
+ static const LogicalKeyboardKey speechCorrectionList = LogicalKeyboardKey(0x00100000f01);
/// Represents the logical "Speech Input Toggle" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey speechInputToggle = LogicalKeyboardKey(0x01000000f02);
+ static const LogicalKeyboardKey speechInputToggle = LogicalKeyboardKey(0x00100000f02);
/// Represents the logical "App Switch" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey appSwitch = LogicalKeyboardKey(0x01000001001);
+ static const LogicalKeyboardKey appSwitch = LogicalKeyboardKey(0x00100001001);
/// Represents the logical "Call" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey call = LogicalKeyboardKey(0x01000001002);
+ static const LogicalKeyboardKey call = LogicalKeyboardKey(0x00100001002);
/// Represents the logical "Camera Focus" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey cameraFocus = LogicalKeyboardKey(0x01000001003);
+ static const LogicalKeyboardKey cameraFocus = LogicalKeyboardKey(0x00100001003);
/// Represents the logical "End Call" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey endCall = LogicalKeyboardKey(0x01000001004);
+ static const LogicalKeyboardKey endCall = LogicalKeyboardKey(0x00100001004);
/// Represents the logical "Go Back" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey goBack = LogicalKeyboardKey(0x01000001005);
+ static const LogicalKeyboardKey goBack = LogicalKeyboardKey(0x00100001005);
/// Represents the logical "Go Home" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey goHome = LogicalKeyboardKey(0x01000001006);
+ static const LogicalKeyboardKey goHome = LogicalKeyboardKey(0x00100001006);
/// Represents the logical "Headset Hook" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey headsetHook = LogicalKeyboardKey(0x01000001007);
+ static const LogicalKeyboardKey headsetHook = LogicalKeyboardKey(0x00100001007);
/// Represents the logical "Last Number Redial" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey lastNumberRedial = LogicalKeyboardKey(0x01000001008);
+ static const LogicalKeyboardKey lastNumberRedial = LogicalKeyboardKey(0x00100001008);
/// Represents the logical "Notification" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey notification = LogicalKeyboardKey(0x01000001009);
+ static const LogicalKeyboardKey notification = LogicalKeyboardKey(0x00100001009);
/// Represents the logical "Manner Mode" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey mannerMode = LogicalKeyboardKey(0x0100000100a);
+ static const LogicalKeyboardKey mannerMode = LogicalKeyboardKey(0x0010000100a);
/// Represents the logical "Voice Dial" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey voiceDial = LogicalKeyboardKey(0x0100000100b);
+ static const LogicalKeyboardKey voiceDial = LogicalKeyboardKey(0x0010000100b);
/// Represents the logical "TV 3 D Mode" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey tv3DMode = LogicalKeyboardKey(0x01000001101);
+ static const LogicalKeyboardKey tv3DMode = LogicalKeyboardKey(0x00100001101);
/// Represents the logical "TV Antenna Cable" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey tvAntennaCable = LogicalKeyboardKey(0x01000001102);
+ static const LogicalKeyboardKey tvAntennaCable = LogicalKeyboardKey(0x00100001102);
/// Represents the logical "TV Audio Description" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey tvAudioDescription = LogicalKeyboardKey(0x01000001103);
+ static const LogicalKeyboardKey tvAudioDescription = LogicalKeyboardKey(0x00100001103);
/// Represents the logical "TV Audio Description Mix Down" key on the
/// keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey tvAudioDescriptionMixDown = LogicalKeyboardKey(0x01000001104);
+ static const LogicalKeyboardKey tvAudioDescriptionMixDown = LogicalKeyboardKey(0x00100001104);
/// Represents the logical "TV Audio Description Mix Up" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey tvAudioDescriptionMixUp = LogicalKeyboardKey(0x01000001105);
+ static const LogicalKeyboardKey tvAudioDescriptionMixUp = LogicalKeyboardKey(0x00100001105);
/// Represents the logical "TV Contents Menu" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey tvContentsMenu = LogicalKeyboardKey(0x01000001106);
+ static const LogicalKeyboardKey tvContentsMenu = LogicalKeyboardKey(0x00100001106);
/// Represents the logical "TV Data Service" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey tvDataService = LogicalKeyboardKey(0x01000001107);
+ static const LogicalKeyboardKey tvDataService = LogicalKeyboardKey(0x00100001107);
/// Represents the logical "TV Input Component 1" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey tvInputComponent1 = LogicalKeyboardKey(0x01000001108);
+ static const LogicalKeyboardKey tvInputComponent1 = LogicalKeyboardKey(0x00100001108);
/// Represents the logical "TV Input Component 2" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey tvInputComponent2 = LogicalKeyboardKey(0x01000001109);
+ static const LogicalKeyboardKey tvInputComponent2 = LogicalKeyboardKey(0x00100001109);
/// Represents the logical "TV Input Composite 1" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey tvInputComposite1 = LogicalKeyboardKey(0x0100000110a);
+ static const LogicalKeyboardKey tvInputComposite1 = LogicalKeyboardKey(0x0010000110a);
/// Represents the logical "TV Input Composite 2" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey tvInputComposite2 = LogicalKeyboardKey(0x0100000110b);
+ static const LogicalKeyboardKey tvInputComposite2 = LogicalKeyboardKey(0x0010000110b);
/// Represents the logical "TV Input HDMI 1" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey tvInputHDMI1 = LogicalKeyboardKey(0x0100000110c);
+ static const LogicalKeyboardKey tvInputHDMI1 = LogicalKeyboardKey(0x0010000110c);
/// Represents the logical "TV Input HDMI 2" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey tvInputHDMI2 = LogicalKeyboardKey(0x0100000110d);
+ static const LogicalKeyboardKey tvInputHDMI2 = LogicalKeyboardKey(0x0010000110d);
/// Represents the logical "TV Input HDMI 3" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey tvInputHDMI3 = LogicalKeyboardKey(0x0100000110e);
+ static const LogicalKeyboardKey tvInputHDMI3 = LogicalKeyboardKey(0x0010000110e);
/// Represents the logical "TV Input HDMI 4" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey tvInputHDMI4 = LogicalKeyboardKey(0x0100000110f);
+ static const LogicalKeyboardKey tvInputHDMI4 = LogicalKeyboardKey(0x0010000110f);
/// Represents the logical "TV Input VGA 1" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey tvInputVGA1 = LogicalKeyboardKey(0x01000001110);
+ static const LogicalKeyboardKey tvInputVGA1 = LogicalKeyboardKey(0x00100001110);
/// Represents the logical "TV Media Context" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey tvMediaContext = LogicalKeyboardKey(0x01000001111);
+ static const LogicalKeyboardKey tvMediaContext = LogicalKeyboardKey(0x00100001111);
/// Represents the logical "TV Network" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey tvNetwork = LogicalKeyboardKey(0x01000001112);
+ static const LogicalKeyboardKey tvNetwork = LogicalKeyboardKey(0x00100001112);
/// Represents the logical "TV Number Entry" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey tvNumberEntry = LogicalKeyboardKey(0x01000001113);
+ static const LogicalKeyboardKey tvNumberEntry = LogicalKeyboardKey(0x00100001113);
/// Represents the logical "TV Radio Service" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey tvRadioService = LogicalKeyboardKey(0x01000001114);
+ static const LogicalKeyboardKey tvRadioService = LogicalKeyboardKey(0x00100001114);
/// Represents the logical "TV Satellite" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey tvSatellite = LogicalKeyboardKey(0x01000001115);
+ static const LogicalKeyboardKey tvSatellite = LogicalKeyboardKey(0x00100001115);
/// Represents the logical "TV Satellite BS" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey tvSatelliteBS = LogicalKeyboardKey(0x01000001116);
+ static const LogicalKeyboardKey tvSatelliteBS = LogicalKeyboardKey(0x00100001116);
/// Represents the logical "TV Satellite CS" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey tvSatelliteCS = LogicalKeyboardKey(0x01000001117);
+ static const LogicalKeyboardKey tvSatelliteCS = LogicalKeyboardKey(0x00100001117);
/// Represents the logical "TV Satellite Toggle" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey tvSatelliteToggle = LogicalKeyboardKey(0x01000001118);
+ static const LogicalKeyboardKey tvSatelliteToggle = LogicalKeyboardKey(0x00100001118);
/// Represents the logical "TV Terrestrial Analog" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey tvTerrestrialAnalog = LogicalKeyboardKey(0x01000001119);
+ static const LogicalKeyboardKey tvTerrestrialAnalog = LogicalKeyboardKey(0x00100001119);
/// Represents the logical "TV Terrestrial Digital" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey tvTerrestrialDigital = LogicalKeyboardKey(0x0100000111a);
+ static const LogicalKeyboardKey tvTerrestrialDigital = LogicalKeyboardKey(0x0010000111a);
/// Represents the logical "TV Timer" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey tvTimer = LogicalKeyboardKey(0x0100000111b);
+ static const LogicalKeyboardKey tvTimer = LogicalKeyboardKey(0x0010000111b);
/// Represents the logical "Key 11" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey key11 = LogicalKeyboardKey(0x01000001201);
+ static const LogicalKeyboardKey key11 = LogicalKeyboardKey(0x00100001201);
/// Represents the logical "Key 12" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey key12 = LogicalKeyboardKey(0x01000001202);
-
- /// Represents the logical "Game Button 1" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey gameButton1 = LogicalKeyboardKey(0x0100005ff01);
-
- /// Represents the logical "Game Button 2" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey gameButton2 = LogicalKeyboardKey(0x0100005ff02);
-
- /// Represents the logical "Game Button 3" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey gameButton3 = LogicalKeyboardKey(0x0100005ff03);
-
- /// Represents the logical "Game Button 4" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey gameButton4 = LogicalKeyboardKey(0x0100005ff04);
-
- /// Represents the logical "Game Button 5" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey gameButton5 = LogicalKeyboardKey(0x0100005ff05);
-
- /// Represents the logical "Game Button 6" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey gameButton6 = LogicalKeyboardKey(0x0100005ff06);
-
- /// Represents the logical "Game Button 7" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey gameButton7 = LogicalKeyboardKey(0x0100005ff07);
-
- /// Represents the logical "Game Button 8" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey gameButton8 = LogicalKeyboardKey(0x0100005ff08);
-
- /// Represents the logical "Game Button 9" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey gameButton9 = LogicalKeyboardKey(0x0100005ff09);
-
- /// Represents the logical "Game Button 10" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey gameButton10 = LogicalKeyboardKey(0x0100005ff0a);
-
- /// Represents the logical "Game Button 11" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey gameButton11 = LogicalKeyboardKey(0x0100005ff0b);
-
- /// Represents the logical "Game Button 12" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey gameButton12 = LogicalKeyboardKey(0x0100005ff0c);
-
- /// Represents the logical "Game Button 13" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey gameButton13 = LogicalKeyboardKey(0x0100005ff0d);
-
- /// Represents the logical "Game Button 14" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey gameButton14 = LogicalKeyboardKey(0x0100005ff0e);
-
- /// Represents the logical "Game Button 15" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey gameButton15 = LogicalKeyboardKey(0x0100005ff0f);
-
- /// Represents the logical "Game Button 16" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey gameButton16 = LogicalKeyboardKey(0x0100005ff10);
-
- /// Represents the logical "Game Button A" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey gameButtonA = LogicalKeyboardKey(0x0100005ff11);
-
- /// Represents the logical "Game Button B" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey gameButtonB = LogicalKeyboardKey(0x0100005ff12);
-
- /// Represents the logical "Game Button C" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey gameButtonC = LogicalKeyboardKey(0x0100005ff13);
-
- /// Represents the logical "Game Button Left 1" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey gameButtonLeft1 = LogicalKeyboardKey(0x0100005ff14);
-
- /// Represents the logical "Game Button Left 2" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey gameButtonLeft2 = LogicalKeyboardKey(0x0100005ff15);
-
- /// Represents the logical "Game Button Mode" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey gameButtonMode = LogicalKeyboardKey(0x0100005ff16);
-
- /// Represents the logical "Game Button Right 1" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey gameButtonRight1 = LogicalKeyboardKey(0x0100005ff17);
-
- /// Represents the logical "Game Button Right 2" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey gameButtonRight2 = LogicalKeyboardKey(0x0100005ff18);
-
- /// Represents the logical "Game Button Select" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey gameButtonSelect = LogicalKeyboardKey(0x0100005ff19);
-
- /// Represents the logical "Game Button Start" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey gameButtonStart = LogicalKeyboardKey(0x0100005ff1a);
-
- /// Represents the logical "Game Button Thumb Left" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey gameButtonThumbLeft = LogicalKeyboardKey(0x0100005ff1b);
-
- /// Represents the logical "Game Button Thumb Right" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey gameButtonThumbRight = LogicalKeyboardKey(0x0100005ff1c);
-
- /// Represents the logical "Game Button X" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey gameButtonX = LogicalKeyboardKey(0x0100005ff1d);
-
- /// Represents the logical "Game Button Y" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey gameButtonY = LogicalKeyboardKey(0x0100005ff1e);
-
- /// Represents the logical "Game Button Z" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey gameButtonZ = LogicalKeyboardKey(0x0100005ff1f);
+ static const LogicalKeyboardKey key12 = LogicalKeyboardKey(0x00100001202);
/// Represents the logical "Suspend" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey suspend = LogicalKeyboardKey(0x01100000014);
+ static const LogicalKeyboardKey suspend = LogicalKeyboardKey(0x00200000000);
/// Represents the logical "Resume" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey resume = LogicalKeyboardKey(0x01100000015);
+ static const LogicalKeyboardKey resume = LogicalKeyboardKey(0x00200000001);
/// Represents the logical "Sleep" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey sleep = LogicalKeyboardKey(0x01100010082);
-
- /// Represents the logical "Intl Backslash" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey intlBackslash = LogicalKeyboardKey(0x01100070064);
-
- /// Represents the logical "Intl Ro" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey intlRo = LogicalKeyboardKey(0x01100070087);
-
- /// Represents the logical "Intl Yen" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey intlYen = LogicalKeyboardKey(0x01100070089);
-
- /// Represents the logical "Lang 1" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey lang1 = LogicalKeyboardKey(0x01100070090);
-
- /// Represents the logical "Lang 2" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey lang2 = LogicalKeyboardKey(0x01100070091);
-
- /// Represents the logical "Lang 3" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey lang3 = LogicalKeyboardKey(0x01100070092);
-
- /// Represents the logical "Lang 4" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey lang4 = LogicalKeyboardKey(0x01100070093);
-
- /// Represents the logical "Lang 5" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey lang5 = LogicalKeyboardKey(0x01100070094);
+ static const LogicalKeyboardKey sleep = LogicalKeyboardKey(0x00200000002);
/// Represents the logical "Abort" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey abort = LogicalKeyboardKey(0x0110007009b);
+ static const LogicalKeyboardKey abort = LogicalKeyboardKey(0x00200000003);
- /// Represents the logical "Alt Left" key on the keyboard.
+ /// Represents the logical "Lang 1" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey altLeft = LogicalKeyboardKey(0x30000000102);
+ static const LogicalKeyboardKey lang1 = LogicalKeyboardKey(0x00200000010);
+
+ /// Represents the logical "Lang 2" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey lang2 = LogicalKeyboardKey(0x00200000011);
+
+ /// Represents the logical "Lang 3" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey lang3 = LogicalKeyboardKey(0x00200000012);
+
+ /// Represents the logical "Lang 4" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey lang4 = LogicalKeyboardKey(0x00200000013);
+
+ /// Represents the logical "Lang 5" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey lang5 = LogicalKeyboardKey(0x00200000014);
+
+ /// Represents the logical "Intl Backslash" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey intlBackslash = LogicalKeyboardKey(0x00200000020);
+
+ /// Represents the logical "Intl Ro" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey intlRo = LogicalKeyboardKey(0x00200000021);
+
+ /// Represents the logical "Intl Yen" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey intlYen = LogicalKeyboardKey(0x00200000022);
/// Represents the logical "Control Left" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey controlLeft = LogicalKeyboardKey(0x30000000105);
-
- /// Represents the logical "Meta Left" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey metaLeft = LogicalKeyboardKey(0x30000000109);
-
- /// Represents the logical "Shift Left" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey shiftLeft = LogicalKeyboardKey(0x3000000010d);
-
- /// Represents the logical "Alt Right" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey altRight = LogicalKeyboardKey(0x40000000102);
+ static const LogicalKeyboardKey controlLeft = LogicalKeyboardKey(0x00200000100);
/// Represents the logical "Control Right" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey controlRight = LogicalKeyboardKey(0x40000000105);
+ static const LogicalKeyboardKey controlRight = LogicalKeyboardKey(0x00200000101);
- /// Represents the logical "Meta Right" key on the keyboard.
+ /// Represents the logical "Shift Left" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey metaRight = LogicalKeyboardKey(0x40000000109);
+ static const LogicalKeyboardKey shiftLeft = LogicalKeyboardKey(0x00200000102);
/// Represents the logical "Shift Right" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey shiftRight = LogicalKeyboardKey(0x4000000010d);
+ static const LogicalKeyboardKey shiftRight = LogicalKeyboardKey(0x00200000103);
- /// Represents the logical "Numpad Enter" key on the keyboard.
+ /// Represents the logical "Alt Left" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey numpadEnter = LogicalKeyboardKey(0x5000000000d);
+ static const LogicalKeyboardKey altLeft = LogicalKeyboardKey(0x00200000104);
- /// Represents the logical "Numpad Paren Left" key on the keyboard.
+ /// Represents the logical "Alt Right" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey numpadParenLeft = LogicalKeyboardKey(0x50000000028);
+ static const LogicalKeyboardKey altRight = LogicalKeyboardKey(0x00200000105);
- /// Represents the logical "Numpad Paren Right" key on the keyboard.
+ /// Represents the logical "Meta Left" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey numpadParenRight = LogicalKeyboardKey(0x50000000029);
+ static const LogicalKeyboardKey metaLeft = LogicalKeyboardKey(0x00200000106);
- /// Represents the logical "Numpad Multiply" key on the keyboard.
+ /// Represents the logical "Meta Right" key on the keyboard.
///
/// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey numpadMultiply = LogicalKeyboardKey(0x5000000002a);
-
- /// Represents the logical "Numpad Add" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey numpadAdd = LogicalKeyboardKey(0x5000000002b);
-
- /// Represents the logical "Numpad Comma" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey numpadComma = LogicalKeyboardKey(0x5000000002c);
-
- /// Represents the logical "Numpad Subtract" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey numpadSubtract = LogicalKeyboardKey(0x5000000002d);
-
- /// Represents the logical "Numpad Decimal" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey numpadDecimal = LogicalKeyboardKey(0x5000000002e);
-
- /// Represents the logical "Numpad Divide" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey numpadDivide = LogicalKeyboardKey(0x5000000002f);
-
- /// Represents the logical "Numpad 0" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey numpad0 = LogicalKeyboardKey(0x50000000030);
-
- /// Represents the logical "Numpad 1" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey numpad1 = LogicalKeyboardKey(0x50000000031);
-
- /// Represents the logical "Numpad 2" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey numpad2 = LogicalKeyboardKey(0x50000000032);
-
- /// Represents the logical "Numpad 3" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey numpad3 = LogicalKeyboardKey(0x50000000033);
-
- /// Represents the logical "Numpad 4" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey numpad4 = LogicalKeyboardKey(0x50000000034);
-
- /// Represents the logical "Numpad 5" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey numpad5 = LogicalKeyboardKey(0x50000000035);
-
- /// Represents the logical "Numpad 6" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey numpad6 = LogicalKeyboardKey(0x50000000036);
-
- /// Represents the logical "Numpad 7" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey numpad7 = LogicalKeyboardKey(0x50000000037);
-
- /// Represents the logical "Numpad 8" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey numpad8 = LogicalKeyboardKey(0x50000000038);
-
- /// Represents the logical "Numpad 9" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey numpad9 = LogicalKeyboardKey(0x50000000039);
-
- /// Represents the logical "Numpad Equal" key on the keyboard.
- ///
- /// See the function [RawKeyEvent.logicalKey] for more information.
- static const LogicalKeyboardKey numpadEqual = LogicalKeyboardKey(0x5000000003d);
-
- /// Represents the logical "Shift" key on the keyboard.
- ///
- /// This key represents the union of the keys {shiftLeft, shiftRight} when
- /// comparing keys. This key will never be generated directly, its main use is
- /// in defining key maps.
- static const LogicalKeyboardKey shift = LogicalKeyboardKey(0x2000000010d);
-
- /// Represents the logical "Meta" key on the keyboard.
- ///
- /// This key represents the union of the keys {metaLeft, metaRight} when
- /// comparing keys. This key will never be generated directly, its main use is
- /// in defining key maps.
- static const LogicalKeyboardKey meta = LogicalKeyboardKey(0x20000000109);
-
- /// Represents the logical "Alt" key on the keyboard.
- ///
- /// This key represents the union of the keys {altLeft, altRight} when
- /// comparing keys. This key will never be generated directly, its main use is
- /// in defining key maps.
- static const LogicalKeyboardKey alt = LogicalKeyboardKey(0x20000000102);
+ static const LogicalKeyboardKey metaRight = LogicalKeyboardKey(0x00200000107);
/// Represents the logical "Control" key on the keyboard.
///
/// This key represents the union of the keys {controlLeft, controlRight} when
/// comparing keys. This key will never be generated directly, its main use is
/// in defining key maps.
- static const LogicalKeyboardKey control = LogicalKeyboardKey(0x20000000105);
+ static const LogicalKeyboardKey control = LogicalKeyboardKey(0x002000001f0);
+
+ /// Represents the logical "Shift" key on the keyboard.
+ ///
+ /// This key represents the union of the keys {shiftLeft, shiftRight} when
+ /// comparing keys. This key will never be generated directly, its main use is
+ /// in defining key maps.
+ static const LogicalKeyboardKey shift = LogicalKeyboardKey(0x002000001f2);
+
+ /// Represents the logical "Alt" key on the keyboard.
+ ///
+ /// This key represents the union of the keys {altLeft, altRight} when
+ /// comparing keys. This key will never be generated directly, its main use is
+ /// in defining key maps.
+ static const LogicalKeyboardKey alt = LogicalKeyboardKey(0x002000001f4);
+
+ /// Represents the logical "Meta" key on the keyboard.
+ ///
+ /// This key represents the union of the keys {metaLeft, metaRight} when
+ /// comparing keys. This key will never be generated directly, its main use is
+ /// in defining key maps.
+ static const LogicalKeyboardKey meta = LogicalKeyboardKey(0x002000001f6);
+
+ /// Represents the logical "Numpad Enter" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey numpadEnter = LogicalKeyboardKey(0x0020000020d);
+
+ /// Represents the logical "Numpad Paren Left" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey numpadParenLeft = LogicalKeyboardKey(0x00200000228);
+
+ /// Represents the logical "Numpad Paren Right" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey numpadParenRight = LogicalKeyboardKey(0x00200000229);
+
+ /// Represents the logical "Numpad Multiply" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey numpadMultiply = LogicalKeyboardKey(0x0020000022a);
+
+ /// Represents the logical "Numpad Add" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey numpadAdd = LogicalKeyboardKey(0x0020000022b);
+
+ /// Represents the logical "Numpad Comma" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey numpadComma = LogicalKeyboardKey(0x0020000022c);
+
+ /// Represents the logical "Numpad Subtract" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey numpadSubtract = LogicalKeyboardKey(0x0020000022d);
+
+ /// Represents the logical "Numpad Decimal" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey numpadDecimal = LogicalKeyboardKey(0x0020000022e);
+
+ /// Represents the logical "Numpad Divide" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey numpadDivide = LogicalKeyboardKey(0x0020000022f);
+
+ /// Represents the logical "Numpad 0" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey numpad0 = LogicalKeyboardKey(0x00200000230);
+
+ /// Represents the logical "Numpad 1" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey numpad1 = LogicalKeyboardKey(0x00200000231);
+
+ /// Represents the logical "Numpad 2" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey numpad2 = LogicalKeyboardKey(0x00200000232);
+
+ /// Represents the logical "Numpad 3" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey numpad3 = LogicalKeyboardKey(0x00200000233);
+
+ /// Represents the logical "Numpad 4" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey numpad4 = LogicalKeyboardKey(0x00200000234);
+
+ /// Represents the logical "Numpad 5" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey numpad5 = LogicalKeyboardKey(0x00200000235);
+
+ /// Represents the logical "Numpad 6" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey numpad6 = LogicalKeyboardKey(0x00200000236);
+
+ /// Represents the logical "Numpad 7" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey numpad7 = LogicalKeyboardKey(0x00200000237);
+
+ /// Represents the logical "Numpad 8" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey numpad8 = LogicalKeyboardKey(0x00200000238);
+
+ /// Represents the logical "Numpad 9" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey numpad9 = LogicalKeyboardKey(0x00200000239);
+
+ /// Represents the logical "Numpad Equal" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey numpadEqual = LogicalKeyboardKey(0x0020000023d);
+
+ /// Represents the logical "Game Button 1" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey gameButton1 = LogicalKeyboardKey(0x00200000301);
+
+ /// Represents the logical "Game Button 2" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey gameButton2 = LogicalKeyboardKey(0x00200000302);
+
+ /// Represents the logical "Game Button 3" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey gameButton3 = LogicalKeyboardKey(0x00200000303);
+
+ /// Represents the logical "Game Button 4" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey gameButton4 = LogicalKeyboardKey(0x00200000304);
+
+ /// Represents the logical "Game Button 5" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey gameButton5 = LogicalKeyboardKey(0x00200000305);
+
+ /// Represents the logical "Game Button 6" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey gameButton6 = LogicalKeyboardKey(0x00200000306);
+
+ /// Represents the logical "Game Button 7" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey gameButton7 = LogicalKeyboardKey(0x00200000307);
+
+ /// Represents the logical "Game Button 8" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey gameButton8 = LogicalKeyboardKey(0x00200000308);
+
+ /// Represents the logical "Game Button 9" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey gameButton9 = LogicalKeyboardKey(0x00200000309);
+
+ /// Represents the logical "Game Button 10" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey gameButton10 = LogicalKeyboardKey(0x0020000030a);
+
+ /// Represents the logical "Game Button 11" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey gameButton11 = LogicalKeyboardKey(0x0020000030b);
+
+ /// Represents the logical "Game Button 12" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey gameButton12 = LogicalKeyboardKey(0x0020000030c);
+
+ /// Represents the logical "Game Button 13" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey gameButton13 = LogicalKeyboardKey(0x0020000030d);
+
+ /// Represents the logical "Game Button 14" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey gameButton14 = LogicalKeyboardKey(0x0020000030e);
+
+ /// Represents the logical "Game Button 15" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey gameButton15 = LogicalKeyboardKey(0x0020000030f);
+
+ /// Represents the logical "Game Button 16" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey gameButton16 = LogicalKeyboardKey(0x00200000310);
+
+ /// Represents the logical "Game Button A" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey gameButtonA = LogicalKeyboardKey(0x00200000311);
+
+ /// Represents the logical "Game Button B" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey gameButtonB = LogicalKeyboardKey(0x00200000312);
+
+ /// Represents the logical "Game Button C" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey gameButtonC = LogicalKeyboardKey(0x00200000313);
+
+ /// Represents the logical "Game Button Left 1" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey gameButtonLeft1 = LogicalKeyboardKey(0x00200000314);
+
+ /// Represents the logical "Game Button Left 2" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey gameButtonLeft2 = LogicalKeyboardKey(0x00200000315);
+
+ /// Represents the logical "Game Button Mode" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey gameButtonMode = LogicalKeyboardKey(0x00200000316);
+
+ /// Represents the logical "Game Button Right 1" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey gameButtonRight1 = LogicalKeyboardKey(0x00200000317);
+
+ /// Represents the logical "Game Button Right 2" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey gameButtonRight2 = LogicalKeyboardKey(0x00200000318);
+
+ /// Represents the logical "Game Button Select" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey gameButtonSelect = LogicalKeyboardKey(0x00200000319);
+
+ /// Represents the logical "Game Button Start" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey gameButtonStart = LogicalKeyboardKey(0x0020000031a);
+
+ /// Represents the logical "Game Button Thumb Left" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey gameButtonThumbLeft = LogicalKeyboardKey(0x0020000031b);
+
+ /// Represents the logical "Game Button Thumb Right" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey gameButtonThumbRight = LogicalKeyboardKey(0x0020000031c);
+
+ /// Represents the logical "Game Button X" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey gameButtonX = LogicalKeyboardKey(0x0020000031d);
+
+ /// Represents the logical "Game Button Y" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey gameButtonY = LogicalKeyboardKey(0x0020000031e);
+
+ /// Represents the logical "Game Button Z" key on the keyboard.
+ ///
+ /// See the function [RawKeyEvent.logicalKey] for more information.
+ static const LogicalKeyboardKey gameButtonZ = LogicalKeyboardKey(0x0020000031f);
// A list of all predefined constant LogicalKeyboardKeys so they can be
// searched.
static const Map _knownLogicalKeys = {
- 0x00000000000: none,
0x00000000020: space,
0x00000000021: exclamation,
0x00000000022: quote,
@@ -2669,381 +2696,381 @@ class LogicalKeyboardKey extends KeyboardKey {
0x0000000007c: bar,
0x0000000007d: braceRight,
0x0000000007e: tilde,
- 0x01000000001: unidentified,
- 0x01000000008: backspace,
- 0x01000000009: tab,
- 0x0100000000d: enter,
- 0x0100000001b: escape,
- 0x0100000007f: delete,
- 0x01000000101: accel,
- 0x01000000103: altGraph,
- 0x01000000104: capsLock,
- 0x01000000106: fn,
- 0x01000000107: fnLock,
- 0x01000000108: hyper,
- 0x0100000010a: numLock,
- 0x0100000010c: scrollLock,
- 0x0100000010e: superKey,
- 0x0100000010f: symbol,
- 0x01000000110: symbolLock,
- 0x01000000111: shiftLevel5,
- 0x01000000301: arrowDown,
- 0x01000000302: arrowLeft,
- 0x01000000303: arrowRight,
- 0x01000000304: arrowUp,
- 0x01000000305: end,
- 0x01000000306: home,
- 0x01000000307: pageDown,
- 0x01000000308: pageUp,
- 0x01000000401: clear,
- 0x01000000402: copy,
- 0x01000000403: crSel,
- 0x01000000404: cut,
- 0x01000000405: eraseEof,
- 0x01000000406: exSel,
- 0x01000000407: insert,
- 0x01000000408: paste,
- 0x01000000409: redo,
- 0x0100000040a: undo,
- 0x01000000501: accept,
- 0x01000000502: again,
- 0x01000000503: attn,
- 0x01000000504: cancel,
- 0x01000000505: contextMenu,
- 0x01000000506: execute,
- 0x01000000507: find,
- 0x01000000508: help,
- 0x01000000509: pause,
- 0x0100000050a: play,
- 0x0100000050b: props,
- 0x0100000050c: select,
- 0x0100000050d: zoomIn,
- 0x0100000050e: zoomOut,
- 0x01000000601: brightnessDown,
- 0x01000000602: brightnessUp,
- 0x01000000603: camera,
- 0x01000000604: eject,
- 0x01000000605: logOff,
- 0x01000000606: power,
- 0x01000000607: powerOff,
- 0x01000000608: printScreen,
- 0x01000000609: hibernate,
- 0x0100000060a: standby,
- 0x0100000060b: wakeUp,
- 0x01000000701: allCandidates,
- 0x01000000702: alphanumeric,
- 0x01000000703: codeInput,
- 0x01000000704: compose,
- 0x01000000705: convert,
- 0x01000000706: finalMode,
- 0x01000000707: groupFirst,
- 0x01000000708: groupLast,
- 0x01000000709: groupNext,
- 0x0100000070a: groupPrevious,
- 0x0100000070b: modeChange,
- 0x0100000070c: nextCandidate,
- 0x0100000070d: nonConvert,
- 0x0100000070e: previousCandidate,
- 0x0100000070f: process,
- 0x01000000710: singleCandidate,
- 0x01000000711: hangulMode,
- 0x01000000712: hanjaMode,
- 0x01000000713: junjaMode,
- 0x01000000714: eisu,
- 0x01000000715: hankaku,
- 0x01000000716: hiragana,
- 0x01000000717: hiraganaKatakana,
- 0x01000000718: kanaMode,
- 0x01000000719: kanjiMode,
- 0x0100000071a: katakana,
- 0x0100000071b: romaji,
- 0x0100000071c: zenkaku,
- 0x0100000071d: zenkakuHankaku,
- 0x01000000801: f1,
- 0x01000000802: f2,
- 0x01000000803: f3,
- 0x01000000804: f4,
- 0x01000000805: f5,
- 0x01000000806: f6,
- 0x01000000807: f7,
- 0x01000000808: f8,
- 0x01000000809: f9,
- 0x0100000080a: f10,
- 0x0100000080b: f11,
- 0x0100000080c: f12,
- 0x0100000080d: f13,
- 0x0100000080e: f14,
- 0x0100000080f: f15,
- 0x01000000810: f16,
- 0x01000000811: f17,
- 0x01000000812: f18,
- 0x01000000813: f19,
- 0x01000000814: f20,
- 0x01000000815: f21,
- 0x01000000816: f22,
- 0x01000000817: f23,
- 0x01000000818: f24,
- 0x01000000901: soft1,
- 0x01000000902: soft2,
- 0x01000000903: soft3,
- 0x01000000904: soft4,
- 0x01000000905: soft5,
- 0x01000000906: soft6,
- 0x01000000907: soft7,
- 0x01000000908: soft8,
- 0x01000000a01: close,
- 0x01000000a02: mailForward,
- 0x01000000a03: mailReply,
- 0x01000000a04: mailSend,
- 0x01000000a05: mediaPlayPause,
- 0x01000000a07: mediaStop,
- 0x01000000a08: mediaTrackNext,
- 0x01000000a09: mediaTrackPrevious,
- 0x01000000a0a: newKey,
- 0x01000000a0b: open,
- 0x01000000a0c: print,
- 0x01000000a0d: save,
- 0x01000000a0e: spellCheck,
- 0x01000000a0f: audioVolumeDown,
- 0x01000000a10: audioVolumeUp,
- 0x01000000a11: audioVolumeMute,
- 0x01000000b01: launchApplication2,
- 0x01000000b02: launchCalendar,
- 0x01000000b03: launchMail,
- 0x01000000b04: launchMediaPlayer,
- 0x01000000b05: launchMusicPlayer,
- 0x01000000b06: launchApplication1,
- 0x01000000b07: launchScreenSaver,
- 0x01000000b08: launchSpreadsheet,
- 0x01000000b09: launchWebBrowser,
- 0x01000000b0a: launchWebCam,
- 0x01000000b0b: launchWordProcessor,
- 0x01000000b0c: launchContacts,
- 0x01000000b0d: launchPhone,
- 0x01000000b0e: launchAssistant,
- 0x01000000b0f: launchControlPanel,
- 0x01000000c01: browserBack,
- 0x01000000c02: browserFavorites,
- 0x01000000c03: browserForward,
- 0x01000000c04: browserHome,
- 0x01000000c05: browserRefresh,
- 0x01000000c06: browserSearch,
- 0x01000000c07: browserStop,
- 0x01000000d01: audioBalanceLeft,
- 0x01000000d02: audioBalanceRight,
- 0x01000000d03: audioBassBoostDown,
- 0x01000000d04: audioBassBoostUp,
- 0x01000000d05: audioFaderFront,
- 0x01000000d06: audioFaderRear,
- 0x01000000d07: audioSurroundModeNext,
- 0x01000000d08: avrInput,
- 0x01000000d09: avrPower,
- 0x01000000d0a: channelDown,
- 0x01000000d0b: channelUp,
- 0x01000000d0c: colorF0Red,
- 0x01000000d0d: colorF1Green,
- 0x01000000d0e: colorF2Yellow,
- 0x01000000d0f: colorF3Blue,
- 0x01000000d10: colorF4Grey,
- 0x01000000d11: colorF5Brown,
- 0x01000000d12: closedCaptionToggle,
- 0x01000000d13: dimmer,
- 0x01000000d14: displaySwap,
- 0x01000000d15: exit,
- 0x01000000d16: favoriteClear0,
- 0x01000000d17: favoriteClear1,
- 0x01000000d18: favoriteClear2,
- 0x01000000d19: favoriteClear3,
- 0x01000000d1a: favoriteRecall0,
- 0x01000000d1b: favoriteRecall1,
- 0x01000000d1c: favoriteRecall2,
- 0x01000000d1d: favoriteRecall3,
- 0x01000000d1e: favoriteStore0,
- 0x01000000d1f: favoriteStore1,
- 0x01000000d20: favoriteStore2,
- 0x01000000d21: favoriteStore3,
- 0x01000000d22: guide,
- 0x01000000d23: guideNextDay,
- 0x01000000d24: guidePreviousDay,
- 0x01000000d25: info,
- 0x01000000d26: instantReplay,
- 0x01000000d27: link,
- 0x01000000d28: listProgram,
- 0x01000000d29: liveContent,
- 0x01000000d2a: lock,
- 0x01000000d2b: mediaApps,
- 0x01000000d2c: mediaFastForward,
- 0x01000000d2d: mediaLast,
- 0x01000000d2e: mediaPause,
- 0x01000000d2f: mediaPlay,
- 0x01000000d30: mediaRecord,
- 0x01000000d31: mediaRewind,
- 0x01000000d32: mediaSkip,
- 0x01000000d33: nextFavoriteChannel,
- 0x01000000d34: nextUserProfile,
- 0x01000000d35: onDemand,
- 0x01000000d36: pInPDown,
- 0x01000000d37: pInPMove,
- 0x01000000d38: pInPToggle,
- 0x01000000d39: pInPUp,
- 0x01000000d3a: playSpeedDown,
- 0x01000000d3b: playSpeedReset,
- 0x01000000d3c: playSpeedUp,
- 0x01000000d3d: randomToggle,
- 0x01000000d3e: rcLowBattery,
- 0x01000000d3f: recordSpeedNext,
- 0x01000000d40: rfBypass,
- 0x01000000d41: scanChannelsToggle,
- 0x01000000d42: screenModeNext,
- 0x01000000d43: settings,
- 0x01000000d44: splitScreenToggle,
- 0x01000000d45: stbInput,
- 0x01000000d46: stbPower,
- 0x01000000d47: subtitle,
- 0x01000000d48: teletext,
- 0x01000000d49: tv,
- 0x01000000d4a: tvInput,
- 0x01000000d4b: tvPower,
- 0x01000000d4c: videoModeNext,
- 0x01000000d4d: wink,
- 0x01000000d4e: zoomToggle,
- 0x01000000d4f: dvr,
- 0x01000000d50: mediaAudioTrack,
- 0x01000000d51: mediaSkipBackward,
- 0x01000000d52: mediaSkipForward,
- 0x01000000d53: mediaStepBackward,
- 0x01000000d54: mediaStepForward,
- 0x01000000d55: mediaTopMenu,
- 0x01000000d56: navigateIn,
- 0x01000000d57: navigateNext,
- 0x01000000d58: navigateOut,
- 0x01000000d59: navigatePrevious,
- 0x01000000d5a: pairing,
- 0x01000000d5b: mediaClose,
- 0x01000000e02: audioBassBoostToggle,
- 0x01000000e04: audioTrebleDown,
- 0x01000000e05: audioTrebleUp,
- 0x01000000e06: microphoneToggle,
- 0x01000000e07: microphoneVolumeDown,
- 0x01000000e08: microphoneVolumeUp,
- 0x01000000e09: microphoneVolumeMute,
- 0x01000000f01: speechCorrectionList,
- 0x01000000f02: speechInputToggle,
- 0x01000001001: appSwitch,
- 0x01000001002: call,
- 0x01000001003: cameraFocus,
- 0x01000001004: endCall,
- 0x01000001005: goBack,
- 0x01000001006: goHome,
- 0x01000001007: headsetHook,
- 0x01000001008: lastNumberRedial,
- 0x01000001009: notification,
- 0x0100000100a: mannerMode,
- 0x0100000100b: voiceDial,
- 0x01000001101: tv3DMode,
- 0x01000001102: tvAntennaCable,
- 0x01000001103: tvAudioDescription,
- 0x01000001104: tvAudioDescriptionMixDown,
- 0x01000001105: tvAudioDescriptionMixUp,
- 0x01000001106: tvContentsMenu,
- 0x01000001107: tvDataService,
- 0x01000001108: tvInputComponent1,
- 0x01000001109: tvInputComponent2,
- 0x0100000110a: tvInputComposite1,
- 0x0100000110b: tvInputComposite2,
- 0x0100000110c: tvInputHDMI1,
- 0x0100000110d: tvInputHDMI2,
- 0x0100000110e: tvInputHDMI3,
- 0x0100000110f: tvInputHDMI4,
- 0x01000001110: tvInputVGA1,
- 0x01000001111: tvMediaContext,
- 0x01000001112: tvNetwork,
- 0x01000001113: tvNumberEntry,
- 0x01000001114: tvRadioService,
- 0x01000001115: tvSatellite,
- 0x01000001116: tvSatelliteBS,
- 0x01000001117: tvSatelliteCS,
- 0x01000001118: tvSatelliteToggle,
- 0x01000001119: tvTerrestrialAnalog,
- 0x0100000111a: tvTerrestrialDigital,
- 0x0100000111b: tvTimer,
- 0x01000001201: key11,
- 0x01000001202: key12,
- 0x0100005ff01: gameButton1,
- 0x0100005ff02: gameButton2,
- 0x0100005ff03: gameButton3,
- 0x0100005ff04: gameButton4,
- 0x0100005ff05: gameButton5,
- 0x0100005ff06: gameButton6,
- 0x0100005ff07: gameButton7,
- 0x0100005ff08: gameButton8,
- 0x0100005ff09: gameButton9,
- 0x0100005ff0a: gameButton10,
- 0x0100005ff0b: gameButton11,
- 0x0100005ff0c: gameButton12,
- 0x0100005ff0d: gameButton13,
- 0x0100005ff0e: gameButton14,
- 0x0100005ff0f: gameButton15,
- 0x0100005ff10: gameButton16,
- 0x0100005ff11: gameButtonA,
- 0x0100005ff12: gameButtonB,
- 0x0100005ff13: gameButtonC,
- 0x0100005ff14: gameButtonLeft1,
- 0x0100005ff15: gameButtonLeft2,
- 0x0100005ff16: gameButtonMode,
- 0x0100005ff17: gameButtonRight1,
- 0x0100005ff18: gameButtonRight2,
- 0x0100005ff19: gameButtonSelect,
- 0x0100005ff1a: gameButtonStart,
- 0x0100005ff1b: gameButtonThumbLeft,
- 0x0100005ff1c: gameButtonThumbRight,
- 0x0100005ff1d: gameButtonX,
- 0x0100005ff1e: gameButtonY,
- 0x0100005ff1f: gameButtonZ,
- 0x01100000014: suspend,
- 0x01100000015: resume,
- 0x01100010082: sleep,
- 0x01100070064: intlBackslash,
- 0x01100070087: intlRo,
- 0x01100070089: intlYen,
- 0x01100070090: lang1,
- 0x01100070091: lang2,
- 0x01100070092: lang3,
- 0x01100070093: lang4,
- 0x01100070094: lang5,
- 0x0110007009b: abort,
- 0x30000000102: altLeft,
- 0x30000000105: controlLeft,
- 0x30000000109: metaLeft,
- 0x3000000010d: shiftLeft,
- 0x40000000102: altRight,
- 0x40000000105: controlRight,
- 0x40000000109: metaRight,
- 0x4000000010d: shiftRight,
- 0x5000000000d: numpadEnter,
- 0x50000000028: numpadParenLeft,
- 0x50000000029: numpadParenRight,
- 0x5000000002a: numpadMultiply,
- 0x5000000002b: numpadAdd,
- 0x5000000002c: numpadComma,
- 0x5000000002d: numpadSubtract,
- 0x5000000002e: numpadDecimal,
- 0x5000000002f: numpadDivide,
- 0x50000000030: numpad0,
- 0x50000000031: numpad1,
- 0x50000000032: numpad2,
- 0x50000000033: numpad3,
- 0x50000000034: numpad4,
- 0x50000000035: numpad5,
- 0x50000000036: numpad6,
- 0x50000000037: numpad7,
- 0x50000000038: numpad8,
- 0x50000000039: numpad9,
- 0x5000000003d: numpadEqual,
- 0x2000000010d: shift,
- 0x20000000109: meta,
- 0x20000000102: alt,
- 0x20000000105: control,
+ 0x00100000001: unidentified,
+ 0x00100000008: backspace,
+ 0x00100000009: tab,
+ 0x0010000000d: enter,
+ 0x0010000001b: escape,
+ 0x0010000007f: delete,
+ 0x00100000101: accel,
+ 0x00100000103: altGraph,
+ 0x00100000104: capsLock,
+ 0x00100000106: fn,
+ 0x00100000107: fnLock,
+ 0x00100000108: hyper,
+ 0x0010000010a: numLock,
+ 0x0010000010c: scrollLock,
+ 0x0010000010e: superKey,
+ 0x0010000010f: symbol,
+ 0x00100000110: symbolLock,
+ 0x00100000111: shiftLevel5,
+ 0x00100000301: arrowDown,
+ 0x00100000302: arrowLeft,
+ 0x00100000303: arrowRight,
+ 0x00100000304: arrowUp,
+ 0x00100000305: end,
+ 0x00100000306: home,
+ 0x00100000307: pageDown,
+ 0x00100000308: pageUp,
+ 0x00100000401: clear,
+ 0x00100000402: copy,
+ 0x00100000403: crSel,
+ 0x00100000404: cut,
+ 0x00100000405: eraseEof,
+ 0x00100000406: exSel,
+ 0x00100000407: insert,
+ 0x00100000408: paste,
+ 0x00100000409: redo,
+ 0x0010000040a: undo,
+ 0x00100000501: accept,
+ 0x00100000502: again,
+ 0x00100000503: attn,
+ 0x00100000504: cancel,
+ 0x00100000505: contextMenu,
+ 0x00100000506: execute,
+ 0x00100000507: find,
+ 0x00100000508: help,
+ 0x00100000509: pause,
+ 0x0010000050a: play,
+ 0x0010000050b: props,
+ 0x0010000050c: select,
+ 0x0010000050d: zoomIn,
+ 0x0010000050e: zoomOut,
+ 0x00100000601: brightnessDown,
+ 0x00100000602: brightnessUp,
+ 0x00100000603: camera,
+ 0x00100000604: eject,
+ 0x00100000605: logOff,
+ 0x00100000606: power,
+ 0x00100000607: powerOff,
+ 0x00100000608: printScreen,
+ 0x00100000609: hibernate,
+ 0x0010000060a: standby,
+ 0x0010000060b: wakeUp,
+ 0x00100000701: allCandidates,
+ 0x00100000702: alphanumeric,
+ 0x00100000703: codeInput,
+ 0x00100000704: compose,
+ 0x00100000705: convert,
+ 0x00100000706: finalMode,
+ 0x00100000707: groupFirst,
+ 0x00100000708: groupLast,
+ 0x00100000709: groupNext,
+ 0x0010000070a: groupPrevious,
+ 0x0010000070b: modeChange,
+ 0x0010000070c: nextCandidate,
+ 0x0010000070d: nonConvert,
+ 0x0010000070e: previousCandidate,
+ 0x0010000070f: process,
+ 0x00100000710: singleCandidate,
+ 0x00100000711: hangulMode,
+ 0x00100000712: hanjaMode,
+ 0x00100000713: junjaMode,
+ 0x00100000714: eisu,
+ 0x00100000715: hankaku,
+ 0x00100000716: hiragana,
+ 0x00100000717: hiraganaKatakana,
+ 0x00100000718: kanaMode,
+ 0x00100000719: kanjiMode,
+ 0x0010000071a: katakana,
+ 0x0010000071b: romaji,
+ 0x0010000071c: zenkaku,
+ 0x0010000071d: zenkakuHankaku,
+ 0x00100000801: f1,
+ 0x00100000802: f2,
+ 0x00100000803: f3,
+ 0x00100000804: f4,
+ 0x00100000805: f5,
+ 0x00100000806: f6,
+ 0x00100000807: f7,
+ 0x00100000808: f8,
+ 0x00100000809: f9,
+ 0x0010000080a: f10,
+ 0x0010000080b: f11,
+ 0x0010000080c: f12,
+ 0x0010000080d: f13,
+ 0x0010000080e: f14,
+ 0x0010000080f: f15,
+ 0x00100000810: f16,
+ 0x00100000811: f17,
+ 0x00100000812: f18,
+ 0x00100000813: f19,
+ 0x00100000814: f20,
+ 0x00100000815: f21,
+ 0x00100000816: f22,
+ 0x00100000817: f23,
+ 0x00100000818: f24,
+ 0x00100000901: soft1,
+ 0x00100000902: soft2,
+ 0x00100000903: soft3,
+ 0x00100000904: soft4,
+ 0x00100000905: soft5,
+ 0x00100000906: soft6,
+ 0x00100000907: soft7,
+ 0x00100000908: soft8,
+ 0x00100000a01: close,
+ 0x00100000a02: mailForward,
+ 0x00100000a03: mailReply,
+ 0x00100000a04: mailSend,
+ 0x00100000a05: mediaPlayPause,
+ 0x00100000a07: mediaStop,
+ 0x00100000a08: mediaTrackNext,
+ 0x00100000a09: mediaTrackPrevious,
+ 0x00100000a0a: newKey,
+ 0x00100000a0b: open,
+ 0x00100000a0c: print,
+ 0x00100000a0d: save,
+ 0x00100000a0e: spellCheck,
+ 0x00100000a0f: audioVolumeDown,
+ 0x00100000a10: audioVolumeUp,
+ 0x00100000a11: audioVolumeMute,
+ 0x00100000b01: launchApplication2,
+ 0x00100000b02: launchCalendar,
+ 0x00100000b03: launchMail,
+ 0x00100000b04: launchMediaPlayer,
+ 0x00100000b05: launchMusicPlayer,
+ 0x00100000b06: launchApplication1,
+ 0x00100000b07: launchScreenSaver,
+ 0x00100000b08: launchSpreadsheet,
+ 0x00100000b09: launchWebBrowser,
+ 0x00100000b0a: launchWebCam,
+ 0x00100000b0b: launchWordProcessor,
+ 0x00100000b0c: launchContacts,
+ 0x00100000b0d: launchPhone,
+ 0x00100000b0e: launchAssistant,
+ 0x00100000b0f: launchControlPanel,
+ 0x00100000c01: browserBack,
+ 0x00100000c02: browserFavorites,
+ 0x00100000c03: browserForward,
+ 0x00100000c04: browserHome,
+ 0x00100000c05: browserRefresh,
+ 0x00100000c06: browserSearch,
+ 0x00100000c07: browserStop,
+ 0x00100000d01: audioBalanceLeft,
+ 0x00100000d02: audioBalanceRight,
+ 0x00100000d03: audioBassBoostDown,
+ 0x00100000d04: audioBassBoostUp,
+ 0x00100000d05: audioFaderFront,
+ 0x00100000d06: audioFaderRear,
+ 0x00100000d07: audioSurroundModeNext,
+ 0x00100000d08: avrInput,
+ 0x00100000d09: avrPower,
+ 0x00100000d0a: channelDown,
+ 0x00100000d0b: channelUp,
+ 0x00100000d0c: colorF0Red,
+ 0x00100000d0d: colorF1Green,
+ 0x00100000d0e: colorF2Yellow,
+ 0x00100000d0f: colorF3Blue,
+ 0x00100000d10: colorF4Grey,
+ 0x00100000d11: colorF5Brown,
+ 0x00100000d12: closedCaptionToggle,
+ 0x00100000d13: dimmer,
+ 0x00100000d14: displaySwap,
+ 0x00100000d15: exit,
+ 0x00100000d16: favoriteClear0,
+ 0x00100000d17: favoriteClear1,
+ 0x00100000d18: favoriteClear2,
+ 0x00100000d19: favoriteClear3,
+ 0x00100000d1a: favoriteRecall0,
+ 0x00100000d1b: favoriteRecall1,
+ 0x00100000d1c: favoriteRecall2,
+ 0x00100000d1d: favoriteRecall3,
+ 0x00100000d1e: favoriteStore0,
+ 0x00100000d1f: favoriteStore1,
+ 0x00100000d20: favoriteStore2,
+ 0x00100000d21: favoriteStore3,
+ 0x00100000d22: guide,
+ 0x00100000d23: guideNextDay,
+ 0x00100000d24: guidePreviousDay,
+ 0x00100000d25: info,
+ 0x00100000d26: instantReplay,
+ 0x00100000d27: link,
+ 0x00100000d28: listProgram,
+ 0x00100000d29: liveContent,
+ 0x00100000d2a: lock,
+ 0x00100000d2b: mediaApps,
+ 0x00100000d2c: mediaFastForward,
+ 0x00100000d2d: mediaLast,
+ 0x00100000d2e: mediaPause,
+ 0x00100000d2f: mediaPlay,
+ 0x00100000d30: mediaRecord,
+ 0x00100000d31: mediaRewind,
+ 0x00100000d32: mediaSkip,
+ 0x00100000d33: nextFavoriteChannel,
+ 0x00100000d34: nextUserProfile,
+ 0x00100000d35: onDemand,
+ 0x00100000d36: pInPDown,
+ 0x00100000d37: pInPMove,
+ 0x00100000d38: pInPToggle,
+ 0x00100000d39: pInPUp,
+ 0x00100000d3a: playSpeedDown,
+ 0x00100000d3b: playSpeedReset,
+ 0x00100000d3c: playSpeedUp,
+ 0x00100000d3d: randomToggle,
+ 0x00100000d3e: rcLowBattery,
+ 0x00100000d3f: recordSpeedNext,
+ 0x00100000d40: rfBypass,
+ 0x00100000d41: scanChannelsToggle,
+ 0x00100000d42: screenModeNext,
+ 0x00100000d43: settings,
+ 0x00100000d44: splitScreenToggle,
+ 0x00100000d45: stbInput,
+ 0x00100000d46: stbPower,
+ 0x00100000d47: subtitle,
+ 0x00100000d48: teletext,
+ 0x00100000d49: tv,
+ 0x00100000d4a: tvInput,
+ 0x00100000d4b: tvPower,
+ 0x00100000d4c: videoModeNext,
+ 0x00100000d4d: wink,
+ 0x00100000d4e: zoomToggle,
+ 0x00100000d4f: dvr,
+ 0x00100000d50: mediaAudioTrack,
+ 0x00100000d51: mediaSkipBackward,
+ 0x00100000d52: mediaSkipForward,
+ 0x00100000d53: mediaStepBackward,
+ 0x00100000d54: mediaStepForward,
+ 0x00100000d55: mediaTopMenu,
+ 0x00100000d56: navigateIn,
+ 0x00100000d57: navigateNext,
+ 0x00100000d58: navigateOut,
+ 0x00100000d59: navigatePrevious,
+ 0x00100000d5a: pairing,
+ 0x00100000d5b: mediaClose,
+ 0x00100000e02: audioBassBoostToggle,
+ 0x00100000e04: audioTrebleDown,
+ 0x00100000e05: audioTrebleUp,
+ 0x00100000e06: microphoneToggle,
+ 0x00100000e07: microphoneVolumeDown,
+ 0x00100000e08: microphoneVolumeUp,
+ 0x00100000e09: microphoneVolumeMute,
+ 0x00100000f01: speechCorrectionList,
+ 0x00100000f02: speechInputToggle,
+ 0x00100001001: appSwitch,
+ 0x00100001002: call,
+ 0x00100001003: cameraFocus,
+ 0x00100001004: endCall,
+ 0x00100001005: goBack,
+ 0x00100001006: goHome,
+ 0x00100001007: headsetHook,
+ 0x00100001008: lastNumberRedial,
+ 0x00100001009: notification,
+ 0x0010000100a: mannerMode,
+ 0x0010000100b: voiceDial,
+ 0x00100001101: tv3DMode,
+ 0x00100001102: tvAntennaCable,
+ 0x00100001103: tvAudioDescription,
+ 0x00100001104: tvAudioDescriptionMixDown,
+ 0x00100001105: tvAudioDescriptionMixUp,
+ 0x00100001106: tvContentsMenu,
+ 0x00100001107: tvDataService,
+ 0x00100001108: tvInputComponent1,
+ 0x00100001109: tvInputComponent2,
+ 0x0010000110a: tvInputComposite1,
+ 0x0010000110b: tvInputComposite2,
+ 0x0010000110c: tvInputHDMI1,
+ 0x0010000110d: tvInputHDMI2,
+ 0x0010000110e: tvInputHDMI3,
+ 0x0010000110f: tvInputHDMI4,
+ 0x00100001110: tvInputVGA1,
+ 0x00100001111: tvMediaContext,
+ 0x00100001112: tvNetwork,
+ 0x00100001113: tvNumberEntry,
+ 0x00100001114: tvRadioService,
+ 0x00100001115: tvSatellite,
+ 0x00100001116: tvSatelliteBS,
+ 0x00100001117: tvSatelliteCS,
+ 0x00100001118: tvSatelliteToggle,
+ 0x00100001119: tvTerrestrialAnalog,
+ 0x0010000111a: tvTerrestrialDigital,
+ 0x0010000111b: tvTimer,
+ 0x00100001201: key11,
+ 0x00100001202: key12,
+ 0x00200000000: suspend,
+ 0x00200000001: resume,
+ 0x00200000002: sleep,
+ 0x00200000003: abort,
+ 0x00200000010: lang1,
+ 0x00200000011: lang2,
+ 0x00200000012: lang3,
+ 0x00200000013: lang4,
+ 0x00200000014: lang5,
+ 0x00200000020: intlBackslash,
+ 0x00200000021: intlRo,
+ 0x00200000022: intlYen,
+ 0x00200000100: controlLeft,
+ 0x00200000101: controlRight,
+ 0x00200000102: shiftLeft,
+ 0x00200000103: shiftRight,
+ 0x00200000104: altLeft,
+ 0x00200000105: altRight,
+ 0x00200000106: metaLeft,
+ 0x00200000107: metaRight,
+ 0x002000001f0: control,
+ 0x002000001f2: shift,
+ 0x002000001f4: alt,
+ 0x002000001f6: meta,
+ 0x0020000020d: numpadEnter,
+ 0x00200000228: numpadParenLeft,
+ 0x00200000229: numpadParenRight,
+ 0x0020000022a: numpadMultiply,
+ 0x0020000022b: numpadAdd,
+ 0x0020000022c: numpadComma,
+ 0x0020000022d: numpadSubtract,
+ 0x0020000022e: numpadDecimal,
+ 0x0020000022f: numpadDivide,
+ 0x00200000230: numpad0,
+ 0x00200000231: numpad1,
+ 0x00200000232: numpad2,
+ 0x00200000233: numpad3,
+ 0x00200000234: numpad4,
+ 0x00200000235: numpad5,
+ 0x00200000236: numpad6,
+ 0x00200000237: numpad7,
+ 0x00200000238: numpad8,
+ 0x00200000239: numpad9,
+ 0x0020000023d: numpadEqual,
+ 0x00200000301: gameButton1,
+ 0x00200000302: gameButton2,
+ 0x00200000303: gameButton3,
+ 0x00200000304: gameButton4,
+ 0x00200000305: gameButton5,
+ 0x00200000306: gameButton6,
+ 0x00200000307: gameButton7,
+ 0x00200000308: gameButton8,
+ 0x00200000309: gameButton9,
+ 0x0020000030a: gameButton10,
+ 0x0020000030b: gameButton11,
+ 0x0020000030c: gameButton12,
+ 0x0020000030d: gameButton13,
+ 0x0020000030e: gameButton14,
+ 0x0020000030f: gameButton15,
+ 0x00200000310: gameButton16,
+ 0x00200000311: gameButtonA,
+ 0x00200000312: gameButtonB,
+ 0x00200000313: gameButtonC,
+ 0x00200000314: gameButtonLeft1,
+ 0x00200000315: gameButtonLeft2,
+ 0x00200000316: gameButtonMode,
+ 0x00200000317: gameButtonRight1,
+ 0x00200000318: gameButtonRight2,
+ 0x00200000319: gameButtonSelect,
+ 0x0020000031a: gameButtonStart,
+ 0x0020000031b: gameButtonThumbLeft,
+ 0x0020000031c: gameButtonThumbRight,
+ 0x0020000031d: gameButtonX,
+ 0x0020000031e: gameButtonY,
+ 0x0020000031f: gameButtonZ,
};
// A map of keys to the pseudo-key synonym for that key. Used by getSynonyms.
@@ -3059,7 +3086,6 @@ class LogicalKeyboardKey extends KeyboardKey {
};
static const Map _keyLabels = {
- 0x00000000000: 'None',
0x00000000020: 'Space',
0x00000000021: 'Exclamation',
0x00000000022: 'Quote',
@@ -3129,382 +3155,382 @@ class LogicalKeyboardKey extends KeyboardKey {
0x0000000007c: 'Bar',
0x0000000007d: 'Brace Right',
0x0000000007e: 'Tilde',
- 0x01000000001: 'Unidentified',
- 0x01000000008: 'Backspace',
- 0x01000000009: 'Tab',
- 0x0100000000d: 'Enter',
- 0x0100000001b: 'Escape',
- 0x0100000007f: 'Delete',
- 0x01000000101: 'Accel',
- 0x01000000103: 'Alt Graph',
- 0x01000000104: 'Caps Lock',
- 0x01000000106: 'Fn',
- 0x01000000107: 'Fn Lock',
- 0x01000000108: 'Hyper',
- 0x0100000010a: 'Num Lock',
- 0x0100000010c: 'Scroll Lock',
- 0x0100000010e: 'Super',
- 0x0100000010f: 'Symbol',
- 0x01000000110: 'Symbol Lock',
- 0x01000000111: 'Shift Level 5',
- 0x01000000301: 'Arrow Down',
- 0x01000000302: 'Arrow Left',
- 0x01000000303: 'Arrow Right',
- 0x01000000304: 'Arrow Up',
- 0x01000000305: 'End',
- 0x01000000306: 'Home',
- 0x01000000307: 'Page Down',
- 0x01000000308: 'Page Up',
- 0x01000000401: 'Clear',
- 0x01000000402: 'Copy',
- 0x01000000403: 'Cr Sel',
- 0x01000000404: 'Cut',
- 0x01000000405: 'Erase Eof',
- 0x01000000406: 'Ex Sel',
- 0x01000000407: 'Insert',
- 0x01000000408: 'Paste',
- 0x01000000409: 'Redo',
- 0x0100000040a: 'Undo',
- 0x01000000501: 'Accept',
- 0x01000000502: 'Again',
- 0x01000000503: 'Attn',
- 0x01000000504: 'Cancel',
- 0x01000000505: 'Context Menu',
- 0x01000000506: 'Execute',
- 0x01000000507: 'Find',
- 0x01000000508: 'Help',
- 0x01000000509: 'Pause',
- 0x0100000050a: 'Play',
- 0x0100000050b: 'Props',
- 0x0100000050c: 'Select',
- 0x0100000050d: 'Zoom In',
- 0x0100000050e: 'Zoom Out',
- 0x01000000601: 'Brightness Down',
- 0x01000000602: 'Brightness Up',
- 0x01000000603: 'Camera',
- 0x01000000604: 'Eject',
- 0x01000000605: 'Log Off',
- 0x01000000606: 'Power',
- 0x01000000607: 'Power Off',
- 0x01000000608: 'Print Screen',
- 0x01000000609: 'Hibernate',
- 0x0100000060a: 'Standby',
- 0x0100000060b: 'Wake Up',
- 0x01000000701: 'All Candidates',
- 0x01000000702: 'Alphanumeric',
- 0x01000000703: 'Code Input',
- 0x01000000704: 'Compose',
- 0x01000000705: 'Convert',
- 0x01000000706: 'Final Mode',
- 0x01000000707: 'Group First',
- 0x01000000708: 'Group Last',
- 0x01000000709: 'Group Next',
- 0x0100000070a: 'Group Previous',
- 0x0100000070b: 'Mode Change',
- 0x0100000070c: 'Next Candidate',
- 0x0100000070d: 'Non Convert',
- 0x0100000070e: 'Previous Candidate',
- 0x0100000070f: 'Process',
- 0x01000000710: 'Single Candidate',
- 0x01000000711: 'Hangul Mode',
- 0x01000000712: 'Hanja Mode',
- 0x01000000713: 'Junja Mode',
- 0x01000000714: 'Eisu',
- 0x01000000715: 'Hankaku',
- 0x01000000716: 'Hiragana',
- 0x01000000717: 'Hiragana Katakana',
- 0x01000000718: 'Kana Mode',
- 0x01000000719: 'Kanji Mode',
- 0x0100000071a: 'Katakana',
- 0x0100000071b: 'Romaji',
- 0x0100000071c: 'Zenkaku',
- 0x0100000071d: 'Zenkaku Hankaku',
- 0x01000000801: 'F1',
- 0x01000000802: 'F2',
- 0x01000000803: 'F3',
- 0x01000000804: 'F4',
- 0x01000000805: 'F5',
- 0x01000000806: 'F6',
- 0x01000000807: 'F7',
- 0x01000000808: 'F8',
- 0x01000000809: 'F9',
- 0x0100000080a: 'F10',
- 0x0100000080b: 'F11',
- 0x0100000080c: 'F12',
- 0x0100000080d: 'F13',
- 0x0100000080e: 'F14',
- 0x0100000080f: 'F15',
- 0x01000000810: 'F16',
- 0x01000000811: 'F17',
- 0x01000000812: 'F18',
- 0x01000000813: 'F19',
- 0x01000000814: 'F20',
- 0x01000000815: 'F21',
- 0x01000000816: 'F22',
- 0x01000000817: 'F23',
- 0x01000000818: 'F24',
- 0x01000000901: 'Soft 1',
- 0x01000000902: 'Soft 2',
- 0x01000000903: 'Soft 3',
- 0x01000000904: 'Soft 4',
- 0x01000000905: 'Soft 5',
- 0x01000000906: 'Soft 6',
- 0x01000000907: 'Soft 7',
- 0x01000000908: 'Soft 8',
- 0x01000000a01: 'Close',
- 0x01000000a02: 'Mail Forward',
- 0x01000000a03: 'Mail Reply',
- 0x01000000a04: 'Mail Send',
- 0x01000000a05: 'Media Play Pause',
- 0x01000000a07: 'Media Stop',
- 0x01000000a08: 'Media Track Next',
- 0x01000000a09: 'Media Track Previous',
- 0x01000000a0a: 'New',
- 0x01000000a0b: 'Open',
- 0x01000000a0c: 'Print',
- 0x01000000a0d: 'Save',
- 0x01000000a0e: 'Spell Check',
- 0x01000000a0f: 'Audio Volume Down',
- 0x01000000a10: 'Audio Volume Up',
- 0x01000000a11: 'Audio Volume Mute',
- 0x01000000b01: 'Launch Application 2',
- 0x01000000b02: 'Launch Calendar',
- 0x01000000b03: 'Launch Mail',
- 0x01000000b04: 'Launch Media Player',
- 0x01000000b05: 'Launch Music Player',
- 0x01000000b06: 'Launch Application 1',
- 0x01000000b07: 'Launch Screen Saver',
- 0x01000000b08: 'Launch Spreadsheet',
- 0x01000000b09: 'Launch Web Browser',
- 0x01000000b0a: 'Launch Web Cam',
- 0x01000000b0b: 'Launch Word Processor',
- 0x01000000b0c: 'Launch Contacts',
- 0x01000000b0d: 'Launch Phone',
- 0x01000000b0e: 'Launch Assistant',
- 0x01000000b0f: 'Launch Control Panel',
- 0x01000000c01: 'Browser Back',
- 0x01000000c02: 'Browser Favorites',
- 0x01000000c03: 'Browser Forward',
- 0x01000000c04: 'Browser Home',
- 0x01000000c05: 'Browser Refresh',
- 0x01000000c06: 'Browser Search',
- 0x01000000c07: 'Browser Stop',
- 0x01000000d01: 'Audio Balance Left',
- 0x01000000d02: 'Audio Balance Right',
- 0x01000000d03: 'Audio Bass Boost Down',
- 0x01000000d04: 'Audio Bass Boost Up',
- 0x01000000d05: 'Audio Fader Front',
- 0x01000000d06: 'Audio Fader Rear',
- 0x01000000d07: 'Audio Surround Mode Next',
- 0x01000000d08: 'AVR Input',
- 0x01000000d09: 'AVR Power',
- 0x01000000d0a: 'Channel Down',
- 0x01000000d0b: 'Channel Up',
- 0x01000000d0c: 'Color F0 Red',
- 0x01000000d0d: 'Color F1 Green',
- 0x01000000d0e: 'Color F2 Yellow',
- 0x01000000d0f: 'Color F3 Blue',
- 0x01000000d10: 'Color F4 Grey',
- 0x01000000d11: 'Color F5 Brown',
- 0x01000000d12: 'Closed Caption Toggle',
- 0x01000000d13: 'Dimmer',
- 0x01000000d14: 'Display Swap',
- 0x01000000d15: 'Exit',
- 0x01000000d16: 'Favorite Clear 0',
- 0x01000000d17: 'Favorite Clear 1',
- 0x01000000d18: 'Favorite Clear 2',
- 0x01000000d19: 'Favorite Clear 3',
- 0x01000000d1a: 'Favorite Recall 0',
- 0x01000000d1b: 'Favorite Recall 1',
- 0x01000000d1c: 'Favorite Recall 2',
- 0x01000000d1d: 'Favorite Recall 3',
- 0x01000000d1e: 'Favorite Store 0',
- 0x01000000d1f: 'Favorite Store 1',
- 0x01000000d20: 'Favorite Store 2',
- 0x01000000d21: 'Favorite Store 3',
- 0x01000000d22: 'Guide',
- 0x01000000d23: 'Guide Next Day',
- 0x01000000d24: 'Guide Previous Day',
- 0x01000000d25: 'Info',
- 0x01000000d26: 'Instant Replay',
- 0x01000000d27: 'Link',
- 0x01000000d28: 'List Program',
- 0x01000000d29: 'Live Content',
- 0x01000000d2a: 'Lock',
- 0x01000000d2b: 'Media Apps',
- 0x01000000d2c: 'Media Fast Forward',
- 0x01000000d2d: 'Media Last',
- 0x01000000d2e: 'Media Pause',
- 0x01000000d2f: 'Media Play',
- 0x01000000d30: 'Media Record',
- 0x01000000d31: 'Media Rewind',
- 0x01000000d32: 'Media Skip',
- 0x01000000d33: 'Next Favorite Channel',
- 0x01000000d34: 'Next User Profile',
- 0x01000000d35: 'On Demand',
- 0x01000000d36: 'P In P Down',
- 0x01000000d37: 'P In P Move',
- 0x01000000d38: 'P In P Toggle',
- 0x01000000d39: 'P In P Up',
- 0x01000000d3a: 'Play Speed Down',
- 0x01000000d3b: 'Play Speed Reset',
- 0x01000000d3c: 'Play Speed Up',
- 0x01000000d3d: 'Random Toggle',
- 0x01000000d3e: 'Rc Low Battery',
- 0x01000000d3f: 'Record Speed Next',
- 0x01000000d40: 'Rf Bypass',
- 0x01000000d41: 'Scan Channels Toggle',
- 0x01000000d42: 'Screen Mode Next',
- 0x01000000d43: 'Settings',
- 0x01000000d44: 'Split Screen Toggle',
- 0x01000000d45: 'STB Input',
- 0x01000000d46: 'STB Power',
- 0x01000000d47: 'Subtitle',
- 0x01000000d48: 'Teletext',
- 0x01000000d49: 'TV',
- 0x01000000d4a: 'TV Input',
- 0x01000000d4b: 'TV Power',
- 0x01000000d4c: 'Video Mode Next',
- 0x01000000d4d: 'Wink',
- 0x01000000d4e: 'Zoom Toggle',
- 0x01000000d4f: 'DVR',
- 0x01000000d50: 'Media Audio Track',
- 0x01000000d51: 'Media Skip Backward',
- 0x01000000d52: 'Media Skip Forward',
- 0x01000000d53: 'Media Step Backward',
- 0x01000000d54: 'Media Step Forward',
- 0x01000000d55: 'Media Top Menu',
- 0x01000000d56: 'Navigate In',
- 0x01000000d57: 'Navigate Next',
- 0x01000000d58: 'Navigate Out',
- 0x01000000d59: 'Navigate Previous',
- 0x01000000d5a: 'Pairing',
- 0x01000000d5b: 'Media Close',
- 0x01000000e02: 'Audio Bass Boost Toggle',
- 0x01000000e04: 'Audio Treble Down',
- 0x01000000e05: 'Audio Treble Up',
- 0x01000000e06: 'Microphone Toggle',
- 0x01000000e07: 'Microphone Volume Down',
- 0x01000000e08: 'Microphone Volume Up',
- 0x01000000e09: 'Microphone Volume Mute',
- 0x01000000f01: 'Speech Correction List',
- 0x01000000f02: 'Speech Input Toggle',
- 0x01000001001: 'App Switch',
- 0x01000001002: 'Call',
- 0x01000001003: 'Camera Focus',
- 0x01000001004: 'End Call',
- 0x01000001005: 'Go Back',
- 0x01000001006: 'Go Home',
- 0x01000001007: 'Headset Hook',
- 0x01000001008: 'Last Number Redial',
- 0x01000001009: 'Notification',
- 0x0100000100a: 'Manner Mode',
- 0x0100000100b: 'Voice Dial',
- 0x01000001101: 'TV 3 D Mode',
- 0x01000001102: 'TV Antenna Cable',
- 0x01000001103: 'TV Audio Description',
- 0x01000001104: 'TV Audio Description Mix Down',
- 0x01000001105: 'TV Audio Description Mix Up',
- 0x01000001106: 'TV Contents Menu',
- 0x01000001107: 'TV Data Service',
- 0x01000001108: 'TV Input Component 1',
- 0x01000001109: 'TV Input Component 2',
- 0x0100000110a: 'TV Input Composite 1',
- 0x0100000110b: 'TV Input Composite 2',
- 0x0100000110c: 'TV Input HDMI 1',
- 0x0100000110d: 'TV Input HDMI 2',
- 0x0100000110e: 'TV Input HDMI 3',
- 0x0100000110f: 'TV Input HDMI 4',
- 0x01000001110: 'TV Input VGA 1',
- 0x01000001111: 'TV Media Context',
- 0x01000001112: 'TV Network',
- 0x01000001113: 'TV Number Entry',
- 0x01000001114: 'TV Radio Service',
- 0x01000001115: 'TV Satellite',
- 0x01000001116: 'TV Satellite BS',
- 0x01000001117: 'TV Satellite CS',
- 0x01000001118: 'TV Satellite Toggle',
- 0x01000001119: 'TV Terrestrial Analog',
- 0x0100000111a: 'TV Terrestrial Digital',
- 0x0100000111b: 'TV Timer',
- 0x01000001201: 'Key 11',
- 0x01000001202: 'Key 12',
- 0x0100005ff01: 'Game Button 1',
- 0x0100005ff02: 'Game Button 2',
- 0x0100005ff03: 'Game Button 3',
- 0x0100005ff04: 'Game Button 4',
- 0x0100005ff05: 'Game Button 5',
- 0x0100005ff06: 'Game Button 6',
- 0x0100005ff07: 'Game Button 7',
- 0x0100005ff08: 'Game Button 8',
- 0x0100005ff09: 'Game Button 9',
- 0x0100005ff0a: 'Game Button 10',
- 0x0100005ff0b: 'Game Button 11',
- 0x0100005ff0c: 'Game Button 12',
- 0x0100005ff0d: 'Game Button 13',
- 0x0100005ff0e: 'Game Button 14',
- 0x0100005ff0f: 'Game Button 15',
- 0x0100005ff10: 'Game Button 16',
- 0x0100005ff11: 'Game Button A',
- 0x0100005ff12: 'Game Button B',
- 0x0100005ff13: 'Game Button C',
- 0x0100005ff14: 'Game Button Left 1',
- 0x0100005ff15: 'Game Button Left 2',
- 0x0100005ff16: 'Game Button Mode',
- 0x0100005ff17: 'Game Button Right 1',
- 0x0100005ff18: 'Game Button Right 2',
- 0x0100005ff19: 'Game Button Select',
- 0x0100005ff1a: 'Game Button Start',
- 0x0100005ff1b: 'Game Button Thumb Left',
- 0x0100005ff1c: 'Game Button Thumb Right',
- 0x0100005ff1d: 'Game Button X',
- 0x0100005ff1e: 'Game Button Y',
- 0x0100005ff1f: 'Game Button Z',
- 0x01100000014: 'Suspend',
- 0x01100000015: 'Resume',
- 0x01100010082: 'Sleep',
- 0x01100070064: 'Intl Backslash',
- 0x01100070087: 'Intl Ro',
- 0x01100070089: 'Intl Yen',
- 0x01100070090: 'Lang 1',
- 0x01100070091: 'Lang 2',
- 0x01100070092: 'Lang 3',
- 0x01100070093: 'Lang 4',
- 0x01100070094: 'Lang 5',
- 0x0110007009b: 'Abort',
- 0x30000000102: 'Alt Left',
- 0x30000000105: 'Control Left',
- 0x30000000109: 'Meta Left',
- 0x3000000010d: 'Shift Left',
- 0x40000000102: 'Alt Right',
- 0x40000000105: 'Control Right',
- 0x40000000109: 'Meta Right',
- 0x4000000010d: 'Shift Right',
- 0x5000000000d: 'Numpad Enter',
- 0x50000000028: 'Numpad Paren Left',
- 0x50000000029: 'Numpad Paren Right',
- 0x5000000002a: 'Numpad Multiply',
- 0x5000000002b: 'Numpad Add',
- 0x5000000002c: 'Numpad Comma',
- 0x5000000002d: 'Numpad Subtract',
- 0x5000000002e: 'Numpad Decimal',
- 0x5000000002f: 'Numpad Divide',
- 0x50000000030: 'Numpad 0',
- 0x50000000031: 'Numpad 1',
- 0x50000000032: 'Numpad 2',
- 0x50000000033: 'Numpad 3',
- 0x50000000034: 'Numpad 4',
- 0x50000000035: 'Numpad 5',
- 0x50000000036: 'Numpad 6',
- 0x50000000037: 'Numpad 7',
- 0x50000000038: 'Numpad 8',
- 0x50000000039: 'Numpad 9',
- 0x5000000003d: 'Numpad Equal',
- 0x2000000010d: 'Shift',
- 0x20000000109: 'Meta',
- 0x20000000102: 'Alt',
- 0x20000000105: 'Control',
- };
+ 0x00100000001: 'Unidentified',
+ 0x00100000008: 'Backspace',
+ 0x00100000009: 'Tab',
+ 0x0010000000d: 'Enter',
+ 0x0010000001b: 'Escape',
+ 0x0010000007f: 'Delete',
+ 0x00100000101: 'Accel',
+ 0x00100000103: 'Alt Graph',
+ 0x00100000104: 'Caps Lock',
+ 0x00100000106: 'Fn',
+ 0x00100000107: 'Fn Lock',
+ 0x00100000108: 'Hyper',
+ 0x0010000010a: 'Num Lock',
+ 0x0010000010c: 'Scroll Lock',
+ 0x0010000010e: 'Super',
+ 0x0010000010f: 'Symbol',
+ 0x00100000110: 'Symbol Lock',
+ 0x00100000111: 'Shift Level 5',
+ 0x00100000301: 'Arrow Down',
+ 0x00100000302: 'Arrow Left',
+ 0x00100000303: 'Arrow Right',
+ 0x00100000304: 'Arrow Up',
+ 0x00100000305: 'End',
+ 0x00100000306: 'Home',
+ 0x00100000307: 'Page Down',
+ 0x00100000308: 'Page Up',
+ 0x00100000401: 'Clear',
+ 0x00100000402: 'Copy',
+ 0x00100000403: 'Cr Sel',
+ 0x00100000404: 'Cut',
+ 0x00100000405: 'Erase Eof',
+ 0x00100000406: 'Ex Sel',
+ 0x00100000407: 'Insert',
+ 0x00100000408: 'Paste',
+ 0x00100000409: 'Redo',
+ 0x0010000040a: 'Undo',
+ 0x00100000501: 'Accept',
+ 0x00100000502: 'Again',
+ 0x00100000503: 'Attn',
+ 0x00100000504: 'Cancel',
+ 0x00100000505: 'Context Menu',
+ 0x00100000506: 'Execute',
+ 0x00100000507: 'Find',
+ 0x00100000508: 'Help',
+ 0x00100000509: 'Pause',
+ 0x0010000050a: 'Play',
+ 0x0010000050b: 'Props',
+ 0x0010000050c: 'Select',
+ 0x0010000050d: 'Zoom In',
+ 0x0010000050e: 'Zoom Out',
+ 0x00100000601: 'Brightness Down',
+ 0x00100000602: 'Brightness Up',
+ 0x00100000603: 'Camera',
+ 0x00100000604: 'Eject',
+ 0x00100000605: 'Log Off',
+ 0x00100000606: 'Power',
+ 0x00100000607: 'Power Off',
+ 0x00100000608: 'Print Screen',
+ 0x00100000609: 'Hibernate',
+ 0x0010000060a: 'Standby',
+ 0x0010000060b: 'Wake Up',
+ 0x00100000701: 'All Candidates',
+ 0x00100000702: 'Alphanumeric',
+ 0x00100000703: 'Code Input',
+ 0x00100000704: 'Compose',
+ 0x00100000705: 'Convert',
+ 0x00100000706: 'Final Mode',
+ 0x00100000707: 'Group First',
+ 0x00100000708: 'Group Last',
+ 0x00100000709: 'Group Next',
+ 0x0010000070a: 'Group Previous',
+ 0x0010000070b: 'Mode Change',
+ 0x0010000070c: 'Next Candidate',
+ 0x0010000070d: 'Non Convert',
+ 0x0010000070e: 'Previous Candidate',
+ 0x0010000070f: 'Process',
+ 0x00100000710: 'Single Candidate',
+ 0x00100000711: 'Hangul Mode',
+ 0x00100000712: 'Hanja Mode',
+ 0x00100000713: 'Junja Mode',
+ 0x00100000714: 'Eisu',
+ 0x00100000715: 'Hankaku',
+ 0x00100000716: 'Hiragana',
+ 0x00100000717: 'Hiragana Katakana',
+ 0x00100000718: 'Kana Mode',
+ 0x00100000719: 'Kanji Mode',
+ 0x0010000071a: 'Katakana',
+ 0x0010000071b: 'Romaji',
+ 0x0010000071c: 'Zenkaku',
+ 0x0010000071d: 'Zenkaku Hankaku',
+ 0x00100000801: 'F1',
+ 0x00100000802: 'F2',
+ 0x00100000803: 'F3',
+ 0x00100000804: 'F4',
+ 0x00100000805: 'F5',
+ 0x00100000806: 'F6',
+ 0x00100000807: 'F7',
+ 0x00100000808: 'F8',
+ 0x00100000809: 'F9',
+ 0x0010000080a: 'F10',
+ 0x0010000080b: 'F11',
+ 0x0010000080c: 'F12',
+ 0x0010000080d: 'F13',
+ 0x0010000080e: 'F14',
+ 0x0010000080f: 'F15',
+ 0x00100000810: 'F16',
+ 0x00100000811: 'F17',
+ 0x00100000812: 'F18',
+ 0x00100000813: 'F19',
+ 0x00100000814: 'F20',
+ 0x00100000815: 'F21',
+ 0x00100000816: 'F22',
+ 0x00100000817: 'F23',
+ 0x00100000818: 'F24',
+ 0x00100000901: 'Soft 1',
+ 0x00100000902: 'Soft 2',
+ 0x00100000903: 'Soft 3',
+ 0x00100000904: 'Soft 4',
+ 0x00100000905: 'Soft 5',
+ 0x00100000906: 'Soft 6',
+ 0x00100000907: 'Soft 7',
+ 0x00100000908: 'Soft 8',
+ 0x00100000a01: 'Close',
+ 0x00100000a02: 'Mail Forward',
+ 0x00100000a03: 'Mail Reply',
+ 0x00100000a04: 'Mail Send',
+ 0x00100000a05: 'Media Play Pause',
+ 0x00100000a07: 'Media Stop',
+ 0x00100000a08: 'Media Track Next',
+ 0x00100000a09: 'Media Track Previous',
+ 0x00100000a0a: 'New',
+ 0x00100000a0b: 'Open',
+ 0x00100000a0c: 'Print',
+ 0x00100000a0d: 'Save',
+ 0x00100000a0e: 'Spell Check',
+ 0x00100000a0f: 'Audio Volume Down',
+ 0x00100000a10: 'Audio Volume Up',
+ 0x00100000a11: 'Audio Volume Mute',
+ 0x00100000b01: 'Launch Application 2',
+ 0x00100000b02: 'Launch Calendar',
+ 0x00100000b03: 'Launch Mail',
+ 0x00100000b04: 'Launch Media Player',
+ 0x00100000b05: 'Launch Music Player',
+ 0x00100000b06: 'Launch Application 1',
+ 0x00100000b07: 'Launch Screen Saver',
+ 0x00100000b08: 'Launch Spreadsheet',
+ 0x00100000b09: 'Launch Web Browser',
+ 0x00100000b0a: 'Launch Web Cam',
+ 0x00100000b0b: 'Launch Word Processor',
+ 0x00100000b0c: 'Launch Contacts',
+ 0x00100000b0d: 'Launch Phone',
+ 0x00100000b0e: 'Launch Assistant',
+ 0x00100000b0f: 'Launch Control Panel',
+ 0x00100000c01: 'Browser Back',
+ 0x00100000c02: 'Browser Favorites',
+ 0x00100000c03: 'Browser Forward',
+ 0x00100000c04: 'Browser Home',
+ 0x00100000c05: 'Browser Refresh',
+ 0x00100000c06: 'Browser Search',
+ 0x00100000c07: 'Browser Stop',
+ 0x00100000d01: 'Audio Balance Left',
+ 0x00100000d02: 'Audio Balance Right',
+ 0x00100000d03: 'Audio Bass Boost Down',
+ 0x00100000d04: 'Audio Bass Boost Up',
+ 0x00100000d05: 'Audio Fader Front',
+ 0x00100000d06: 'Audio Fader Rear',
+ 0x00100000d07: 'Audio Surround Mode Next',
+ 0x00100000d08: 'AVR Input',
+ 0x00100000d09: 'AVR Power',
+ 0x00100000d0a: 'Channel Down',
+ 0x00100000d0b: 'Channel Up',
+ 0x00100000d0c: 'Color F0 Red',
+ 0x00100000d0d: 'Color F1 Green',
+ 0x00100000d0e: 'Color F2 Yellow',
+ 0x00100000d0f: 'Color F3 Blue',
+ 0x00100000d10: 'Color F4 Grey',
+ 0x00100000d11: 'Color F5 Brown',
+ 0x00100000d12: 'Closed Caption Toggle',
+ 0x00100000d13: 'Dimmer',
+ 0x00100000d14: 'Display Swap',
+ 0x00100000d15: 'Exit',
+ 0x00100000d16: 'Favorite Clear 0',
+ 0x00100000d17: 'Favorite Clear 1',
+ 0x00100000d18: 'Favorite Clear 2',
+ 0x00100000d19: 'Favorite Clear 3',
+ 0x00100000d1a: 'Favorite Recall 0',
+ 0x00100000d1b: 'Favorite Recall 1',
+ 0x00100000d1c: 'Favorite Recall 2',
+ 0x00100000d1d: 'Favorite Recall 3',
+ 0x00100000d1e: 'Favorite Store 0',
+ 0x00100000d1f: 'Favorite Store 1',
+ 0x00100000d20: 'Favorite Store 2',
+ 0x00100000d21: 'Favorite Store 3',
+ 0x00100000d22: 'Guide',
+ 0x00100000d23: 'Guide Next Day',
+ 0x00100000d24: 'Guide Previous Day',
+ 0x00100000d25: 'Info',
+ 0x00100000d26: 'Instant Replay',
+ 0x00100000d27: 'Link',
+ 0x00100000d28: 'List Program',
+ 0x00100000d29: 'Live Content',
+ 0x00100000d2a: 'Lock',
+ 0x00100000d2b: 'Media Apps',
+ 0x00100000d2c: 'Media Fast Forward',
+ 0x00100000d2d: 'Media Last',
+ 0x00100000d2e: 'Media Pause',
+ 0x00100000d2f: 'Media Play',
+ 0x00100000d30: 'Media Record',
+ 0x00100000d31: 'Media Rewind',
+ 0x00100000d32: 'Media Skip',
+ 0x00100000d33: 'Next Favorite Channel',
+ 0x00100000d34: 'Next User Profile',
+ 0x00100000d35: 'On Demand',
+ 0x00100000d36: 'P In P Down',
+ 0x00100000d37: 'P In P Move',
+ 0x00100000d38: 'P In P Toggle',
+ 0x00100000d39: 'P In P Up',
+ 0x00100000d3a: 'Play Speed Down',
+ 0x00100000d3b: 'Play Speed Reset',
+ 0x00100000d3c: 'Play Speed Up',
+ 0x00100000d3d: 'Random Toggle',
+ 0x00100000d3e: 'Rc Low Battery',
+ 0x00100000d3f: 'Record Speed Next',
+ 0x00100000d40: 'Rf Bypass',
+ 0x00100000d41: 'Scan Channels Toggle',
+ 0x00100000d42: 'Screen Mode Next',
+ 0x00100000d43: 'Settings',
+ 0x00100000d44: 'Split Screen Toggle',
+ 0x00100000d45: 'STB Input',
+ 0x00100000d46: 'STB Power',
+ 0x00100000d47: 'Subtitle',
+ 0x00100000d48: 'Teletext',
+ 0x00100000d49: 'TV',
+ 0x00100000d4a: 'TV Input',
+ 0x00100000d4b: 'TV Power',
+ 0x00100000d4c: 'Video Mode Next',
+ 0x00100000d4d: 'Wink',
+ 0x00100000d4e: 'Zoom Toggle',
+ 0x00100000d4f: 'DVR',
+ 0x00100000d50: 'Media Audio Track',
+ 0x00100000d51: 'Media Skip Backward',
+ 0x00100000d52: 'Media Skip Forward',
+ 0x00100000d53: 'Media Step Backward',
+ 0x00100000d54: 'Media Step Forward',
+ 0x00100000d55: 'Media Top Menu',
+ 0x00100000d56: 'Navigate In',
+ 0x00100000d57: 'Navigate Next',
+ 0x00100000d58: 'Navigate Out',
+ 0x00100000d59: 'Navigate Previous',
+ 0x00100000d5a: 'Pairing',
+ 0x00100000d5b: 'Media Close',
+ 0x00100000e02: 'Audio Bass Boost Toggle',
+ 0x00100000e04: 'Audio Treble Down',
+ 0x00100000e05: 'Audio Treble Up',
+ 0x00100000e06: 'Microphone Toggle',
+ 0x00100000e07: 'Microphone Volume Down',
+ 0x00100000e08: 'Microphone Volume Up',
+ 0x00100000e09: 'Microphone Volume Mute',
+ 0x00100000f01: 'Speech Correction List',
+ 0x00100000f02: 'Speech Input Toggle',
+ 0x00100001001: 'App Switch',
+ 0x00100001002: 'Call',
+ 0x00100001003: 'Camera Focus',
+ 0x00100001004: 'End Call',
+ 0x00100001005: 'Go Back',
+ 0x00100001006: 'Go Home',
+ 0x00100001007: 'Headset Hook',
+ 0x00100001008: 'Last Number Redial',
+ 0x00100001009: 'Notification',
+ 0x0010000100a: 'Manner Mode',
+ 0x0010000100b: 'Voice Dial',
+ 0x00100001101: 'TV 3 D Mode',
+ 0x00100001102: 'TV Antenna Cable',
+ 0x00100001103: 'TV Audio Description',
+ 0x00100001104: 'TV Audio Description Mix Down',
+ 0x00100001105: 'TV Audio Description Mix Up',
+ 0x00100001106: 'TV Contents Menu',
+ 0x00100001107: 'TV Data Service',
+ 0x00100001108: 'TV Input Component 1',
+ 0x00100001109: 'TV Input Component 2',
+ 0x0010000110a: 'TV Input Composite 1',
+ 0x0010000110b: 'TV Input Composite 2',
+ 0x0010000110c: 'TV Input HDMI 1',
+ 0x0010000110d: 'TV Input HDMI 2',
+ 0x0010000110e: 'TV Input HDMI 3',
+ 0x0010000110f: 'TV Input HDMI 4',
+ 0x00100001110: 'TV Input VGA 1',
+ 0x00100001111: 'TV Media Context',
+ 0x00100001112: 'TV Network',
+ 0x00100001113: 'TV Number Entry',
+ 0x00100001114: 'TV Radio Service',
+ 0x00100001115: 'TV Satellite',
+ 0x00100001116: 'TV Satellite BS',
+ 0x00100001117: 'TV Satellite CS',
+ 0x00100001118: 'TV Satellite Toggle',
+ 0x00100001119: 'TV Terrestrial Analog',
+ 0x0010000111a: 'TV Terrestrial Digital',
+ 0x0010000111b: 'TV Timer',
+ 0x00100001201: 'Key 11',
+ 0x00100001202: 'Key 12',
+ 0x00200000000: 'Suspend',
+ 0x00200000001: 'Resume',
+ 0x00200000002: 'Sleep',
+ 0x00200000003: 'Abort',
+ 0x00200000010: 'Lang 1',
+ 0x00200000011: 'Lang 2',
+ 0x00200000012: 'Lang 3',
+ 0x00200000013: 'Lang 4',
+ 0x00200000014: 'Lang 5',
+ 0x00200000020: 'Intl Backslash',
+ 0x00200000021: 'Intl Ro',
+ 0x00200000022: 'Intl Yen',
+ 0x00200000100: 'Control Left',
+ 0x00200000101: 'Control Right',
+ 0x00200000102: 'Shift Left',
+ 0x00200000103: 'Shift Right',
+ 0x00200000104: 'Alt Left',
+ 0x00200000105: 'Alt Right',
+ 0x00200000106: 'Meta Left',
+ 0x00200000107: 'Meta Right',
+ 0x002000001f0: 'Control',
+ 0x002000001f2: 'Shift',
+ 0x002000001f4: 'Alt',
+ 0x002000001f6: 'Meta',
+ 0x0020000020d: 'Numpad Enter',
+ 0x00200000228: 'Numpad Paren Left',
+ 0x00200000229: 'Numpad Paren Right',
+ 0x0020000022a: 'Numpad Multiply',
+ 0x0020000022b: 'Numpad Add',
+ 0x0020000022c: 'Numpad Comma',
+ 0x0020000022d: 'Numpad Subtract',
+ 0x0020000022e: 'Numpad Decimal',
+ 0x0020000022f: 'Numpad Divide',
+ 0x00200000230: 'Numpad 0',
+ 0x00200000231: 'Numpad 1',
+ 0x00200000232: 'Numpad 2',
+ 0x00200000233: 'Numpad 3',
+ 0x00200000234: 'Numpad 4',
+ 0x00200000235: 'Numpad 5',
+ 0x00200000236: 'Numpad 6',
+ 0x00200000237: 'Numpad 7',
+ 0x00200000238: 'Numpad 8',
+ 0x00200000239: 'Numpad 9',
+ 0x0020000023d: 'Numpad Equal',
+ 0x00200000301: 'Game Button 1',
+ 0x00200000302: 'Game Button 2',
+ 0x00200000303: 'Game Button 3',
+ 0x00200000304: 'Game Button 4',
+ 0x00200000305: 'Game Button 5',
+ 0x00200000306: 'Game Button 6',
+ 0x00200000307: 'Game Button 7',
+ 0x00200000308: 'Game Button 8',
+ 0x00200000309: 'Game Button 9',
+ 0x0020000030a: 'Game Button 10',
+ 0x0020000030b: 'Game Button 11',
+ 0x0020000030c: 'Game Button 12',
+ 0x0020000030d: 'Game Button 13',
+ 0x0020000030e: 'Game Button 14',
+ 0x0020000030f: 'Game Button 15',
+ 0x00200000310: 'Game Button 16',
+ 0x00200000311: 'Game Button A',
+ 0x00200000312: 'Game Button B',
+ 0x00200000313: 'Game Button C',
+ 0x00200000314: 'Game Button Left 1',
+ 0x00200000315: 'Game Button Left 2',
+ 0x00200000316: 'Game Button Mode',
+ 0x00200000317: 'Game Button Right 1',
+ 0x00200000318: 'Game Button Right 2',
+ 0x00200000319: 'Game Button Select',
+ 0x0020000031a: 'Game Button Start',
+ 0x0020000031b: 'Game Button Thumb Left',
+ 0x0020000031c: 'Game Button Thumb Right',
+ 0x0020000031d: 'Game Button X',
+ 0x0020000031e: 'Game Button Y',
+ 0x0020000031f: 'Game Button Z',
+ };
}
/// A class with static values that describe the keys that are returned from
@@ -3652,11 +3678,6 @@ class PhysicalKeyboardKey extends KeyboardKey {
// Key constants for all keyboard keys in the USB HID specification at the
// time Flutter was built.
- /// Represents the location of the "None" key on a generalized keyboard.
- ///
- /// See the function [RawKeyEvent.physicalKey] for more information.
- static const PhysicalKeyboardKey none = PhysicalKeyboardKey(0x00000000);
-
/// Represents the location of the "Hyper" key on a generalized keyboard.
///
/// See the function [RawKeyEvent.physicalKey] for more information.
@@ -5118,7 +5139,6 @@ class PhysicalKeyboardKey extends KeyboardKey {
// A list of all the predefined constant PhysicalKeyboardKeys so that they
// can be searched.
static const Map _knownPhysicalKeys = {
- 0x00000000: none,
0x00000010: hyper,
0x00000011: superKey,
0x00000012: fn,
@@ -5392,7 +5412,6 @@ class PhysicalKeyboardKey extends KeyboardKey {
static const Map _debugNames = kReleaseMode ?
{} :
{
- 0x00000000: 'None',
0x00000010: 'Hyper',
0x00000011: 'Super Key',
0x00000012: 'Fn',
diff --git a/packages/flutter/lib/src/services/keyboard_maps.dart b/packages/flutter/lib/src/services/keyboard_maps.dart
index 713b120b1c..d8940f1bad 100644
--- a/packages/flutter/lib/src/services/keyboard_maps.dart
+++ b/packages/flutter/lib/src/services/keyboard_maps.dart
@@ -13,7 +13,6 @@ import 'keyboard_key.dart';
/// Maps Android-specific key codes to the matching [LogicalKeyboardKey].
const Map kAndroidToLogicalKey = {
- 0: LogicalKeyboardKey.none,
3: LogicalKeyboardKey.goHome,
4: LogicalKeyboardKey.goBack,
5: LogicalKeyboardKey.call,
@@ -28,6 +27,8 @@ const Map kAndroidToLogicalKey = kAndroidToLogicalKey = kAndroidToLogicalKey = kAndroidToPhysicalKey = {
- 464: PhysicalKeyboardKey.fn,
- 205: PhysicalKeyboardKey.suspend,
- 142: PhysicalKeyboardKey.sleep,
- 143: PhysicalKeyboardKey.wakeUp,
- 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,
- 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,
+ 1: PhysicalKeyboardKey.escape,
2: PhysicalKeyboardKey.digit1,
3: PhysicalKeyboardKey.digit2,
4: PhysicalKeyboardKey.digit3,
@@ -361,23 +288,52 @@ const Map kAndroidToPhysicalKey = kAndroidToPhysicalKey = kAndroidToPhysicalKey = kAndroidNumPadMap =
/// Maps Fuchsia-specific IDs to the matching [LogicalKeyboardKey].
const Map kFuchsiaToLogicalKey = {
- 0x00000000: LogicalKeyboardKey.none,
- 0x100000010: LogicalKeyboardKey.hyper,
- 0x100000011: LogicalKeyboardKey.superKey,
- 0x100000012: LogicalKeyboardKey.fn,
- 0x100000013: LogicalKeyboardKey.fnLock,
- 0x100000014: LogicalKeyboardKey.suspend,
- 0x100000015: LogicalKeyboardKey.resume,
- 0x100010082: LogicalKeyboardKey.sleep,
- 0x100010083: LogicalKeyboardKey.wakeUp,
- 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,
- 0x100070004: LogicalKeyboardKey.keyA,
- 0x100070005: LogicalKeyboardKey.keyB,
- 0x100070006: LogicalKeyboardKey.keyC,
- 0x100070007: LogicalKeyboardKey.keyD,
- 0x100070008: LogicalKeyboardKey.keyE,
- 0x100070009: LogicalKeyboardKey.keyF,
- 0x10007000a: LogicalKeyboardKey.keyG,
- 0x10007000b: LogicalKeyboardKey.keyH,
- 0x10007000c: LogicalKeyboardKey.keyI,
- 0x10007000d: LogicalKeyboardKey.keyJ,
- 0x10007000e: LogicalKeyboardKey.keyK,
- 0x10007000f: LogicalKeyboardKey.keyL,
- 0x100070010: LogicalKeyboardKey.keyM,
- 0x100070011: LogicalKeyboardKey.keyN,
- 0x100070012: LogicalKeyboardKey.keyO,
- 0x100070013: LogicalKeyboardKey.keyP,
- 0x100070014: LogicalKeyboardKey.keyQ,
- 0x100070015: LogicalKeyboardKey.keyR,
- 0x100070016: LogicalKeyboardKey.keyS,
- 0x100070017: LogicalKeyboardKey.keyT,
- 0x100070018: LogicalKeyboardKey.keyU,
- 0x100070019: LogicalKeyboardKey.keyV,
- 0x10007001a: LogicalKeyboardKey.keyW,
- 0x10007001b: LogicalKeyboardKey.keyX,
- 0x10007001c: LogicalKeyboardKey.keyY,
- 0x10007001d: LogicalKeyboardKey.keyZ,
- 0x10007001e: LogicalKeyboardKey.digit1,
- 0x10007001f: LogicalKeyboardKey.digit2,
- 0x100070020: LogicalKeyboardKey.digit3,
- 0x100070021: LogicalKeyboardKey.digit4,
- 0x100070022: LogicalKeyboardKey.digit5,
- 0x100070023: LogicalKeyboardKey.digit6,
- 0x100070024: LogicalKeyboardKey.digit7,
- 0x100070025: LogicalKeyboardKey.digit8,
- 0x100070026: LogicalKeyboardKey.digit9,
- 0x100070027: LogicalKeyboardKey.digit0,
- 0x100070028: LogicalKeyboardKey.enter,
- 0x100070029: LogicalKeyboardKey.escape,
- 0x10007002a: LogicalKeyboardKey.backspace,
- 0x10007002b: LogicalKeyboardKey.tab,
- 0x10007002c: LogicalKeyboardKey.space,
- 0x10007002d: LogicalKeyboardKey.minus,
- 0x10007002e: LogicalKeyboardKey.equal,
- 0x10007002f: LogicalKeyboardKey.bracketLeft,
- 0x100070030: LogicalKeyboardKey.bracketRight,
- 0x100070031: LogicalKeyboardKey.backslash,
- 0x100070033: LogicalKeyboardKey.semicolon,
- 0x100070034: LogicalKeyboardKey.quote,
- 0x100070035: LogicalKeyboardKey.backquote,
- 0x100070036: LogicalKeyboardKey.comma,
- 0x100070037: LogicalKeyboardKey.period,
- 0x100070038: 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,
- 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,
- 0x1000c0083: LogicalKeyboardKey.mediaLast,
- 0x1000c008c: LogicalKeyboardKey.launchPhone,
- 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,
- 0x1000c0184: LogicalKeyboardKey.launchWordProcessor,
- 0x1000c0186: LogicalKeyboardKey.launchSpreadsheet,
- 0x1000c018a: LogicalKeyboardKey.launchMail,
- 0x1000c018d: LogicalKeyboardKey.launchContacts,
- 0x1000c018e: LogicalKeyboardKey.launchCalendar,
- 0x1000c019c: LogicalKeyboardKey.logOff,
- 0x1000c019f: LogicalKeyboardKey.launchControlPanel,
- 0x1000c01ab: LogicalKeyboardKey.spellCheck,
- 0x1000c01b1: LogicalKeyboardKey.launchScreenSaver,
- 0x1000c01cb: LogicalKeyboardKey.launchAssistant,
- 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,
+ 0x1200000010: LogicalKeyboardKey.hyper,
+ 0x1200000011: LogicalKeyboardKey.superKey,
+ 0x1200000012: LogicalKeyboardKey.fn,
+ 0x1200000013: LogicalKeyboardKey.fnLock,
+ 0x1200000014: LogicalKeyboardKey.suspend,
+ 0x1200000015: LogicalKeyboardKey.resume,
+ 0x1200010082: LogicalKeyboardKey.sleep,
+ 0x1200010083: LogicalKeyboardKey.wakeUp,
+ 0x120005ff01: LogicalKeyboardKey.gameButton1,
+ 0x120005ff02: LogicalKeyboardKey.gameButton2,
+ 0x120005ff03: LogicalKeyboardKey.gameButton3,
+ 0x120005ff04: LogicalKeyboardKey.gameButton4,
+ 0x120005ff05: LogicalKeyboardKey.gameButton5,
+ 0x120005ff06: LogicalKeyboardKey.gameButton6,
+ 0x120005ff07: LogicalKeyboardKey.gameButton7,
+ 0x120005ff08: LogicalKeyboardKey.gameButton8,
+ 0x120005ff09: LogicalKeyboardKey.gameButton9,
+ 0x120005ff0a: LogicalKeyboardKey.gameButton10,
+ 0x120005ff0b: LogicalKeyboardKey.gameButton11,
+ 0x120005ff0c: LogicalKeyboardKey.gameButton12,
+ 0x120005ff0d: LogicalKeyboardKey.gameButton13,
+ 0x120005ff0e: LogicalKeyboardKey.gameButton14,
+ 0x120005ff0f: LogicalKeyboardKey.gameButton15,
+ 0x120005ff10: LogicalKeyboardKey.gameButton16,
+ 0x120005ff11: LogicalKeyboardKey.gameButtonA,
+ 0x120005ff12: LogicalKeyboardKey.gameButtonB,
+ 0x120005ff13: LogicalKeyboardKey.gameButtonC,
+ 0x120005ff14: LogicalKeyboardKey.gameButtonLeft1,
+ 0x120005ff15: LogicalKeyboardKey.gameButtonLeft2,
+ 0x120005ff16: LogicalKeyboardKey.gameButtonMode,
+ 0x120005ff17: LogicalKeyboardKey.gameButtonRight1,
+ 0x120005ff18: LogicalKeyboardKey.gameButtonRight2,
+ 0x120005ff19: LogicalKeyboardKey.gameButtonSelect,
+ 0x120005ff1a: LogicalKeyboardKey.gameButtonStart,
+ 0x120005ff1b: LogicalKeyboardKey.gameButtonThumbLeft,
+ 0x120005ff1c: LogicalKeyboardKey.gameButtonThumbRight,
+ 0x120005ff1d: LogicalKeyboardKey.gameButtonX,
+ 0x120005ff1e: LogicalKeyboardKey.gameButtonY,
+ 0x120005ff1f: LogicalKeyboardKey.gameButtonZ,
+ 0x1200070004: LogicalKeyboardKey.keyA,
+ 0x1200070005: LogicalKeyboardKey.keyB,
+ 0x1200070006: LogicalKeyboardKey.keyC,
+ 0x1200070007: LogicalKeyboardKey.keyD,
+ 0x1200070008: LogicalKeyboardKey.keyE,
+ 0x1200070009: LogicalKeyboardKey.keyF,
+ 0x120007000a: LogicalKeyboardKey.keyG,
+ 0x120007000b: LogicalKeyboardKey.keyH,
+ 0x120007000c: LogicalKeyboardKey.keyI,
+ 0x120007000d: LogicalKeyboardKey.keyJ,
+ 0x120007000e: LogicalKeyboardKey.keyK,
+ 0x120007000f: LogicalKeyboardKey.keyL,
+ 0x1200070010: LogicalKeyboardKey.keyM,
+ 0x1200070011: LogicalKeyboardKey.keyN,
+ 0x1200070012: LogicalKeyboardKey.keyO,
+ 0x1200070013: LogicalKeyboardKey.keyP,
+ 0x1200070014: LogicalKeyboardKey.keyQ,
+ 0x1200070015: LogicalKeyboardKey.keyR,
+ 0x1200070016: LogicalKeyboardKey.keyS,
+ 0x1200070017: LogicalKeyboardKey.keyT,
+ 0x1200070018: LogicalKeyboardKey.keyU,
+ 0x1200070019: LogicalKeyboardKey.keyV,
+ 0x120007001a: LogicalKeyboardKey.keyW,
+ 0x120007001b: LogicalKeyboardKey.keyX,
+ 0x120007001c: LogicalKeyboardKey.keyY,
+ 0x120007001d: LogicalKeyboardKey.keyZ,
+ 0x120007001e: LogicalKeyboardKey.digit1,
+ 0x120007001f: LogicalKeyboardKey.digit2,
+ 0x1200070020: LogicalKeyboardKey.digit3,
+ 0x1200070021: LogicalKeyboardKey.digit4,
+ 0x1200070022: LogicalKeyboardKey.digit5,
+ 0x1200070023: LogicalKeyboardKey.digit6,
+ 0x1200070024: LogicalKeyboardKey.digit7,
+ 0x1200070025: LogicalKeyboardKey.digit8,
+ 0x1200070026: LogicalKeyboardKey.digit9,
+ 0x1200070027: LogicalKeyboardKey.digit0,
+ 0x1200070028: LogicalKeyboardKey.enter,
+ 0x1200070029: LogicalKeyboardKey.escape,
+ 0x120007002a: LogicalKeyboardKey.backspace,
+ 0x120007002b: LogicalKeyboardKey.tab,
+ 0x120007002c: LogicalKeyboardKey.space,
+ 0x120007002d: LogicalKeyboardKey.minus,
+ 0x120007002e: LogicalKeyboardKey.equal,
+ 0x120007002f: LogicalKeyboardKey.bracketLeft,
+ 0x1200070030: LogicalKeyboardKey.bracketRight,
+ 0x1200070031: LogicalKeyboardKey.backslash,
+ 0x1200070033: LogicalKeyboardKey.semicolon,
+ 0x1200070034: LogicalKeyboardKey.quote,
+ 0x1200070035: LogicalKeyboardKey.backquote,
+ 0x1200070036: LogicalKeyboardKey.comma,
+ 0x1200070037: LogicalKeyboardKey.period,
+ 0x1200070038: LogicalKeyboardKey.slash,
+ 0x1200070039: LogicalKeyboardKey.capsLock,
+ 0x120007003a: LogicalKeyboardKey.f1,
+ 0x120007003b: LogicalKeyboardKey.f2,
+ 0x120007003c: LogicalKeyboardKey.f3,
+ 0x120007003d: LogicalKeyboardKey.f4,
+ 0x120007003e: LogicalKeyboardKey.f5,
+ 0x120007003f: LogicalKeyboardKey.f6,
+ 0x1200070040: LogicalKeyboardKey.f7,
+ 0x1200070041: LogicalKeyboardKey.f8,
+ 0x1200070042: LogicalKeyboardKey.f9,
+ 0x1200070043: LogicalKeyboardKey.f10,
+ 0x1200070044: LogicalKeyboardKey.f11,
+ 0x1200070045: LogicalKeyboardKey.f12,
+ 0x1200070046: LogicalKeyboardKey.printScreen,
+ 0x1200070047: LogicalKeyboardKey.scrollLock,
+ 0x1200070048: LogicalKeyboardKey.pause,
+ 0x1200070049: LogicalKeyboardKey.insert,
+ 0x120007004a: LogicalKeyboardKey.home,
+ 0x120007004b: LogicalKeyboardKey.pageUp,
+ 0x120007004c: LogicalKeyboardKey.delete,
+ 0x120007004d: LogicalKeyboardKey.end,
+ 0x120007004e: LogicalKeyboardKey.pageDown,
+ 0x120007004f: LogicalKeyboardKey.arrowRight,
+ 0x1200070050: LogicalKeyboardKey.arrowLeft,
+ 0x1200070051: LogicalKeyboardKey.arrowDown,
+ 0x1200070052: LogicalKeyboardKey.arrowUp,
+ 0x1200070053: LogicalKeyboardKey.numLock,
+ 0x1200070054: LogicalKeyboardKey.numpadDivide,
+ 0x1200070055: LogicalKeyboardKey.numpadMultiply,
+ 0x1200070056: LogicalKeyboardKey.numpadSubtract,
+ 0x1200070057: LogicalKeyboardKey.numpadAdd,
+ 0x1200070058: LogicalKeyboardKey.numpadEnter,
+ 0x1200070059: LogicalKeyboardKey.numpad1,
+ 0x120007005a: LogicalKeyboardKey.numpad2,
+ 0x120007005b: LogicalKeyboardKey.numpad3,
+ 0x120007005c: LogicalKeyboardKey.numpad4,
+ 0x120007005d: LogicalKeyboardKey.numpad5,
+ 0x120007005e: LogicalKeyboardKey.numpad6,
+ 0x120007005f: LogicalKeyboardKey.numpad7,
+ 0x1200070060: LogicalKeyboardKey.numpad8,
+ 0x1200070061: LogicalKeyboardKey.numpad9,
+ 0x1200070062: LogicalKeyboardKey.numpad0,
+ 0x1200070063: LogicalKeyboardKey.numpadDecimal,
+ 0x1200070064: LogicalKeyboardKey.intlBackslash,
+ 0x1200070065: LogicalKeyboardKey.contextMenu,
+ 0x1200070066: LogicalKeyboardKey.power,
+ 0x1200070067: LogicalKeyboardKey.numpadEqual,
+ 0x1200070068: LogicalKeyboardKey.f13,
+ 0x1200070069: LogicalKeyboardKey.f14,
+ 0x120007006a: LogicalKeyboardKey.f15,
+ 0x120007006b: LogicalKeyboardKey.f16,
+ 0x120007006c: LogicalKeyboardKey.f17,
+ 0x120007006d: LogicalKeyboardKey.f18,
+ 0x120007006e: LogicalKeyboardKey.f19,
+ 0x120007006f: LogicalKeyboardKey.f20,
+ 0x1200070070: LogicalKeyboardKey.f21,
+ 0x1200070071: LogicalKeyboardKey.f22,
+ 0x1200070072: LogicalKeyboardKey.f23,
+ 0x1200070073: LogicalKeyboardKey.f24,
+ 0x1200070074: LogicalKeyboardKey.open,
+ 0x1200070075: LogicalKeyboardKey.help,
+ 0x1200070077: LogicalKeyboardKey.select,
+ 0x1200070079: LogicalKeyboardKey.again,
+ 0x120007007a: LogicalKeyboardKey.undo,
+ 0x120007007b: LogicalKeyboardKey.cut,
+ 0x120007007c: LogicalKeyboardKey.copy,
+ 0x120007007d: LogicalKeyboardKey.paste,
+ 0x120007007e: LogicalKeyboardKey.find,
+ 0x120007007f: LogicalKeyboardKey.audioVolumeMute,
+ 0x1200070080: LogicalKeyboardKey.audioVolumeUp,
+ 0x1200070081: LogicalKeyboardKey.audioVolumeDown,
+ 0x1200070085: LogicalKeyboardKey.numpadComma,
+ 0x1200070087: LogicalKeyboardKey.intlRo,
+ 0x1200070088: LogicalKeyboardKey.kanaMode,
+ 0x1200070089: LogicalKeyboardKey.intlYen,
+ 0x120007008a: LogicalKeyboardKey.convert,
+ 0x120007008b: LogicalKeyboardKey.nonConvert,
+ 0x1200070090: LogicalKeyboardKey.lang1,
+ 0x1200070091: LogicalKeyboardKey.lang2,
+ 0x1200070092: LogicalKeyboardKey.lang3,
+ 0x1200070093: LogicalKeyboardKey.lang4,
+ 0x1200070094: LogicalKeyboardKey.lang5,
+ 0x120007009b: LogicalKeyboardKey.abort,
+ 0x12000700a3: LogicalKeyboardKey.props,
+ 0x12000700b6: LogicalKeyboardKey.numpadParenLeft,
+ 0x12000700b7: LogicalKeyboardKey.numpadParenRight,
+ 0x12000700e0: LogicalKeyboardKey.controlLeft,
+ 0x12000700e1: LogicalKeyboardKey.shiftLeft,
+ 0x12000700e2: LogicalKeyboardKey.altLeft,
+ 0x12000700e3: LogicalKeyboardKey.metaLeft,
+ 0x12000700e4: LogicalKeyboardKey.controlRight,
+ 0x12000700e5: LogicalKeyboardKey.shiftRight,
+ 0x12000700e6: LogicalKeyboardKey.altRight,
+ 0x12000700e7: LogicalKeyboardKey.metaRight,
+ 0x12000c0060: LogicalKeyboardKey.info,
+ 0x12000c0061: LogicalKeyboardKey.closedCaptionToggle,
+ 0x12000c006f: LogicalKeyboardKey.brightnessUp,
+ 0x12000c0070: LogicalKeyboardKey.brightnessDown,
+ 0x12000c0083: LogicalKeyboardKey.mediaLast,
+ 0x12000c008c: LogicalKeyboardKey.launchPhone,
+ 0x12000c0094: LogicalKeyboardKey.exit,
+ 0x12000c009c: LogicalKeyboardKey.channelUp,
+ 0x12000c009d: LogicalKeyboardKey.channelDown,
+ 0x12000c00b0: LogicalKeyboardKey.mediaPlay,
+ 0x12000c00b1: LogicalKeyboardKey.mediaPause,
+ 0x12000c00b2: LogicalKeyboardKey.mediaRecord,
+ 0x12000c00b3: LogicalKeyboardKey.mediaFastForward,
+ 0x12000c00b4: LogicalKeyboardKey.mediaRewind,
+ 0x12000c00b5: LogicalKeyboardKey.mediaTrackNext,
+ 0x12000c00b6: LogicalKeyboardKey.mediaTrackPrevious,
+ 0x12000c00b7: LogicalKeyboardKey.mediaStop,
+ 0x12000c00b8: LogicalKeyboardKey.eject,
+ 0x12000c00cd: LogicalKeyboardKey.mediaPlayPause,
+ 0x12000c00cf: LogicalKeyboardKey.speechInputToggle,
+ 0x12000c0184: LogicalKeyboardKey.launchWordProcessor,
+ 0x12000c0186: LogicalKeyboardKey.launchSpreadsheet,
+ 0x12000c018a: LogicalKeyboardKey.launchMail,
+ 0x12000c018d: LogicalKeyboardKey.launchContacts,
+ 0x12000c018e: LogicalKeyboardKey.launchCalendar,
+ 0x12000c019c: LogicalKeyboardKey.logOff,
+ 0x12000c019f: LogicalKeyboardKey.launchControlPanel,
+ 0x12000c01ab: LogicalKeyboardKey.spellCheck,
+ 0x12000c01b1: LogicalKeyboardKey.launchScreenSaver,
+ 0x12000c01cb: LogicalKeyboardKey.launchAssistant,
+ 0x12000c0201: LogicalKeyboardKey.newKey,
+ 0x12000c0203: LogicalKeyboardKey.close,
+ 0x12000c0207: LogicalKeyboardKey.save,
+ 0x12000c0208: LogicalKeyboardKey.print,
+ 0x12000c0221: LogicalKeyboardKey.browserSearch,
+ 0x12000c0223: LogicalKeyboardKey.browserHome,
+ 0x12000c0224: LogicalKeyboardKey.browserBack,
+ 0x12000c0225: LogicalKeyboardKey.browserForward,
+ 0x12000c0226: LogicalKeyboardKey.browserStop,
+ 0x12000c0227: LogicalKeyboardKey.browserRefresh,
+ 0x12000c022a: LogicalKeyboardKey.browserFavorites,
+ 0x12000c022d: LogicalKeyboardKey.zoomIn,
+ 0x12000c022e: LogicalKeyboardKey.zoomOut,
+ 0x12000c0232: LogicalKeyboardKey.zoomToggle,
+ 0x12000c0279: LogicalKeyboardKey.redo,
+ 0x12000c0289: LogicalKeyboardKey.mailReply,
+ 0x12000c028b: LogicalKeyboardKey.mailForward,
+ 0x12000c028c: LogicalKeyboardKey.mailSend,
};
/// Maps Fuchsia-specific USB HID Usage IDs to the matching
/// [PhysicalKeyboardKey].
const Map kFuchsiaToPhysicalKey = {
- 0x00000000: PhysicalKeyboardKey.none,
0x00000010: PhysicalKeyboardKey.hyper,
0x00000011: PhysicalKeyboardKey.superKey,
0x00000012: PhysicalKeyboardKey.fn,
@@ -1049,88 +1050,84 @@ const Map kFuchsiaToPhysicalKey = kMacOsToPhysicalKey = {
- 0x0000003f: PhysicalKeyboardKey.fn,
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,
+ 0x00000002: PhysicalKeyboardKey.keyD,
+ 0x00000003: PhysicalKeyboardKey.keyF,
+ 0x00000004: PhysicalKeyboardKey.keyH,
+ 0x00000005: PhysicalKeyboardKey.keyG,
0x00000006: PhysicalKeyboardKey.keyZ,
+ 0x00000007: PhysicalKeyboardKey.keyX,
+ 0x00000008: PhysicalKeyboardKey.keyC,
+ 0x00000009: PhysicalKeyboardKey.keyV,
+ 0x0000000a: PhysicalKeyboardKey.intlBackslash,
+ 0x0000000b: PhysicalKeyboardKey.keyB,
+ 0x0000000c: PhysicalKeyboardKey.keyQ,
+ 0x0000000d: PhysicalKeyboardKey.keyW,
+ 0x0000000e: PhysicalKeyboardKey.keyE,
+ 0x0000000f: PhysicalKeyboardKey.keyR,
+ 0x00000010: PhysicalKeyboardKey.keyY,
+ 0x00000011: PhysicalKeyboardKey.keyT,
0x00000012: PhysicalKeyboardKey.digit1,
0x00000013: PhysicalKeyboardKey.digit2,
0x00000014: PhysicalKeyboardKey.digit3,
0x00000015: PhysicalKeyboardKey.digit4,
- 0x00000017: PhysicalKeyboardKey.digit5,
0x00000016: PhysicalKeyboardKey.digit6,
- 0x0000001a: PhysicalKeyboardKey.digit7,
- 0x0000001c: PhysicalKeyboardKey.digit8,
+ 0x00000017: PhysicalKeyboardKey.digit5,
+ 0x00000018: PhysicalKeyboardKey.equal,
0x00000019: PhysicalKeyboardKey.digit9,
+ 0x0000001a: PhysicalKeyboardKey.digit7,
+ 0x0000001b: PhysicalKeyboardKey.minus,
+ 0x0000001c: PhysicalKeyboardKey.digit8,
0x0000001d: PhysicalKeyboardKey.digit0,
+ 0x0000001e: PhysicalKeyboardKey.bracketRight,
+ 0x0000001f: PhysicalKeyboardKey.keyO,
+ 0x00000020: PhysicalKeyboardKey.keyU,
+ 0x00000021: PhysicalKeyboardKey.bracketLeft,
+ 0x00000022: PhysicalKeyboardKey.keyI,
+ 0x00000023: PhysicalKeyboardKey.keyP,
0x00000024: PhysicalKeyboardKey.enter,
- 0x00000035: PhysicalKeyboardKey.escape,
- 0x00000033: PhysicalKeyboardKey.backspace,
+ 0x00000025: PhysicalKeyboardKey.keyL,
+ 0x00000026: PhysicalKeyboardKey.keyJ,
+ 0x00000027: PhysicalKeyboardKey.quote,
+ 0x00000028: PhysicalKeyboardKey.keyK,
+ 0x00000029: PhysicalKeyboardKey.semicolon,
+ 0x0000002a: PhysicalKeyboardKey.backslash,
+ 0x0000002b: PhysicalKeyboardKey.comma,
+ 0x0000002c: PhysicalKeyboardKey.slash,
+ 0x0000002d: PhysicalKeyboardKey.keyN,
+ 0x0000002e: PhysicalKeyboardKey.keyM,
+ 0x0000002f: PhysicalKeyboardKey.period,
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,
+ 0x00000033: PhysicalKeyboardKey.backspace,
+ 0x00000035: PhysicalKeyboardKey.escape,
+ 0x00000036: PhysicalKeyboardKey.metaRight,
+ 0x00000037: PhysicalKeyboardKey.metaLeft,
+ 0x00000038: PhysicalKeyboardKey.shiftLeft,
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,
+ 0x0000003a: PhysicalKeyboardKey.altLeft,
+ 0x0000003b: PhysicalKeyboardKey.controlLeft,
+ 0x0000003c: PhysicalKeyboardKey.shiftRight,
+ 0x0000003d: PhysicalKeyboardKey.altRight,
+ 0x0000003e: PhysicalKeyboardKey.controlRight,
+ 0x0000003f: PhysicalKeyboardKey.fn,
+ 0x00000040: PhysicalKeyboardKey.f17,
+ 0x00000041: PhysicalKeyboardKey.numpadDecimal,
0x00000043: PhysicalKeyboardKey.numpadMultiply,
- 0x0000004e: PhysicalKeyboardKey.numpadSubtract,
0x00000045: PhysicalKeyboardKey.numpadAdd,
+ 0x00000047: PhysicalKeyboardKey.numLock,
+ 0x00000048: PhysicalKeyboardKey.audioVolumeUp,
+ 0x00000049: PhysicalKeyboardKey.audioVolumeDown,
+ 0x0000004a: PhysicalKeyboardKey.audioVolumeMute,
+ 0x0000004b: PhysicalKeyboardKey.numpadDivide,
0x0000004c: PhysicalKeyboardKey.numpadEnter,
+ 0x0000004e: PhysicalKeyboardKey.numpadSubtract,
+ 0x0000004f: PhysicalKeyboardKey.f18,
+ 0x00000050: PhysicalKeyboardKey.f19,
+ 0x00000051: PhysicalKeyboardKey.numpadEqual,
+ 0x00000052: PhysicalKeyboardKey.numpad0,
0x00000053: PhysicalKeyboardKey.numpad1,
0x00000054: PhysicalKeyboardKey.numpad2,
0x00000055: PhysicalKeyboardKey.numpad3,
@@ -1138,47 +1135,54 @@ const Map kMacOsToPhysicalKey = kMacOsNumPadMap = {
- 0x0000004b: LogicalKeyboardKey.numpadDivide,
+ 0x00000041: LogicalKeyboardKey.numpadDecimal,
0x00000043: LogicalKeyboardKey.numpadMultiply,
- 0x0000004e: LogicalKeyboardKey.numpadSubtract,
0x00000045: LogicalKeyboardKey.numpadAdd,
+ 0x0000004b: LogicalKeyboardKey.numpadDivide,
+ 0x0000004e: LogicalKeyboardKey.numpadSubtract,
+ 0x00000051: LogicalKeyboardKey.numpadEqual,
+ 0x00000052: LogicalKeyboardKey.numpad0,
0x00000053: LogicalKeyboardKey.numpad1,
0x00000054: LogicalKeyboardKey.numpad2,
0x00000055: LogicalKeyboardKey.numpad3,
@@ -1188,35 +1192,32 @@ const Map kMacOsNumPadMap = {
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 kMacOsFunctionKeyMap = {
- 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,
+ 0x00000060: LogicalKeyboardKey.f5,
+ 0x00000061: LogicalKeyboardKey.f6,
+ 0x00000062: LogicalKeyboardKey.f7,
+ 0x00000063: LogicalKeyboardKey.f3,
+ 0x00000064: LogicalKeyboardKey.f8,
+ 0x00000065: LogicalKeyboardKey.f9,
+ 0x00000067: LogicalKeyboardKey.f11,
+ 0x00000069: LogicalKeyboardKey.f13,
+ 0x0000006a: LogicalKeyboardKey.f16,
+ 0x0000006b: LogicalKeyboardKey.f14,
+ 0x0000006d: LogicalKeyboardKey.f10,
+ 0x0000006f: LogicalKeyboardKey.f12,
+ 0x00000071: LogicalKeyboardKey.f15,
+ 0x00000076: LogicalKeyboardKey.f4,
+ 0x00000078: LogicalKeyboardKey.f2,
+ 0x0000007a: LogicalKeyboardKey.f1,
};
/// A map of macOS key codes presenting [LogicalKeyboardKey].
@@ -1573,6 +1574,24 @@ const Map kIosToLogicalKey = {
/// Maps GLFW-specific key codes to the matching [LogicalKeyboardKey].
const Map kGlfwToLogicalKey = {
+ 32: LogicalKeyboardKey.space,
+ 39: LogicalKeyboardKey.quote,
+ 44: LogicalKeyboardKey.comma,
+ 45: LogicalKeyboardKey.minus,
+ 46: LogicalKeyboardKey.period,
+ 47: LogicalKeyboardKey.slash,
+ 48: LogicalKeyboardKey.digit0,
+ 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,
+ 59: LogicalKeyboardKey.semicolon,
+ 61: LogicalKeyboardKey.equal,
65: LogicalKeyboardKey.keyA,
66: LogicalKeyboardKey.keyB,
67: LogicalKeyboardKey.keyC,
@@ -1599,33 +1618,28 @@ const Map kGlfwToLogicalKey =
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,
+ 93: LogicalKeyboardKey.bracketRight,
96: LogicalKeyboardKey.backquote,
- 44: LogicalKeyboardKey.comma,
- 46: LogicalKeyboardKey.period,
- 47: LogicalKeyboardKey.slash,
+ 256: LogicalKeyboardKey.escape,
+ 257: LogicalKeyboardKey.enter,
+ 258: LogicalKeyboardKey.tab,
+ 259: LogicalKeyboardKey.backspace,
+ 260: LogicalKeyboardKey.insert,
+ 261: LogicalKeyboardKey.delete,
+ 262: LogicalKeyboardKey.arrowRight,
+ 263: LogicalKeyboardKey.arrowLeft,
+ 264: LogicalKeyboardKey.arrowDown,
+ 265: LogicalKeyboardKey.arrowUp,
+ 266: LogicalKeyboardKey.pageUp,
+ 267: LogicalKeyboardKey.pageDown,
+ 268: LogicalKeyboardKey.home,
+ 269: LogicalKeyboardKey.end,
280: LogicalKeyboardKey.capsLock,
+ 282: LogicalKeyboardKey.numLock,
+ 283: LogicalKeyboardKey.printScreen,
+ 284: LogicalKeyboardKey.pause,
290: LogicalKeyboardKey.f1,
291: LogicalKeyboardKey.f2,
292: LogicalKeyboardKey.f3,
@@ -1638,36 +1652,6 @@ const Map kGlfwToLogicalKey =
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,
@@ -1679,23 +1663,7 @@ const Map kGlfwToLogicalKey =
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 kGlfwNumpadMap = {
- 331: LogicalKeyboardKey.numpadDivide,
- 332: LogicalKeyboardKey.numpadMultiply,
- 334: LogicalKeyboardKey.numpadAdd,
+ 320: LogicalKeyboardKey.numpad0,
321: LogicalKeyboardKey.numpad1,
322: LogicalKeyboardKey.numpad2,
323: LogicalKeyboardKey.numpad3,
@@ -1705,8 +1673,41 @@ const Map kGlfwNumpadMap = {
327: LogicalKeyboardKey.numpad7,
328: LogicalKeyboardKey.numpad8,
329: LogicalKeyboardKey.numpad9,
- 320: LogicalKeyboardKey.numpad0,
330: LogicalKeyboardKey.numpadDecimal,
+ 331: LogicalKeyboardKey.numpadDivide,
+ 332: LogicalKeyboardKey.numpadMultiply,
+ 334: LogicalKeyboardKey.numpadAdd,
+ 335: LogicalKeyboardKey.numpadEnter,
+ 336: LogicalKeyboardKey.numpadEqual,
+ 340: LogicalKeyboardKey.shiftLeft,
+ 341: LogicalKeyboardKey.controlLeft,
+ 342: LogicalKeyboardKey.altLeft,
+ 343: LogicalKeyboardKey.metaLeft,
+ 344: LogicalKeyboardKey.shiftRight,
+ 345: LogicalKeyboardKey.controlRight,
+ 346: LogicalKeyboardKey.altRight,
+ 347: LogicalKeyboardKey.metaRight,
+ 348: LogicalKeyboardKey.contextMenu,
+};
+
+/// 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 kGlfwNumpadMap = {
+ 320: LogicalKeyboardKey.numpad0,
+ 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,
+ 330: LogicalKeyboardKey.numpadDecimal,
+ 331: LogicalKeyboardKey.numpadDivide,
+ 332: LogicalKeyboardKey.numpadMultiply,
+ 334: LogicalKeyboardKey.numpadAdd,
336: LogicalKeyboardKey.numpadEqual,
};
@@ -1918,36 +1919,7 @@ const Map kGtkNumpadMap = {
/// Maps XKB specific key code values representing [PhysicalKeyboardKey].
const Map kLinuxToPhysicalKey = {
- 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,
+ 0x00000009: PhysicalKeyboardKey.escape,
0x0000000a: PhysicalKeyboardKey.digit1,
0x0000000b: PhysicalKeyboardKey.digit2,
0x0000000c: PhysicalKeyboardKey.digit3,
@@ -1958,22 +1930,52 @@ const Map kLinuxToPhysicalKey = kLinuxToPhysicalKey = kLinuxToPhysicalKey = kWebToLogicalKey = kWebToLogicalKey = kWebToLogicalKey = kWebToLogicalKey = kWebToLogicalKey = kWebToLogicalKey = kWebToPhysicalKey = {
- 'None': PhysicalKeyboardKey.none,
- 'Hyper': PhysicalKeyboardKey.hyper,
- 'Super': PhysicalKeyboardKey.superKey,
+ 'Abort': PhysicalKeyboardKey.abort,
+ 'Again': PhysicalKeyboardKey.again,
+ 'AltLeft': PhysicalKeyboardKey.altLeft,
+ 'AltRight': PhysicalKeyboardKey.altRight,
+ 'ArrowDown': PhysicalKeyboardKey.arrowDown,
+ 'ArrowLeft': PhysicalKeyboardKey.arrowLeft,
+ 'ArrowRight': PhysicalKeyboardKey.arrowRight,
+ 'ArrowUp': PhysicalKeyboardKey.arrowUp,
+ 'AudioVolumeDown': PhysicalKeyboardKey.audioVolumeDown,
+ 'AudioVolumeMute': PhysicalKeyboardKey.audioVolumeMute,
+ 'AudioVolumeUp': PhysicalKeyboardKey.audioVolumeUp,
+ 'Backquote': PhysicalKeyboardKey.backquote,
+ 'Backslash': PhysicalKeyboardKey.backslash,
+ 'Backspace': PhysicalKeyboardKey.backspace,
+ 'BassBoost': PhysicalKeyboardKey.bassBoost,
+ 'BracketLeft': PhysicalKeyboardKey.bracketLeft,
+ 'BracketRight': PhysicalKeyboardKey.bracketRight,
+ 'BrightnessAuto': PhysicalKeyboardKey.brightnessAuto,
+ 'BrightnessDown': PhysicalKeyboardKey.brightnessDown,
+ 'BrightnessMaximum': PhysicalKeyboardKey.brightnessMaximum,
+ 'BrightnessMinimum': PhysicalKeyboardKey.brightnessMinimum,
+ 'BrightnessToggle': PhysicalKeyboardKey.brightnessToggle,
+ 'BrightnessUp': PhysicalKeyboardKey.brightnessUp,
+ 'BrowserBack': PhysicalKeyboardKey.browserBack,
+ 'BrowserFavorites': PhysicalKeyboardKey.browserFavorites,
+ 'BrowserForward': PhysicalKeyboardKey.browserForward,
+ 'BrowserHome': PhysicalKeyboardKey.browserHome,
+ 'BrowserRefresh': PhysicalKeyboardKey.browserRefresh,
+ 'BrowserSearch': PhysicalKeyboardKey.browserSearch,
+ 'BrowserStop': PhysicalKeyboardKey.browserStop,
+ 'CapsLock': PhysicalKeyboardKey.capsLock,
+ 'ChannelDown': PhysicalKeyboardKey.channelDown,
+ 'ChannelUp': PhysicalKeyboardKey.channelUp,
+ 'Close': PhysicalKeyboardKey.close,
+ 'ClosedCaptionToggle': PhysicalKeyboardKey.closedCaptionToggle,
+ 'Comma': PhysicalKeyboardKey.comma,
+ 'ContextMenu': PhysicalKeyboardKey.contextMenu,
+ 'ControlLeft': PhysicalKeyboardKey.controlLeft,
+ 'ControlRight': PhysicalKeyboardKey.controlRight,
+ 'Convert': PhysicalKeyboardKey.convert,
+ 'Copy': PhysicalKeyboardKey.copy,
+ 'Cut': PhysicalKeyboardKey.cut,
+ 'Delete': PhysicalKeyboardKey.delete,
+ 'Digit0': PhysicalKeyboardKey.digit0,
+ '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,
+ 'DisplayToggleIntExt': PhysicalKeyboardKey.displayToggleIntExt,
+ 'Eject': PhysicalKeyboardKey.eject,
+ 'End': PhysicalKeyboardKey.end,
+ 'Enter': PhysicalKeyboardKey.enter,
+ 'Equal': PhysicalKeyboardKey.equal,
+ 'Escape': PhysicalKeyboardKey.escape,
+ 'Exit': PhysicalKeyboardKey.exit,
+ 'F1': PhysicalKeyboardKey.f1,
+ 'F10': PhysicalKeyboardKey.f10,
+ 'F11': PhysicalKeyboardKey.f11,
+ 'F12': PhysicalKeyboardKey.f12,
+ 'F13': PhysicalKeyboardKey.f13,
+ 'F14': PhysicalKeyboardKey.f14,
+ 'F15': PhysicalKeyboardKey.f15,
+ 'F16': PhysicalKeyboardKey.f16,
+ 'F17': PhysicalKeyboardKey.f17,
+ 'F18': PhysicalKeyboardKey.f18,
+ 'F19': PhysicalKeyboardKey.f19,
+ 'F2': PhysicalKeyboardKey.f2,
+ 'F20': PhysicalKeyboardKey.f20,
+ 'F21': PhysicalKeyboardKey.f21,
+ 'F22': PhysicalKeyboardKey.f22,
+ 'F23': PhysicalKeyboardKey.f23,
+ 'F24': PhysicalKeyboardKey.f24,
+ 'F3': PhysicalKeyboardKey.f3,
+ 'F4': PhysicalKeyboardKey.f4,
+ 'F5': PhysicalKeyboardKey.f5,
+ 'F6': PhysicalKeyboardKey.f6,
+ 'F7': PhysicalKeyboardKey.f7,
+ 'F8': PhysicalKeyboardKey.f8,
+ 'F9': PhysicalKeyboardKey.f9,
+ 'Find': PhysicalKeyboardKey.find,
'Fn': PhysicalKeyboardKey.fn,
'FnLock': PhysicalKeyboardKey.fnLock,
- 'Suspend': PhysicalKeyboardKey.suspend,
- 'Resume': PhysicalKeyboardKey.resume,
- 'Turbo': PhysicalKeyboardKey.turbo,
- 'PrivacyScreenToggle': PhysicalKeyboardKey.privacyScreenToggle,
- 'Sleep': PhysicalKeyboardKey.sleep,
- 'WakeUp': PhysicalKeyboardKey.wakeUp,
- 'DisplayToggleIntExt': PhysicalKeyboardKey.displayToggleIntExt,
'GameButton1': PhysicalKeyboardKey.gameButton1,
+ 'GameButton10': PhysicalKeyboardKey.gameButton10,
+ 'GameButton11': PhysicalKeyboardKey.gameButton11,
+ 'GameButton12': PhysicalKeyboardKey.gameButton12,
+ 'GameButton13': PhysicalKeyboardKey.gameButton13,
+ 'GameButton14': PhysicalKeyboardKey.gameButton14,
+ 'GameButton15': PhysicalKeyboardKey.gameButton15,
+ 'GameButton16': PhysicalKeyboardKey.gameButton16,
'GameButton2': PhysicalKeyboardKey.gameButton2,
'GameButton3': PhysicalKeyboardKey.gameButton3,
'GameButton4': PhysicalKeyboardKey.gameButton4,
@@ -2604,13 +2690,6 @@ const Map kWebToPhysicalKey = kWebToPhysicalKey = kWebToPhysicalKey = kWebToPhysicalKey = kWebNumPadMap = {
- 'NumpadParenLeft': LogicalKeyboardKey.numpadParenLeft,
- 'NumpadParenRight': LogicalKeyboardKey.numpadParenRight,
- 'NumpadMultiply': LogicalKeyboardKey.numpadMultiply,
- 'NumpadAdd': LogicalKeyboardKey.numpadAdd,
- 'NumpadComma': LogicalKeyboardKey.numpadComma,
- 'NumpadSubtract': LogicalKeyboardKey.numpadSubtract,
- 'NumpadDecimal': LogicalKeyboardKey.numpadDecimal,
- 'NumpadDivide': LogicalKeyboardKey.numpadDivide,
'Numpad0': LogicalKeyboardKey.numpad0,
'Numpad1': LogicalKeyboardKey.numpad1,
'Numpad2': LogicalKeyboardKey.numpad2,
@@ -2876,13 +2871,26 @@ const Map kWebNumPadMap = > kWebLocationMap = >{
+ '*': [LogicalKeyboardKey.asterisk, null, null, LogicalKeyboardKey.numpadMultiply],
+ '+': [LogicalKeyboardKey.add, null, null, LogicalKeyboardKey.numpadAdd],
+ '-': [LogicalKeyboardKey.minus, null, null, LogicalKeyboardKey.numpadSubtract],
+ '.': [LogicalKeyboardKey.period, null, null, LogicalKeyboardKey.numpadDecimal],
+ '/': [LogicalKeyboardKey.slash, null, null, LogicalKeyboardKey.numpadDivide],
'0': [LogicalKeyboardKey.digit0, null, null, LogicalKeyboardKey.numpad0],
'1': [LogicalKeyboardKey.digit1, null, null, LogicalKeyboardKey.numpad1],
'2': [LogicalKeyboardKey.digit2, null, null, LogicalKeyboardKey.numpad2],
@@ -2893,27 +2901,22 @@ const Map