Unverified Commit c6a24e3f authored by Tong Mu's avatar Tong Mu Committed by GitHub

[gen_keycodes] Move GLFW keys to logical_key_data (#87086)

parent b50991d6
...@@ -163,14 +163,10 @@ Future<void> main(List<String> rawArguments) async { ...@@ -163,14 +163,10 @@ Future<void> main(List<String> rawArguments) async {
final String supplementalHidCodes = readDataFile('supplemental_hid_codes.inc'); final String supplementalHidCodes = readDataFile('supplemental_hid_codes.inc');
final String androidScanCodes = await getAndroidScanCodes(); final String androidScanCodes = await getAndroidScanCodes();
final String androidToDomKey = readDataFile('android_key_name_to_name.json'); final String androidToDomKey = readDataFile('android_key_name_to_name.json');
final String glfwKeyCodes = await getGlfwKeyCodes();
final String glfwToDomKey = readDataFile('glfw_key_name_to_name.json');
physicalData = PhysicalKeyData( physicalData = PhysicalKeyData(
<String>[baseHidCodes, supplementalHidCodes].join('\n'), <String>[baseHidCodes, supplementalHidCodes].join('\n'),
androidScanCodes, androidScanCodes,
androidToDomKey, androidToDomKey,
glfwKeyCodes,
glfwToDomKey,
); );
// Logical // Logical
...@@ -183,6 +179,8 @@ Future<void> main(List<String> rawArguments) async { ...@@ -183,6 +179,8 @@ Future<void> main(List<String> rawArguments) async {
final String macosLogicalToPhysical = readDataFile('macos_logical_to_physical.json'); final String macosLogicalToPhysical = readDataFile('macos_logical_to_physical.json');
final String iosLogicalToPhysical = readDataFile('ios_logical_to_physical.json'); final String iosLogicalToPhysical = readDataFile('ios_logical_to_physical.json');
final String androidKeyCodes = await getAndroidKeyCodes(); final String androidKeyCodes = await getAndroidKeyCodes();
final String glfwKeyCodes = await getGlfwKeyCodes();
final String glfwToDomKey = readDataFile('glfw_key_name_to_name.json');
logicalData = LogicalKeyData( logicalData = LogicalKeyData(
<String>[webLogicalKeys, supplementalKeyData].join('\n'), <String>[webLogicalKeys, supplementalKeyData].join('\n'),
...@@ -194,6 +192,8 @@ Future<void> main(List<String> rawArguments) async { ...@@ -194,6 +192,8 @@ Future<void> main(List<String> rawArguments) async {
androidToDomKey, androidToDomKey,
macosLogicalToPhysical, macosLogicalToPhysical,
iosLogicalToPhysical, iosLogicalToPhysical,
glfwKeyCodes,
glfwToDomKey,
physicalData, physicalData,
); );
......
...@@ -15,6 +15,9 @@ ...@@ -15,6 +15,9 @@
], ],
"android": [ "android": [
"SPACE" "SPACE"
],
"glfw": [
"SPACE"
] ]
}, },
"values": { "values": {
...@@ -29,6 +32,9 @@ ...@@ -29,6 +32,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870124 77309870124
],
"glfw": [
32
] ]
} }
}, },
...@@ -55,6 +61,9 @@ ...@@ -55,6 +61,9 @@
], ],
"android": [ "android": [
"APOSTROPHE" "APOSTROPHE"
],
"glfw": [
"APOSTROPHE"
] ]
}, },
"values": { "values": {
...@@ -66,6 +75,9 @@ ...@@ -66,6 +75,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870132 77309870132
],
"glfw": [
39
] ]
} }
}, },
...@@ -196,6 +208,9 @@ ...@@ -196,6 +208,9 @@
], ],
"android": [ "android": [
"COMMA" "COMMA"
],
"glfw": [
"COMMA"
] ]
}, },
"values": { "values": {
...@@ -207,6 +222,9 @@ ...@@ -207,6 +222,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870134 77309870134
],
"glfw": [
44
] ]
} }
}, },
...@@ -223,6 +241,9 @@ ...@@ -223,6 +241,9 @@
], ],
"android": [ "android": [
"MINUS" "MINUS"
],
"glfw": [
"MINUS"
] ]
}, },
"values": { "values": {
...@@ -234,6 +255,9 @@ ...@@ -234,6 +255,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870125 77309870125
],
"glfw": [
45
] ]
} }
}, },
...@@ -253,6 +277,9 @@ ...@@ -253,6 +277,9 @@
], ],
"android": [ "android": [
"PERIOD" "PERIOD"
],
"glfw": [
"PERIOD"
] ]
}, },
"values": { "values": {
...@@ -267,6 +294,9 @@ ...@@ -267,6 +294,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870135 77309870135
],
"glfw": [
46
] ]
} }
}, },
...@@ -283,6 +313,9 @@ ...@@ -283,6 +313,9 @@
], ],
"android": [ "android": [
"SLASH" "SLASH"
],
"glfw": [
"SLASH"
] ]
}, },
"values": { "values": {
...@@ -294,6 +327,9 @@ ...@@ -294,6 +327,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870136 77309870136
],
"glfw": [
47
] ]
} }
}, },
...@@ -307,6 +343,9 @@ ...@@ -307,6 +343,9 @@
], ],
"android": [ "android": [
"0" "0"
],
"glfw": [
"0"
] ]
}, },
"values": { "values": {
...@@ -315,6 +354,9 @@ ...@@ -315,6 +354,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870119 77309870119
],
"glfw": [
48
] ]
} }
}, },
...@@ -328,6 +370,9 @@ ...@@ -328,6 +370,9 @@
], ],
"android": [ "android": [
"1" "1"
],
"glfw": [
"1"
] ]
}, },
"values": { "values": {
...@@ -336,6 +381,9 @@ ...@@ -336,6 +381,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870110 77309870110
],
"glfw": [
49
] ]
} }
}, },
...@@ -349,6 +397,9 @@ ...@@ -349,6 +397,9 @@
], ],
"android": [ "android": [
"2" "2"
],
"glfw": [
"2"
] ]
}, },
"values": { "values": {
...@@ -357,6 +408,9 @@ ...@@ -357,6 +408,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870111 77309870111
],
"glfw": [
50
] ]
} }
}, },
...@@ -370,6 +424,9 @@ ...@@ -370,6 +424,9 @@
], ],
"android": [ "android": [
"3" "3"
],
"glfw": [
"3"
] ]
}, },
"values": { "values": {
...@@ -378,6 +435,9 @@ ...@@ -378,6 +435,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870112 77309870112
],
"glfw": [
51
] ]
} }
}, },
...@@ -391,6 +451,9 @@ ...@@ -391,6 +451,9 @@
], ],
"android": [ "android": [
"4" "4"
],
"glfw": [
"4"
] ]
}, },
"values": { "values": {
...@@ -399,6 +462,9 @@ ...@@ -399,6 +462,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870113 77309870113
],
"glfw": [
52
] ]
} }
}, },
...@@ -412,6 +478,9 @@ ...@@ -412,6 +478,9 @@
], ],
"android": [ "android": [
"5" "5"
],
"glfw": [
"5"
] ]
}, },
"values": { "values": {
...@@ -420,6 +489,9 @@ ...@@ -420,6 +489,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870114 77309870114
],
"glfw": [
53
] ]
} }
}, },
...@@ -433,6 +505,9 @@ ...@@ -433,6 +505,9 @@
], ],
"android": [ "android": [
"6" "6"
],
"glfw": [
"6"
] ]
}, },
"values": { "values": {
...@@ -441,6 +516,9 @@ ...@@ -441,6 +516,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870115 77309870115
],
"glfw": [
54
] ]
} }
}, },
...@@ -454,6 +532,9 @@ ...@@ -454,6 +532,9 @@
], ],
"android": [ "android": [
"7" "7"
],
"glfw": [
"7"
] ]
}, },
"values": { "values": {
...@@ -462,6 +543,9 @@ ...@@ -462,6 +543,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870116 77309870116
],
"glfw": [
55
] ]
} }
}, },
...@@ -475,6 +559,9 @@ ...@@ -475,6 +559,9 @@
], ],
"android": [ "android": [
"8" "8"
],
"glfw": [
"8"
] ]
}, },
"values": { "values": {
...@@ -483,6 +570,9 @@ ...@@ -483,6 +570,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870117 77309870117
],
"glfw": [
56
] ]
} }
}, },
...@@ -496,6 +586,9 @@ ...@@ -496,6 +586,9 @@
], ],
"android": [ "android": [
"9" "9"
],
"glfw": [
"9"
] ]
}, },
"values": { "values": {
...@@ -504,6 +597,9 @@ ...@@ -504,6 +597,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870118 77309870118
],
"glfw": [
57
] ]
} }
}, },
...@@ -530,6 +626,9 @@ ...@@ -530,6 +626,9 @@
], ],
"android": [ "android": [
"SEMICOLON" "SEMICOLON"
],
"glfw": [
"SEMICOLON"
] ]
}, },
"values": { "values": {
...@@ -541,6 +640,9 @@ ...@@ -541,6 +640,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870131 77309870131
],
"glfw": [
59
] ]
} }
}, },
...@@ -567,6 +669,9 @@ ...@@ -567,6 +669,9 @@
], ],
"android": [ "android": [
"EQUALS" "EQUALS"
],
"glfw": [
"EQUAL"
] ]
}, },
"values": { "values": {
...@@ -578,6 +683,9 @@ ...@@ -578,6 +683,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870126 77309870126
],
"glfw": [
61
] ]
} }
}, },
...@@ -632,6 +740,9 @@ ...@@ -632,6 +740,9 @@
], ],
"android": [ "android": [
"LEFT_BRACKET" "LEFT_BRACKET"
],
"glfw": [
"LEFT_BRACKET"
] ]
}, },
"values": { "values": {
...@@ -643,6 +754,9 @@ ...@@ -643,6 +754,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870127 77309870127
],
"glfw": [
91
] ]
} }
}, },
...@@ -659,6 +773,9 @@ ...@@ -659,6 +773,9 @@
], ],
"android": [ "android": [
"BACKSLASH" "BACKSLASH"
],
"glfw": [
"BACKSLASH"
] ]
}, },
"values": { "values": {
...@@ -670,6 +787,9 @@ ...@@ -670,6 +787,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870129 77309870129
],
"glfw": [
92
] ]
} }
}, },
...@@ -686,6 +806,9 @@ ...@@ -686,6 +806,9 @@
], ],
"android": [ "android": [
"RIGHT_BRACKET" "RIGHT_BRACKET"
],
"glfw": [
"RIGHT_BRACKET"
] ]
}, },
"values": { "values": {
...@@ -697,6 +820,9 @@ ...@@ -697,6 +820,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870128 77309870128
],
"glfw": [
93
] ]
} }
}, },
...@@ -733,6 +859,9 @@ ...@@ -733,6 +859,9 @@
], ],
"android": [ "android": [
"GRAVE" "GRAVE"
],
"glfw": [
"GRAVE_ACCENT"
] ]
}, },
"values": { "values": {
...@@ -744,6 +873,9 @@ ...@@ -744,6 +873,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870133 77309870133
],
"glfw": [
96
] ]
} }
}, },
...@@ -757,6 +889,9 @@ ...@@ -757,6 +889,9 @@
], ],
"android": [ "android": [
"A" "A"
],
"glfw": [
"A"
] ]
}, },
"values": { "values": {
...@@ -765,6 +900,9 @@ ...@@ -765,6 +900,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870084 77309870084
],
"glfw": [
65
] ]
} }
}, },
...@@ -778,6 +916,9 @@ ...@@ -778,6 +916,9 @@
], ],
"android": [ "android": [
"B" "B"
],
"glfw": [
"B"
] ]
}, },
"values": { "values": {
...@@ -786,6 +927,9 @@ ...@@ -786,6 +927,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870085 77309870085
],
"glfw": [
66
] ]
} }
}, },
...@@ -799,6 +943,9 @@ ...@@ -799,6 +943,9 @@
], ],
"android": [ "android": [
"C" "C"
],
"glfw": [
"C"
] ]
}, },
"values": { "values": {
...@@ -807,6 +954,9 @@ ...@@ -807,6 +954,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870086 77309870086
],
"glfw": [
67
] ]
} }
}, },
...@@ -820,6 +970,9 @@ ...@@ -820,6 +970,9 @@
], ],
"android": [ "android": [
"D" "D"
],
"glfw": [
"D"
] ]
}, },
"values": { "values": {
...@@ -828,6 +981,9 @@ ...@@ -828,6 +981,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870087 77309870087
],
"glfw": [
68
] ]
} }
}, },
...@@ -841,6 +997,9 @@ ...@@ -841,6 +997,9 @@
], ],
"android": [ "android": [
"E" "E"
],
"glfw": [
"E"
] ]
}, },
"values": { "values": {
...@@ -849,6 +1008,9 @@ ...@@ -849,6 +1008,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870088 77309870088
],
"glfw": [
69
] ]
} }
}, },
...@@ -862,6 +1024,9 @@ ...@@ -862,6 +1024,9 @@
], ],
"android": [ "android": [
"F" "F"
],
"glfw": [
"F"
] ]
}, },
"values": { "values": {
...@@ -870,6 +1035,9 @@ ...@@ -870,6 +1035,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870089 77309870089
],
"glfw": [
70
] ]
} }
}, },
...@@ -883,6 +1051,9 @@ ...@@ -883,6 +1051,9 @@
], ],
"android": [ "android": [
"G" "G"
],
"glfw": [
"G"
] ]
}, },
"values": { "values": {
...@@ -891,6 +1062,9 @@ ...@@ -891,6 +1062,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870090 77309870090
],
"glfw": [
71
] ]
} }
}, },
...@@ -904,6 +1078,9 @@ ...@@ -904,6 +1078,9 @@
], ],
"android": [ "android": [
"H" "H"
],
"glfw": [
"H"
] ]
}, },
"values": { "values": {
...@@ -912,6 +1089,9 @@ ...@@ -912,6 +1089,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870091 77309870091
],
"glfw": [
72
] ]
} }
}, },
...@@ -925,6 +1105,9 @@ ...@@ -925,6 +1105,9 @@
], ],
"android": [ "android": [
"I" "I"
],
"glfw": [
"I"
] ]
}, },
"values": { "values": {
...@@ -933,6 +1116,9 @@ ...@@ -933,6 +1116,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870092 77309870092
],
"glfw": [
73
] ]
} }
}, },
...@@ -946,6 +1132,9 @@ ...@@ -946,6 +1132,9 @@
], ],
"android": [ "android": [
"J" "J"
],
"glfw": [
"J"
] ]
}, },
"values": { "values": {
...@@ -954,6 +1143,9 @@ ...@@ -954,6 +1143,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870093 77309870093
],
"glfw": [
74
] ]
} }
}, },
...@@ -967,6 +1159,9 @@ ...@@ -967,6 +1159,9 @@
], ],
"android": [ "android": [
"K" "K"
],
"glfw": [
"K"
] ]
}, },
"values": { "values": {
...@@ -975,6 +1170,9 @@ ...@@ -975,6 +1170,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870094 77309870094
],
"glfw": [
75
] ]
} }
}, },
...@@ -988,6 +1186,9 @@ ...@@ -988,6 +1186,9 @@
], ],
"android": [ "android": [
"L" "L"
],
"glfw": [
"L"
] ]
}, },
"values": { "values": {
...@@ -996,6 +1197,9 @@ ...@@ -996,6 +1197,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870095 77309870095
],
"glfw": [
76
] ]
} }
}, },
...@@ -1009,6 +1213,9 @@ ...@@ -1009,6 +1213,9 @@
], ],
"android": [ "android": [
"M" "M"
],
"glfw": [
"M"
] ]
}, },
"values": { "values": {
...@@ -1017,6 +1224,9 @@ ...@@ -1017,6 +1224,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870096 77309870096
],
"glfw": [
77
] ]
} }
}, },
...@@ -1030,6 +1240,9 @@ ...@@ -1030,6 +1240,9 @@
], ],
"android": [ "android": [
"N" "N"
],
"glfw": [
"N"
] ]
}, },
"values": { "values": {
...@@ -1038,6 +1251,9 @@ ...@@ -1038,6 +1251,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870097 77309870097
],
"glfw": [
78
] ]
} }
}, },
...@@ -1051,6 +1267,9 @@ ...@@ -1051,6 +1267,9 @@
], ],
"android": [ "android": [
"O" "O"
],
"glfw": [
"O"
] ]
}, },
"values": { "values": {
...@@ -1059,6 +1278,9 @@ ...@@ -1059,6 +1278,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870098 77309870098
],
"glfw": [
79
] ]
} }
}, },
...@@ -1072,6 +1294,9 @@ ...@@ -1072,6 +1294,9 @@
], ],
"android": [ "android": [
"P" "P"
],
"glfw": [
"P"
] ]
}, },
"values": { "values": {
...@@ -1080,6 +1305,9 @@ ...@@ -1080,6 +1305,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870099 77309870099
],
"glfw": [
80
] ]
} }
}, },
...@@ -1093,6 +1321,9 @@ ...@@ -1093,6 +1321,9 @@
], ],
"android": [ "android": [
"Q" "Q"
],
"glfw": [
"Q"
] ]
}, },
"values": { "values": {
...@@ -1101,6 +1332,9 @@ ...@@ -1101,6 +1332,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870100 77309870100
],
"glfw": [
81
] ]
} }
}, },
...@@ -1114,6 +1348,9 @@ ...@@ -1114,6 +1348,9 @@
], ],
"android": [ "android": [
"R" "R"
],
"glfw": [
"R"
] ]
}, },
"values": { "values": {
...@@ -1122,6 +1359,9 @@ ...@@ -1122,6 +1359,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870101 77309870101
],
"glfw": [
82
] ]
} }
}, },
...@@ -1135,6 +1375,9 @@ ...@@ -1135,6 +1375,9 @@
], ],
"android": [ "android": [
"S" "S"
],
"glfw": [
"S"
] ]
}, },
"values": { "values": {
...@@ -1143,6 +1386,9 @@ ...@@ -1143,6 +1386,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870102 77309870102
],
"glfw": [
83
] ]
} }
}, },
...@@ -1156,6 +1402,9 @@ ...@@ -1156,6 +1402,9 @@
], ],
"android": [ "android": [
"T" "T"
],
"glfw": [
"T"
] ]
}, },
"values": { "values": {
...@@ -1164,6 +1413,9 @@ ...@@ -1164,6 +1413,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870103 77309870103
],
"glfw": [
84
] ]
} }
}, },
...@@ -1177,6 +1429,9 @@ ...@@ -1177,6 +1429,9 @@
], ],
"android": [ "android": [
"U" "U"
],
"glfw": [
"U"
] ]
}, },
"values": { "values": {
...@@ -1185,6 +1440,9 @@ ...@@ -1185,6 +1440,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870104 77309870104
],
"glfw": [
85
] ]
} }
}, },
...@@ -1198,6 +1456,9 @@ ...@@ -1198,6 +1456,9 @@
], ],
"android": [ "android": [
"V" "V"
],
"glfw": [
"V"
] ]
}, },
"values": { "values": {
...@@ -1206,6 +1467,9 @@ ...@@ -1206,6 +1467,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870105 77309870105
],
"glfw": [
86
] ]
} }
}, },
...@@ -1219,6 +1483,9 @@ ...@@ -1219,6 +1483,9 @@
], ],
"android": [ "android": [
"W" "W"
],
"glfw": [
"W"
] ]
}, },
"values": { "values": {
...@@ -1227,6 +1494,9 @@ ...@@ -1227,6 +1494,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870106 77309870106
],
"glfw": [
87
] ]
} }
}, },
...@@ -1240,6 +1510,9 @@ ...@@ -1240,6 +1510,9 @@
], ],
"android": [ "android": [
"X" "X"
],
"glfw": [
"X"
] ]
}, },
"values": { "values": {
...@@ -1248,6 +1521,9 @@ ...@@ -1248,6 +1521,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870107 77309870107
],
"glfw": [
88
] ]
} }
}, },
...@@ -1261,6 +1537,9 @@ ...@@ -1261,6 +1537,9 @@
], ],
"android": [ "android": [
"Y" "Y"
],
"glfw": [
"Y"
] ]
}, },
"values": { "values": {
...@@ -1269,6 +1548,9 @@ ...@@ -1269,6 +1548,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870108 77309870108
],
"glfw": [
89
] ]
} }
}, },
...@@ -1282,6 +1564,9 @@ ...@@ -1282,6 +1564,9 @@
], ],
"android": [ "android": [
"Z" "Z"
],
"glfw": [
"Z"
] ]
}, },
"values": { "values": {
...@@ -1290,6 +1575,9 @@ ...@@ -1290,6 +1575,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870109 77309870109
],
"glfw": [
90
] ]
} }
}, },
...@@ -1364,6 +1652,9 @@ ...@@ -1364,6 +1652,9 @@
], ],
"android": [ "android": [
"DEL" "DEL"
],
"glfw": [
"BACKSPACE"
] ]
}, },
"values": { "values": {
...@@ -1384,6 +1675,9 @@ ...@@ -1384,6 +1675,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870122 77309870122
],
"glfw": [
259
] ]
} }
}, },
...@@ -1411,6 +1705,9 @@ ...@@ -1411,6 +1705,9 @@
], ],
"android": [ "android": [
"TAB" "TAB"
],
"glfw": [
"TAB"
] ]
}, },
"values": { "values": {
...@@ -1433,6 +1730,9 @@ ...@@ -1433,6 +1730,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870123 77309870123
],
"glfw": [
258
] ]
} }
}, },
...@@ -1460,6 +1760,9 @@ ...@@ -1460,6 +1760,9 @@
], ],
"android": [ "android": [
"ENTER" "ENTER"
],
"glfw": [
"ENTER"
] ]
}, },
"values": { "values": {
...@@ -1482,6 +1785,9 @@ ...@@ -1482,6 +1785,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870120 77309870120
],
"glfw": [
257
] ]
} }
}, },
...@@ -1507,6 +1813,9 @@ ...@@ -1507,6 +1813,9 @@
], ],
"android": [ "android": [
"ESCAPE" "ESCAPE"
],
"glfw": [
"ESCAPE"
] ]
}, },
"values": { "values": {
...@@ -1527,6 +1836,9 @@ ...@@ -1527,6 +1836,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870121 77309870121
],
"glfw": [
256
] ]
} }
}, },
...@@ -1552,6 +1864,9 @@ ...@@ -1552,6 +1864,9 @@
], ],
"android": [ "android": [
"FORWARD_DEL" "FORWARD_DEL"
],
"glfw": [
"DELETE"
] ]
}, },
"values": { "values": {
...@@ -1572,6 +1887,9 @@ ...@@ -1572,6 +1887,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870156 77309870156
],
"glfw": [
261
] ]
} }
}, },
...@@ -1614,6 +1932,9 @@ ...@@ -1614,6 +1932,9 @@
], ],
"android": [ "android": [
"CAPS_LOCK" "CAPS_LOCK"
],
"glfw": [
"CAPS_LOCK"
] ]
}, },
"values": { "values": {
...@@ -1634,6 +1955,9 @@ ...@@ -1634,6 +1955,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870137 77309870137
],
"glfw": [
280
] ]
} }
}, },
...@@ -1720,6 +2044,9 @@ ...@@ -1720,6 +2044,9 @@
], ],
"android": [ "android": [
"NUM_LOCK" "NUM_LOCK"
],
"glfw": [
"NUM_LOCK"
] ]
}, },
"values": { "values": {
...@@ -1740,6 +2067,9 @@ ...@@ -1740,6 +2067,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870163 77309870163
],
"glfw": [
282
] ]
} }
}, },
...@@ -1853,6 +2183,9 @@ ...@@ -1853,6 +2183,9 @@
], ],
"android": [ "android": [
"DPAD_DOWN" "DPAD_DOWN"
],
"glfw": [
"DOWN"
] ]
}, },
"values": { "values": {
...@@ -1873,6 +2206,9 @@ ...@@ -1873,6 +2206,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870161 77309870161
],
"glfw": [
264
] ]
} }
}, },
...@@ -1897,6 +2233,9 @@ ...@@ -1897,6 +2233,9 @@
], ],
"android": [ "android": [
"DPAD_LEFT" "DPAD_LEFT"
],
"glfw": [
"LEFT"
] ]
}, },
"values": { "values": {
...@@ -1917,6 +2256,9 @@ ...@@ -1917,6 +2256,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870160 77309870160
],
"glfw": [
263
] ]
} }
}, },
...@@ -1941,6 +2283,9 @@ ...@@ -1941,6 +2283,9 @@
], ],
"android": [ "android": [
"DPAD_RIGHT" "DPAD_RIGHT"
],
"glfw": [
"RIGHT"
] ]
}, },
"values": { "values": {
...@@ -1961,6 +2306,9 @@ ...@@ -1961,6 +2306,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870159 77309870159
],
"glfw": [
262
] ]
} }
}, },
...@@ -1985,6 +2333,9 @@ ...@@ -1985,6 +2333,9 @@
], ],
"android": [ "android": [
"DPAD_UP" "DPAD_UP"
],
"glfw": [
"UP"
] ]
}, },
"values": { "values": {
...@@ -2005,6 +2356,9 @@ ...@@ -2005,6 +2356,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870162 77309870162
],
"glfw": [
265
] ]
} }
}, },
...@@ -2029,6 +2383,9 @@ ...@@ -2029,6 +2383,9 @@
], ],
"android": [ "android": [
"MOVE_END" "MOVE_END"
],
"glfw": [
"END"
] ]
}, },
"values": { "values": {
...@@ -2049,6 +2406,9 @@ ...@@ -2049,6 +2406,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870157 77309870157
],
"glfw": [
269
] ]
} }
}, },
...@@ -2073,6 +2433,9 @@ ...@@ -2073,6 +2433,9 @@
], ],
"android": [ "android": [
"MOVE_HOME" "MOVE_HOME"
],
"glfw": [
"HOME"
] ]
}, },
"values": { "values": {
...@@ -2093,6 +2456,9 @@ ...@@ -2093,6 +2456,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870154 77309870154
],
"glfw": [
268
] ]
} }
}, },
...@@ -2117,6 +2483,9 @@ ...@@ -2117,6 +2483,9 @@
], ],
"android": [ "android": [
"PAGE_DOWN" "PAGE_DOWN"
],
"glfw": [
"PAGE_DOWN"
] ]
}, },
"values": { "values": {
...@@ -2137,6 +2506,9 @@ ...@@ -2137,6 +2506,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870158 77309870158
],
"glfw": [
267
] ]
} }
}, },
...@@ -2161,6 +2533,9 @@ ...@@ -2161,6 +2533,9 @@
], ],
"android": [ "android": [
"PAGE_UP" "PAGE_UP"
],
"glfw": [
"PAGE_UP"
] ]
}, },
"values": { "values": {
...@@ -2181,6 +2556,9 @@ ...@@ -2181,6 +2556,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870155 77309870155
],
"glfw": [
266
] ]
} }
}, },
...@@ -2331,6 +2709,9 @@ ...@@ -2331,6 +2709,9 @@
], ],
"android": [ "android": [
"INSERT" "INSERT"
],
"glfw": [
"INSERT"
] ]
}, },
"values": { "values": {
...@@ -2351,6 +2732,9 @@ ...@@ -2351,6 +2732,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870153 77309870153
],
"glfw": [
260
] ]
} }
}, },
...@@ -2518,6 +2902,9 @@ ...@@ -2518,6 +2902,9 @@
], ],
"android": [ "android": [
"MENU" "MENU"
],
"glfw": [
"MENU"
] ]
}, },
"values": { "values": {
...@@ -2538,6 +2925,9 @@ ...@@ -2538,6 +2925,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870181 77309870181
],
"glfw": [
348
] ]
} }
}, },
...@@ -2631,6 +3021,9 @@ ...@@ -2631,6 +3021,9 @@
], ],
"android": [ "android": [
"BREAK" "BREAK"
],
"glfw": [
"PAUSE"
] ]
}, },
"values": { "values": {
...@@ -2645,6 +3038,9 @@ ...@@ -2645,6 +3038,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870152 77309870152
],
"glfw": [
284
] ]
} }
}, },
...@@ -2927,6 +3323,9 @@ ...@@ -2927,6 +3323,9 @@
], ],
"android": [ "android": [
"SYSRQ" "SYSRQ"
],
"glfw": [
"PRINT_SCREEN"
] ]
}, },
"values": { "values": {
...@@ -2938,6 +3337,9 @@ ...@@ -2938,6 +3337,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870150 77309870150
],
"glfw": [
283
] ]
} }
}, },
...@@ -3525,6 +3927,9 @@ ...@@ -3525,6 +3927,9 @@
], ],
"android": [ "android": [
"F1" "F1"
],
"glfw": [
"F1"
] ]
}, },
"values": { "values": {
...@@ -3546,6 +3951,9 @@ ...@@ -3546,6 +3951,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870138 77309870138
],
"glfw": [
290
] ]
} }
}, },
...@@ -3571,6 +3979,9 @@ ...@@ -3571,6 +3979,9 @@
], ],
"android": [ "android": [
"F2" "F2"
],
"glfw": [
"F2"
] ]
}, },
"values": { "values": {
...@@ -3592,6 +4003,9 @@ ...@@ -3592,6 +4003,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870139 77309870139
],
"glfw": [
291
] ]
} }
}, },
...@@ -3617,6 +4031,9 @@ ...@@ -3617,6 +4031,9 @@
], ],
"android": [ "android": [
"F3" "F3"
],
"glfw": [
"F3"
] ]
}, },
"values": { "values": {
...@@ -3638,6 +4055,9 @@ ...@@ -3638,6 +4055,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870140 77309870140
],
"glfw": [
292
] ]
} }
}, },
...@@ -3663,6 +4083,9 @@ ...@@ -3663,6 +4083,9 @@
], ],
"android": [ "android": [
"F4" "F4"
],
"glfw": [
"F4"
] ]
}, },
"values": { "values": {
...@@ -3684,6 +4107,9 @@ ...@@ -3684,6 +4107,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870141 77309870141
],
"glfw": [
293
] ]
} }
}, },
...@@ -3708,6 +4134,9 @@ ...@@ -3708,6 +4134,9 @@
], ],
"android": [ "android": [
"F5" "F5"
],
"glfw": [
"F5"
] ]
}, },
"values": { "values": {
...@@ -3728,6 +4157,9 @@ ...@@ -3728,6 +4157,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870142 77309870142
],
"glfw": [
294
] ]
} }
}, },
...@@ -3752,6 +4184,9 @@ ...@@ -3752,6 +4184,9 @@
], ],
"android": [ "android": [
"F6" "F6"
],
"glfw": [
"F6"
] ]
}, },
"values": { "values": {
...@@ -3772,6 +4207,9 @@ ...@@ -3772,6 +4207,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870143 77309870143
],
"glfw": [
295
] ]
} }
}, },
...@@ -3796,6 +4234,9 @@ ...@@ -3796,6 +4234,9 @@
], ],
"android": [ "android": [
"F7" "F7"
],
"glfw": [
"F7"
] ]
}, },
"values": { "values": {
...@@ -3816,6 +4257,9 @@ ...@@ -3816,6 +4257,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870144 77309870144
],
"glfw": [
296
] ]
} }
}, },
...@@ -3840,6 +4284,9 @@ ...@@ -3840,6 +4284,9 @@
], ],
"android": [ "android": [
"F8" "F8"
],
"glfw": [
"F8"
] ]
}, },
"values": { "values": {
...@@ -3860,6 +4307,9 @@ ...@@ -3860,6 +4307,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870145 77309870145
],
"glfw": [
297
] ]
} }
}, },
...@@ -3884,6 +4334,9 @@ ...@@ -3884,6 +4334,9 @@
], ],
"android": [ "android": [
"F9" "F9"
],
"glfw": [
"F9"
] ]
}, },
"values": { "values": {
...@@ -3904,6 +4357,9 @@ ...@@ -3904,6 +4357,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870146 77309870146
],
"glfw": [
298
] ]
} }
}, },
...@@ -3928,6 +4384,9 @@ ...@@ -3928,6 +4384,9 @@
], ],
"android": [ "android": [
"F10" "F10"
],
"glfw": [
"F10"
] ]
}, },
"values": { "values": {
...@@ -3948,6 +4407,9 @@ ...@@ -3948,6 +4407,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870147 77309870147
],
"glfw": [
299
] ]
} }
}, },
...@@ -3972,6 +4434,9 @@ ...@@ -3972,6 +4434,9 @@
], ],
"android": [ "android": [
"F11" "F11"
],
"glfw": [
"F11"
] ]
}, },
"values": { "values": {
...@@ -3992,6 +4457,9 @@ ...@@ -3992,6 +4457,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870148 77309870148
],
"glfw": [
300
] ]
} }
}, },
...@@ -4016,6 +4484,9 @@ ...@@ -4016,6 +4484,9 @@
], ],
"android": [ "android": [
"F12" "F12"
],
"glfw": [
"F12"
] ]
}, },
"values": { "values": {
...@@ -4036,6 +4507,9 @@ ...@@ -4036,6 +4507,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870149 77309870149
],
"glfw": [
301
] ]
} }
}, },
...@@ -4057,6 +4531,9 @@ ...@@ -4057,6 +4531,9 @@
], ],
"windows": [ "windows": [
"F13" "F13"
],
"glfw": [
"F13"
] ]
}, },
"values": { "values": {
...@@ -4074,6 +4551,9 @@ ...@@ -4074,6 +4551,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870184 77309870184
],
"glfw": [
302
] ]
} }
}, },
...@@ -4095,6 +4575,9 @@ ...@@ -4095,6 +4575,9 @@
], ],
"windows": [ "windows": [
"F14" "F14"
],
"glfw": [
"F14"
] ]
}, },
"values": { "values": {
...@@ -4112,6 +4595,9 @@ ...@@ -4112,6 +4595,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870185 77309870185
],
"glfw": [
303
] ]
} }
}, },
...@@ -4133,6 +4619,9 @@ ...@@ -4133,6 +4619,9 @@
], ],
"windows": [ "windows": [
"F15" "F15"
],
"glfw": [
"F15"
] ]
}, },
"values": { "values": {
...@@ -4150,6 +4639,9 @@ ...@@ -4150,6 +4639,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870186 77309870186
],
"glfw": [
304
] ]
} }
}, },
...@@ -4171,6 +4663,9 @@ ...@@ -4171,6 +4663,9 @@
], ],
"windows": [ "windows": [
"F16" "F16"
],
"glfw": [
"F16"
] ]
}, },
"values": { "values": {
...@@ -4188,6 +4683,9 @@ ...@@ -4188,6 +4683,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870187 77309870187
],
"glfw": [
305
] ]
} }
}, },
...@@ -4209,6 +4707,9 @@ ...@@ -4209,6 +4707,9 @@
], ],
"windows": [ "windows": [
"F17" "F17"
],
"glfw": [
"F17"
] ]
}, },
"values": { "values": {
...@@ -4226,6 +4727,9 @@ ...@@ -4226,6 +4727,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870188 77309870188
],
"glfw": [
306
] ]
} }
}, },
...@@ -4247,6 +4751,9 @@ ...@@ -4247,6 +4751,9 @@
], ],
"windows": [ "windows": [
"F18" "F18"
],
"glfw": [
"F18"
] ]
}, },
"values": { "values": {
...@@ -4264,6 +4771,9 @@ ...@@ -4264,6 +4771,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870189 77309870189
],
"glfw": [
307
] ]
} }
}, },
...@@ -4285,6 +4795,9 @@ ...@@ -4285,6 +4795,9 @@
], ],
"windows": [ "windows": [
"F19" "F19"
],
"glfw": [
"F19"
] ]
}, },
"values": { "values": {
...@@ -4302,6 +4815,9 @@ ...@@ -4302,6 +4815,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870190 77309870190
],
"glfw": [
308
] ]
} }
}, },
...@@ -4323,6 +4839,9 @@ ...@@ -4323,6 +4839,9 @@
], ],
"windows": [ "windows": [
"F20" "F20"
],
"glfw": [
"F20"
] ]
}, },
"values": { "values": {
...@@ -4340,6 +4859,9 @@ ...@@ -4340,6 +4859,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870191 77309870191
],
"glfw": [
309
] ]
} }
}, },
...@@ -4355,6 +4877,9 @@ ...@@ -4355,6 +4877,9 @@
], ],
"windows": [ "windows": [
"F21" "F21"
],
"glfw": [
"F21"
] ]
}, },
"values": { "values": {
...@@ -4366,6 +4891,9 @@ ...@@ -4366,6 +4891,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870192 77309870192
],
"glfw": [
310
] ]
} }
}, },
...@@ -4381,6 +4909,9 @@ ...@@ -4381,6 +4909,9 @@
], ],
"windows": [ "windows": [
"F22" "F22"
],
"glfw": [
"F22"
] ]
}, },
"values": { "values": {
...@@ -4392,6 +4923,9 @@ ...@@ -4392,6 +4923,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870193 77309870193
],
"glfw": [
311
] ]
} }
}, },
...@@ -4407,6 +4941,9 @@ ...@@ -4407,6 +4941,9 @@
], ],
"windows": [ "windows": [
"F23" "F23"
],
"glfw": [
"F23"
] ]
}, },
"values": { "values": {
...@@ -4418,6 +4955,9 @@ ...@@ -4418,6 +4955,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870194 77309870194
],
"glfw": [
312
] ]
} }
}, },
...@@ -7626,6 +8166,9 @@ ...@@ -7626,6 +8166,9 @@
], ],
"android": [ "android": [
"CTRL_LEFT" "CTRL_LEFT"
],
"glfw": [
"LEFT_CONTROL"
] ]
}, },
"values": { "values": {
...@@ -7647,6 +8190,9 @@ ...@@ -7647,6 +8190,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870304 77309870304
],
"glfw": [
341
] ]
} }
}, },
...@@ -7671,6 +8217,9 @@ ...@@ -7671,6 +8217,9 @@
], ],
"android": [ "android": [
"CTRL_RIGHT" "CTRL_RIGHT"
],
"glfw": [
"RIGHT_CONTROL"
] ]
}, },
"values": { "values": {
...@@ -7691,6 +8240,9 @@ ...@@ -7691,6 +8240,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870308 77309870308
],
"glfw": [
345
] ]
} }
}, },
...@@ -7716,6 +8268,9 @@ ...@@ -7716,6 +8268,9 @@
], ],
"android": [ "android": [
"SHIFT_LEFT" "SHIFT_LEFT"
],
"glfw": [
"LEFT_SHIFT"
] ]
}, },
"values": { "values": {
...@@ -7737,6 +8292,9 @@ ...@@ -7737,6 +8292,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870305 77309870305
],
"glfw": [
340
] ]
} }
}, },
...@@ -7761,6 +8319,9 @@ ...@@ -7761,6 +8319,9 @@
], ],
"android": [ "android": [
"SHIFT_RIGHT" "SHIFT_RIGHT"
],
"glfw": [
"RIGHT_SHIFT"
] ]
}, },
"values": { "values": {
...@@ -7781,6 +8342,9 @@ ...@@ -7781,6 +8342,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870309 77309870309
],
"glfw": [
344
] ]
} }
}, },
...@@ -7805,6 +8369,9 @@ ...@@ -7805,6 +8369,9 @@
], ],
"android": [ "android": [
"ALT_LEFT" "ALT_LEFT"
],
"glfw": [
"LEFT_ALT"
] ]
}, },
"values": { "values": {
...@@ -7825,6 +8392,9 @@ ...@@ -7825,6 +8392,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870306 77309870306
],
"glfw": [
342
] ]
} }
}, },
...@@ -7850,6 +8420,9 @@ ...@@ -7850,6 +8420,9 @@
], ],
"android": [ "android": [
"ALT_RIGHT" "ALT_RIGHT"
],
"glfw": [
"RIGHT_ALT"
] ]
}, },
"values": { "values": {
...@@ -7871,6 +8444,9 @@ ...@@ -7871,6 +8444,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870310 77309870310
],
"glfw": [
346
] ]
} }
}, },
...@@ -7895,6 +8471,9 @@ ...@@ -7895,6 +8471,9 @@
], ],
"android": [ "android": [
"META_LEFT" "META_LEFT"
],
"glfw": [
"LEFT_SUPER"
] ]
}, },
"values": { "values": {
...@@ -7915,6 +8494,9 @@ ...@@ -7915,6 +8494,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870307 77309870307
],
"glfw": [
343
] ]
} }
}, },
...@@ -7939,6 +8521,9 @@ ...@@ -7939,6 +8521,9 @@
], ],
"android": [ "android": [
"META_RIGHT" "META_RIGHT"
],
"glfw": [
"RIGHT_SUPER"
] ]
}, },
"values": { "values": {
...@@ -7959,6 +8544,9 @@ ...@@ -7959,6 +8544,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870311 77309870311
],
"glfw": [
347
] ]
} }
}, },
...@@ -8016,6 +8604,9 @@ ...@@ -8016,6 +8604,9 @@
], ],
"android": [ "android": [
"NUMPAD_ENTER" "NUMPAD_ENTER"
],
"glfw": [
"KP_ENTER"
] ]
}, },
"values": { "values": {
...@@ -8033,6 +8624,9 @@ ...@@ -8033,6 +8624,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870168 77309870168
],
"glfw": [
335
] ]
} }
}, },
...@@ -8097,6 +8691,9 @@ ...@@ -8097,6 +8691,9 @@
], ],
"android": [ "android": [
"NUMPAD_MULTIPLY" "NUMPAD_MULTIPLY"
],
"glfw": [
"KP_MULTIPLY"
] ]
}, },
"values": { "values": {
...@@ -8117,6 +8714,9 @@ ...@@ -8117,6 +8714,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870165 77309870165
],
"glfw": [
332
] ]
} }
}, },
...@@ -8141,6 +8741,9 @@ ...@@ -8141,6 +8741,9 @@
], ],
"android": [ "android": [
"NUMPAD_ADD" "NUMPAD_ADD"
],
"glfw": [
"KP_ADD"
] ]
}, },
"values": { "values": {
...@@ -8161,6 +8764,9 @@ ...@@ -8161,6 +8764,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870167 77309870167
],
"glfw": [
334
] ]
} }
}, },
...@@ -8267,6 +8873,9 @@ ...@@ -8267,6 +8873,9 @@
], ],
"android": [ "android": [
"NUMPAD_DOT" "NUMPAD_DOT"
],
"glfw": [
"KP_DECIMAL"
] ]
}, },
"values": { "values": {
...@@ -8287,6 +8896,9 @@ ...@@ -8287,6 +8896,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870179 77309870179
],
"glfw": [
330
] ]
} }
}, },
...@@ -8311,6 +8923,9 @@ ...@@ -8311,6 +8923,9 @@
], ],
"android": [ "android": [
"NUMPAD_DIVIDE" "NUMPAD_DIVIDE"
],
"glfw": [
"KP_DIVIDE"
] ]
}, },
"values": { "values": {
...@@ -8331,6 +8946,9 @@ ...@@ -8331,6 +8946,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870164 77309870164
],
"glfw": [
331
] ]
} }
}, },
...@@ -8356,6 +8974,9 @@ ...@@ -8356,6 +8974,9 @@
], ],
"android": [ "android": [
"NUMPAD_0" "NUMPAD_0"
],
"glfw": [
"KP_0"
] ]
}, },
"values": { "values": {
...@@ -8377,6 +8998,9 @@ ...@@ -8377,6 +8998,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870178 77309870178
],
"glfw": [
320
] ]
} }
}, },
...@@ -8402,6 +9026,9 @@ ...@@ -8402,6 +9026,9 @@
], ],
"android": [ "android": [
"NUMPAD_1" "NUMPAD_1"
],
"glfw": [
"KP_1"
] ]
}, },
"values": { "values": {
...@@ -8423,6 +9050,9 @@ ...@@ -8423,6 +9050,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870169 77309870169
],
"glfw": [
321
] ]
} }
}, },
...@@ -8448,6 +9078,9 @@ ...@@ -8448,6 +9078,9 @@
], ],
"android": [ "android": [
"NUMPAD_2" "NUMPAD_2"
],
"glfw": [
"KP_2"
] ]
}, },
"values": { "values": {
...@@ -8469,6 +9102,9 @@ ...@@ -8469,6 +9102,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870170 77309870170
],
"glfw": [
322
] ]
} }
}, },
...@@ -8494,6 +9130,9 @@ ...@@ -8494,6 +9130,9 @@
], ],
"android": [ "android": [
"NUMPAD_3" "NUMPAD_3"
],
"glfw": [
"KP_3"
] ]
}, },
"values": { "values": {
...@@ -8515,6 +9154,9 @@ ...@@ -8515,6 +9154,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870171 77309870171
],
"glfw": [
323
] ]
} }
}, },
...@@ -8540,6 +9182,9 @@ ...@@ -8540,6 +9182,9 @@
], ],
"android": [ "android": [
"NUMPAD_4" "NUMPAD_4"
],
"glfw": [
"KP_4"
] ]
}, },
"values": { "values": {
...@@ -8561,6 +9206,9 @@ ...@@ -8561,6 +9206,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870172 77309870172
],
"glfw": [
324
] ]
} }
}, },
...@@ -8585,6 +9233,9 @@ ...@@ -8585,6 +9233,9 @@
], ],
"android": [ "android": [
"NUMPAD_5" "NUMPAD_5"
],
"glfw": [
"KP_5"
] ]
}, },
"values": { "values": {
...@@ -8605,6 +9256,9 @@ ...@@ -8605,6 +9256,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870173 77309870173
],
"glfw": [
325
] ]
} }
}, },
...@@ -8630,6 +9284,9 @@ ...@@ -8630,6 +9284,9 @@
], ],
"android": [ "android": [
"NUMPAD_6" "NUMPAD_6"
],
"glfw": [
"KP_6"
] ]
}, },
"values": { "values": {
...@@ -8651,6 +9308,9 @@ ...@@ -8651,6 +9308,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870174 77309870174
],
"glfw": [
326
] ]
} }
}, },
...@@ -8676,6 +9336,9 @@ ...@@ -8676,6 +9336,9 @@
], ],
"android": [ "android": [
"NUMPAD_7" "NUMPAD_7"
],
"glfw": [
"KP_7"
] ]
}, },
"values": { "values": {
...@@ -8697,6 +9360,9 @@ ...@@ -8697,6 +9360,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870175 77309870175
],
"glfw": [
327
] ]
} }
}, },
...@@ -8722,6 +9388,9 @@ ...@@ -8722,6 +9388,9 @@
], ],
"android": [ "android": [
"NUMPAD_8" "NUMPAD_8"
],
"glfw": [
"KP_8"
] ]
}, },
"values": { "values": {
...@@ -8743,6 +9412,9 @@ ...@@ -8743,6 +9412,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870176 77309870176
],
"glfw": [
328
] ]
} }
}, },
...@@ -8768,6 +9440,9 @@ ...@@ -8768,6 +9440,9 @@
], ],
"android": [ "android": [
"NUMPAD_9" "NUMPAD_9"
],
"glfw": [
"KP_9"
] ]
}, },
"values": { "values": {
...@@ -8789,6 +9464,9 @@ ...@@ -8789,6 +9464,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870177 77309870177
],
"glfw": [
329
] ]
} }
}, },
...@@ -8813,6 +9491,9 @@ ...@@ -8813,6 +9491,9 @@
], ],
"android": [ "android": [
"NUMPAD_EQUALS" "NUMPAD_EQUALS"
],
"glfw": [
"KP_EQUAL"
] ]
}, },
"values": { "values": {
...@@ -8833,6 +9514,9 @@ ...@@ -8833,6 +9514,9 @@
], ],
"fuchsia": [ "fuchsia": [
77309870183 77309870183
],
"glfw": [
336
] ]
} }
}, },
......
...@@ -562,11 +562,6 @@ ...@@ -562,11 +562,6 @@
"windows": 30, "windows": 30,
"macos": 0, "macos": 0,
"ios": 4 "ios": 4
},
"keyCodes": {
"glfw": [
65
]
} }
}, },
"KeyB": { "KeyB": {
...@@ -584,11 +579,6 @@ ...@@ -584,11 +579,6 @@
"windows": 48, "windows": 48,
"macos": 11, "macos": 11,
"ios": 5 "ios": 5
},
"keyCodes": {
"glfw": [
66
]
} }
}, },
"KeyC": { "KeyC": {
...@@ -606,11 +596,6 @@ ...@@ -606,11 +596,6 @@
"windows": 46, "windows": 46,
"macos": 8, "macos": 8,
"ios": 6 "ios": 6
},
"keyCodes": {
"glfw": [
67
]
} }
}, },
"KeyD": { "KeyD": {
...@@ -628,11 +613,6 @@ ...@@ -628,11 +613,6 @@
"windows": 32, "windows": 32,
"macos": 2, "macos": 2,
"ios": 7 "ios": 7
},
"keyCodes": {
"glfw": [
68
]
} }
}, },
"KeyE": { "KeyE": {
...@@ -650,11 +630,6 @@ ...@@ -650,11 +630,6 @@
"windows": 18, "windows": 18,
"macos": 14, "macos": 14,
"ios": 8 "ios": 8
},
"keyCodes": {
"glfw": [
69
]
} }
}, },
"KeyF": { "KeyF": {
...@@ -672,11 +647,6 @@ ...@@ -672,11 +647,6 @@
"windows": 33, "windows": 33,
"macos": 3, "macos": 3,
"ios": 9 "ios": 9
},
"keyCodes": {
"glfw": [
70
]
} }
}, },
"KeyG": { "KeyG": {
...@@ -694,11 +664,6 @@ ...@@ -694,11 +664,6 @@
"windows": 34, "windows": 34,
"macos": 5, "macos": 5,
"ios": 10 "ios": 10
},
"keyCodes": {
"glfw": [
71
]
} }
}, },
"KeyH": { "KeyH": {
...@@ -716,11 +681,6 @@ ...@@ -716,11 +681,6 @@
"windows": 35, "windows": 35,
"macos": 4, "macos": 4,
"ios": 11 "ios": 11
},
"keyCodes": {
"glfw": [
72
]
} }
}, },
"KeyI": { "KeyI": {
...@@ -738,11 +698,6 @@ ...@@ -738,11 +698,6 @@
"windows": 23, "windows": 23,
"macos": 34, "macos": 34,
"ios": 12 "ios": 12
},
"keyCodes": {
"glfw": [
73
]
} }
}, },
"KeyJ": { "KeyJ": {
...@@ -760,11 +715,6 @@ ...@@ -760,11 +715,6 @@
"windows": 36, "windows": 36,
"macos": 38, "macos": 38,
"ios": 13 "ios": 13
},
"keyCodes": {
"glfw": [
74
]
} }
}, },
"KeyK": { "KeyK": {
...@@ -782,11 +732,6 @@ ...@@ -782,11 +732,6 @@
"windows": 37, "windows": 37,
"macos": 40, "macos": 40,
"ios": 14 "ios": 14
},
"keyCodes": {
"glfw": [
75
]
} }
}, },
"KeyL": { "KeyL": {
...@@ -804,11 +749,6 @@ ...@@ -804,11 +749,6 @@
"windows": 38, "windows": 38,
"macos": 37, "macos": 37,
"ios": 15 "ios": 15
},
"keyCodes": {
"glfw": [
76
]
} }
}, },
"KeyM": { "KeyM": {
...@@ -826,11 +766,6 @@ ...@@ -826,11 +766,6 @@
"windows": 50, "windows": 50,
"macos": 46, "macos": 46,
"ios": 16 "ios": 16
},
"keyCodes": {
"glfw": [
77
]
} }
}, },
"KeyN": { "KeyN": {
...@@ -848,11 +783,6 @@ ...@@ -848,11 +783,6 @@
"windows": 49, "windows": 49,
"macos": 45, "macos": 45,
"ios": 17 "ios": 17
},
"keyCodes": {
"glfw": [
78
]
} }
}, },
"KeyO": { "KeyO": {
...@@ -870,11 +800,6 @@ ...@@ -870,11 +800,6 @@
"windows": 24, "windows": 24,
"macos": 31, "macos": 31,
"ios": 18 "ios": 18
},
"keyCodes": {
"glfw": [
79
]
} }
}, },
"KeyP": { "KeyP": {
...@@ -892,11 +817,6 @@ ...@@ -892,11 +817,6 @@
"windows": 25, "windows": 25,
"macos": 35, "macos": 35,
"ios": 19 "ios": 19
},
"keyCodes": {
"glfw": [
80
]
} }
}, },
"KeyQ": { "KeyQ": {
...@@ -914,11 +834,6 @@ ...@@ -914,11 +834,6 @@
"windows": 16, "windows": 16,
"macos": 12, "macos": 12,
"ios": 20 "ios": 20
},
"keyCodes": {
"glfw": [
81
]
} }
}, },
"KeyR": { "KeyR": {
...@@ -936,11 +851,6 @@ ...@@ -936,11 +851,6 @@
"windows": 19, "windows": 19,
"macos": 15, "macos": 15,
"ios": 21 "ios": 21
},
"keyCodes": {
"glfw": [
82
]
} }
}, },
"KeyS": { "KeyS": {
...@@ -958,11 +868,6 @@ ...@@ -958,11 +868,6 @@
"windows": 31, "windows": 31,
"macos": 1, "macos": 1,
"ios": 22 "ios": 22
},
"keyCodes": {
"glfw": [
83
]
} }
}, },
"KeyT": { "KeyT": {
...@@ -980,11 +885,6 @@ ...@@ -980,11 +885,6 @@
"windows": 20, "windows": 20,
"macos": 17, "macos": 17,
"ios": 23 "ios": 23
},
"keyCodes": {
"glfw": [
84
]
} }
}, },
"KeyU": { "KeyU": {
...@@ -1002,11 +902,6 @@ ...@@ -1002,11 +902,6 @@
"windows": 22, "windows": 22,
"macos": 32, "macos": 32,
"ios": 24 "ios": 24
},
"keyCodes": {
"glfw": [
85
]
} }
}, },
"KeyV": { "KeyV": {
...@@ -1024,11 +919,6 @@ ...@@ -1024,11 +919,6 @@
"windows": 47, "windows": 47,
"macos": 9, "macos": 9,
"ios": 25 "ios": 25
},
"keyCodes": {
"glfw": [
86
]
} }
}, },
"KeyW": { "KeyW": {
...@@ -1046,11 +936,6 @@ ...@@ -1046,11 +936,6 @@
"windows": 17, "windows": 17,
"macos": 13, "macos": 13,
"ios": 26 "ios": 26
},
"keyCodes": {
"glfw": [
87
]
} }
}, },
"KeyX": { "KeyX": {
...@@ -1068,11 +953,6 @@ ...@@ -1068,11 +953,6 @@
"windows": 45, "windows": 45,
"macos": 7, "macos": 7,
"ios": 27 "ios": 27
},
"keyCodes": {
"glfw": [
88
]
} }
}, },
"KeyY": { "KeyY": {
...@@ -1090,11 +970,6 @@ ...@@ -1090,11 +970,6 @@
"windows": 21, "windows": 21,
"macos": 16, "macos": 16,
"ios": 28 "ios": 28
},
"keyCodes": {
"glfw": [
89
]
} }
}, },
"KeyZ": { "KeyZ": {
...@@ -1112,11 +987,6 @@ ...@@ -1112,11 +987,6 @@
"windows": 44, "windows": 44,
"macos": 6, "macos": 6,
"ios": 29 "ios": 29
},
"keyCodes": {
"glfw": [
90
]
} }
}, },
"Digit1": { "Digit1": {
...@@ -1134,11 +1004,6 @@ ...@@ -1134,11 +1004,6 @@
"windows": 2, "windows": 2,
"macos": 18, "macos": 18,
"ios": 30 "ios": 30
},
"keyCodes": {
"glfw": [
49
]
} }
}, },
"Digit2": { "Digit2": {
...@@ -1156,11 +1021,6 @@ ...@@ -1156,11 +1021,6 @@
"windows": 3, "windows": 3,
"macos": 19, "macos": 19,
"ios": 31 "ios": 31
},
"keyCodes": {
"glfw": [
50
]
} }
}, },
"Digit3": { "Digit3": {
...@@ -1178,11 +1038,6 @@ ...@@ -1178,11 +1038,6 @@
"windows": 4, "windows": 4,
"macos": 20, "macos": 20,
"ios": 32 "ios": 32
},
"keyCodes": {
"glfw": [
51
]
} }
}, },
"Digit4": { "Digit4": {
...@@ -1200,11 +1055,6 @@ ...@@ -1200,11 +1055,6 @@
"windows": 5, "windows": 5,
"macos": 21, "macos": 21,
"ios": 33 "ios": 33
},
"keyCodes": {
"glfw": [
52
]
} }
}, },
"Digit5": { "Digit5": {
...@@ -1222,11 +1072,6 @@ ...@@ -1222,11 +1072,6 @@
"windows": 6, "windows": 6,
"macos": 23, "macos": 23,
"ios": 34 "ios": 34
},
"keyCodes": {
"glfw": [
53
]
} }
}, },
"Digit6": { "Digit6": {
...@@ -1244,11 +1089,6 @@ ...@@ -1244,11 +1089,6 @@
"windows": 7, "windows": 7,
"macos": 22, "macos": 22,
"ios": 35 "ios": 35
},
"keyCodes": {
"glfw": [
54
]
} }
}, },
"Digit7": { "Digit7": {
...@@ -1266,11 +1106,6 @@ ...@@ -1266,11 +1106,6 @@
"windows": 8, "windows": 8,
"macos": 26, "macos": 26,
"ios": 36 "ios": 36
},
"keyCodes": {
"glfw": [
55
]
} }
}, },
"Digit8": { "Digit8": {
...@@ -1288,11 +1123,6 @@ ...@@ -1288,11 +1123,6 @@
"windows": 9, "windows": 9,
"macos": 28, "macos": 28,
"ios": 37 "ios": 37
},
"keyCodes": {
"glfw": [
56
]
} }
}, },
"Digit9": { "Digit9": {
...@@ -1310,11 +1140,6 @@ ...@@ -1310,11 +1140,6 @@
"windows": 10, "windows": 10,
"macos": 25, "macos": 25,
"ios": 38 "ios": 38
},
"keyCodes": {
"glfw": [
57
]
} }
}, },
"Digit0": { "Digit0": {
...@@ -1332,11 +1157,6 @@ ...@@ -1332,11 +1157,6 @@
"windows": 11, "windows": 11,
"macos": 29, "macos": 29,
"ios": 39 "ios": 39
},
"keyCodes": {
"glfw": [
48
]
} }
}, },
"Enter": { "Enter": {
...@@ -1354,11 +1174,6 @@ ...@@ -1354,11 +1174,6 @@
"windows": 28, "windows": 28,
"macos": 36, "macos": 36,
"ios": 40 "ios": 40
},
"keyCodes": {
"glfw": [
257
]
} }
}, },
"Escape": { "Escape": {
...@@ -1376,11 +1191,6 @@ ...@@ -1376,11 +1191,6 @@
"windows": 1, "windows": 1,
"macos": 53, "macos": 53,
"ios": 41 "ios": 41
},
"keyCodes": {
"glfw": [
256
]
} }
}, },
"Backspace": { "Backspace": {
...@@ -1398,11 +1208,6 @@ ...@@ -1398,11 +1208,6 @@
"windows": 14, "windows": 14,
"macos": 51, "macos": 51,
"ios": 42 "ios": 42
},
"keyCodes": {
"glfw": [
259
]
} }
}, },
"Tab": { "Tab": {
...@@ -1420,11 +1225,6 @@ ...@@ -1420,11 +1225,6 @@
"windows": 15, "windows": 15,
"macos": 48, "macos": 48,
"ios": 43 "ios": 43
},
"keyCodes": {
"glfw": [
258
]
} }
}, },
"Space": { "Space": {
...@@ -1442,11 +1242,6 @@ ...@@ -1442,11 +1242,6 @@
"windows": 57, "windows": 57,
"macos": 49, "macos": 49,
"ios": 44 "ios": 44
},
"keyCodes": {
"glfw": [
32
]
} }
}, },
"Minus": { "Minus": {
...@@ -1464,11 +1259,6 @@ ...@@ -1464,11 +1259,6 @@
"windows": 12, "windows": 12,
"macos": 27, "macos": 27,
"ios": 45 "ios": 45
},
"keyCodes": {
"glfw": [
45
]
} }
}, },
"Equal": { "Equal": {
...@@ -1486,11 +1276,6 @@ ...@@ -1486,11 +1276,6 @@
"windows": 13, "windows": 13,
"macos": 24, "macos": 24,
"ios": 46 "ios": 46
},
"keyCodes": {
"glfw": [
61
]
} }
}, },
"BracketLeft": { "BracketLeft": {
...@@ -1508,11 +1293,6 @@ ...@@ -1508,11 +1293,6 @@
"windows": 26, "windows": 26,
"macos": 33, "macos": 33,
"ios": 47 "ios": 47
},
"keyCodes": {
"glfw": [
91
]
} }
}, },
"BracketRight": { "BracketRight": {
...@@ -1530,11 +1310,6 @@ ...@@ -1530,11 +1310,6 @@
"windows": 27, "windows": 27,
"macos": 30, "macos": 30,
"ios": 48 "ios": 48
},
"keyCodes": {
"glfw": [
93
]
} }
}, },
"Backslash": { "Backslash": {
...@@ -1553,11 +1328,6 @@ ...@@ -1553,11 +1328,6 @@
"windows": 43, "windows": 43,
"macos": 42, "macos": 42,
"ios": 49 "ios": 49
},
"keyCodes": {
"glfw": [
92
]
} }
}, },
"Semicolon": { "Semicolon": {
...@@ -1575,11 +1345,6 @@ ...@@ -1575,11 +1345,6 @@
"windows": 39, "windows": 39,
"macos": 41, "macos": 41,
"ios": 51 "ios": 51
},
"keyCodes": {
"glfw": [
59
]
} }
}, },
"Quote": { "Quote": {
...@@ -1597,11 +1362,6 @@ ...@@ -1597,11 +1362,6 @@
"windows": 40, "windows": 40,
"macos": 39, "macos": 39,
"ios": 52 "ios": 52
},
"keyCodes": {
"glfw": [
39
]
} }
}, },
"Backquote": { "Backquote": {
...@@ -1619,11 +1379,6 @@ ...@@ -1619,11 +1379,6 @@
"windows": 41, "windows": 41,
"macos": 50, "macos": 50,
"ios": 53 "ios": 53
},
"keyCodes": {
"glfw": [
96
]
} }
}, },
"Comma": { "Comma": {
...@@ -1641,11 +1396,6 @@ ...@@ -1641,11 +1396,6 @@
"windows": 51, "windows": 51,
"macos": 43, "macos": 43,
"ios": 54 "ios": 54
},
"keyCodes": {
"glfw": [
44
]
} }
}, },
"Period": { "Period": {
...@@ -1663,11 +1413,6 @@ ...@@ -1663,11 +1413,6 @@
"windows": 52, "windows": 52,
"macos": 47, "macos": 47,
"ios": 55 "ios": 55
},
"keyCodes": {
"glfw": [
46
]
} }
}, },
"Slash": { "Slash": {
...@@ -1685,11 +1430,6 @@ ...@@ -1685,11 +1430,6 @@
"windows": 53, "windows": 53,
"macos": 44, "macos": 44,
"ios": 56 "ios": 56
},
"keyCodes": {
"glfw": [
47
]
} }
}, },
"CapsLock": { "CapsLock": {
...@@ -1707,11 +1447,6 @@ ...@@ -1707,11 +1447,6 @@
"windows": 58, "windows": 58,
"macos": 57, "macos": 57,
"ios": 57 "ios": 57
},
"keyCodes": {
"glfw": [
280
]
} }
}, },
"F1": { "F1": {
...@@ -1729,11 +1464,6 @@ ...@@ -1729,11 +1464,6 @@
"windows": 59, "windows": 59,
"macos": 122, "macos": 122,
"ios": 58 "ios": 58
},
"keyCodes": {
"glfw": [
290
]
} }
}, },
"F2": { "F2": {
...@@ -1751,11 +1481,6 @@ ...@@ -1751,11 +1481,6 @@
"windows": 60, "windows": 60,
"macos": 120, "macos": 120,
"ios": 59 "ios": 59
},
"keyCodes": {
"glfw": [
291
]
} }
}, },
"F3": { "F3": {
...@@ -1773,11 +1498,6 @@ ...@@ -1773,11 +1498,6 @@
"windows": 61, "windows": 61,
"macos": 99, "macos": 99,
"ios": 60 "ios": 60
},
"keyCodes": {
"glfw": [
292
]
} }
}, },
"F4": { "F4": {
...@@ -1795,11 +1515,6 @@ ...@@ -1795,11 +1515,6 @@
"windows": 62, "windows": 62,
"macos": 118, "macos": 118,
"ios": 61 "ios": 61
},
"keyCodes": {
"glfw": [
293
]
} }
}, },
"F5": { "F5": {
...@@ -1817,11 +1532,6 @@ ...@@ -1817,11 +1532,6 @@
"windows": 63, "windows": 63,
"macos": 96, "macos": 96,
"ios": 62 "ios": 62
},
"keyCodes": {
"glfw": [
294
]
} }
}, },
"F6": { "F6": {
...@@ -1839,11 +1549,6 @@ ...@@ -1839,11 +1549,6 @@
"windows": 64, "windows": 64,
"macos": 97, "macos": 97,
"ios": 63 "ios": 63
},
"keyCodes": {
"glfw": [
295
]
} }
}, },
"F7": { "F7": {
...@@ -1861,11 +1566,6 @@ ...@@ -1861,11 +1566,6 @@
"windows": 65, "windows": 65,
"macos": 98, "macos": 98,
"ios": 64 "ios": 64
},
"keyCodes": {
"glfw": [
296
]
} }
}, },
"F8": { "F8": {
...@@ -1883,11 +1583,6 @@ ...@@ -1883,11 +1583,6 @@
"windows": 66, "windows": 66,
"macos": 100, "macos": 100,
"ios": 65 "ios": 65
},
"keyCodes": {
"glfw": [
297
]
} }
}, },
"F9": { "F9": {
...@@ -1905,11 +1600,6 @@ ...@@ -1905,11 +1600,6 @@
"windows": 67, "windows": 67,
"macos": 101, "macos": 101,
"ios": 66 "ios": 66
},
"keyCodes": {
"glfw": [
298
]
} }
}, },
"F10": { "F10": {
...@@ -1927,11 +1617,6 @@ ...@@ -1927,11 +1617,6 @@
"windows": 68, "windows": 68,
"macos": 109, "macos": 109,
"ios": 67 "ios": 67
},
"keyCodes": {
"glfw": [
299
]
} }
}, },
"F11": { "F11": {
...@@ -1949,11 +1634,6 @@ ...@@ -1949,11 +1634,6 @@
"windows": 87, "windows": 87,
"macos": 103, "macos": 103,
"ios": 68 "ios": 68
},
"keyCodes": {
"glfw": [
300
]
} }
}, },
"F12": { "F12": {
...@@ -1971,11 +1651,6 @@ ...@@ -1971,11 +1651,6 @@
"windows": 88, "windows": 88,
"macos": 111, "macos": 111,
"ios": 69 "ios": 69
},
"keyCodes": {
"glfw": [
301
]
} }
}, },
"PrintScreen": { "PrintScreen": {
...@@ -1992,11 +1667,6 @@ ...@@ -1992,11 +1667,6 @@
"xkb": 107, "xkb": 107,
"windows": 57399, "windows": 57399,
"ios": 70 "ios": 70
},
"keyCodes": {
"glfw": [
283
]
} }
}, },
"ScrollLock": { "ScrollLock": {
...@@ -2030,11 +1700,6 @@ ...@@ -2030,11 +1700,6 @@
"xkb": 127, "xkb": 127,
"windows": 69, "windows": 69,
"ios": 72 "ios": 72
},
"keyCodes": {
"glfw": [
284
]
} }
}, },
"Insert": { "Insert": {
...@@ -2052,11 +1717,6 @@ ...@@ -2052,11 +1717,6 @@
"windows": 57426, "windows": 57426,
"macos": 114, "macos": 114,
"ios": 73 "ios": 73
},
"keyCodes": {
"glfw": [
260
]
} }
}, },
"Home": { "Home": {
...@@ -2074,11 +1734,6 @@ ...@@ -2074,11 +1734,6 @@
"windows": 57415, "windows": 57415,
"macos": 115, "macos": 115,
"ios": 74 "ios": 74
},
"keyCodes": {
"glfw": [
268
]
} }
}, },
"PageUp": { "PageUp": {
...@@ -2097,11 +1752,6 @@ ...@@ -2097,11 +1752,6 @@
"windows": 57417, "windows": 57417,
"macos": 116, "macos": 116,
"ios": 75 "ios": 75
},
"keyCodes": {
"glfw": [
266
]
} }
}, },
"Delete": { "Delete": {
...@@ -2119,11 +1769,6 @@ ...@@ -2119,11 +1769,6 @@
"windows": 57427, "windows": 57427,
"macos": 117, "macos": 117,
"ios": 76 "ios": 76
},
"keyCodes": {
"glfw": [
261
]
} }
}, },
"End": { "End": {
...@@ -2141,11 +1786,6 @@ ...@@ -2141,11 +1786,6 @@
"windows": 57423, "windows": 57423,
"macos": 119, "macos": 119,
"ios": 77 "ios": 77
},
"keyCodes": {
"glfw": [
269
]
} }
}, },
"PageDown": { "PageDown": {
...@@ -2164,11 +1804,6 @@ ...@@ -2164,11 +1804,6 @@
"windows": 57425, "windows": 57425,
"macos": 121, "macos": 121,
"ios": 78 "ios": 78
},
"keyCodes": {
"glfw": [
267
]
} }
}, },
"ArrowRight": { "ArrowRight": {
...@@ -2186,11 +1821,6 @@ ...@@ -2186,11 +1821,6 @@
"windows": 57421, "windows": 57421,
"macos": 124, "macos": 124,
"ios": 79 "ios": 79
},
"keyCodes": {
"glfw": [
262
]
} }
}, },
"ArrowLeft": { "ArrowLeft": {
...@@ -2208,11 +1838,6 @@ ...@@ -2208,11 +1838,6 @@
"windows": 57419, "windows": 57419,
"macos": 123, "macos": 123,
"ios": 80 "ios": 80
},
"keyCodes": {
"glfw": [
263
]
} }
}, },
"ArrowDown": { "ArrowDown": {
...@@ -2230,11 +1855,6 @@ ...@@ -2230,11 +1855,6 @@
"windows": 57424, "windows": 57424,
"macos": 125, "macos": 125,
"ios": 81 "ios": 81
},
"keyCodes": {
"glfw": [
264
]
} }
}, },
"ArrowUp": { "ArrowUp": {
...@@ -2252,11 +1872,6 @@ ...@@ -2252,11 +1872,6 @@
"windows": 57416, "windows": 57416,
"macos": 126, "macos": 126,
"ios": 82 "ios": 82
},
"keyCodes": {
"glfw": [
265
]
} }
}, },
"NumLock": { "NumLock": {
...@@ -2274,11 +1889,6 @@ ...@@ -2274,11 +1889,6 @@
"windows": 57413, "windows": 57413,
"macos": 71, "macos": 71,
"ios": 83 "ios": 83
},
"keyCodes": {
"glfw": [
282
]
} }
}, },
"NumpadDivide": { "NumpadDivide": {
...@@ -2296,11 +1906,6 @@ ...@@ -2296,11 +1906,6 @@
"windows": 57397, "windows": 57397,
"macos": 75, "macos": 75,
"ios": 84 "ios": 84
},
"keyCodes": {
"glfw": [
331
]
} }
}, },
"NumpadMultiply": { "NumpadMultiply": {
...@@ -2318,11 +1923,6 @@ ...@@ -2318,11 +1923,6 @@
"windows": 55, "windows": 55,
"macos": 67, "macos": 67,
"ios": 85 "ios": 85
},
"keyCodes": {
"glfw": [
332
]
} }
}, },
"NumpadSubtract": { "NumpadSubtract": {
...@@ -2357,11 +1957,6 @@ ...@@ -2357,11 +1957,6 @@
"windows": 78, "windows": 78,
"macos": 69, "macos": 69,
"ios": 87 "ios": 87
},
"keyCodes": {
"glfw": [
334
]
} }
}, },
"NumpadEnter": { "NumpadEnter": {
...@@ -2379,11 +1974,6 @@ ...@@ -2379,11 +1974,6 @@
"windows": 57372, "windows": 57372,
"macos": 76, "macos": 76,
"ios": 88 "ios": 88
},
"keyCodes": {
"glfw": [
335
]
} }
}, },
"Numpad1": { "Numpad1": {
...@@ -2401,11 +1991,6 @@ ...@@ -2401,11 +1991,6 @@
"windows": 79, "windows": 79,
"macos": 83, "macos": 83,
"ios": 89 "ios": 89
},
"keyCodes": {
"glfw": [
321
]
} }
}, },
"Numpad2": { "Numpad2": {
...@@ -2423,11 +2008,6 @@ ...@@ -2423,11 +2008,6 @@
"windows": 80, "windows": 80,
"macos": 84, "macos": 84,
"ios": 90 "ios": 90
},
"keyCodes": {
"glfw": [
322
]
} }
}, },
"Numpad3": { "Numpad3": {
...@@ -2445,11 +2025,6 @@ ...@@ -2445,11 +2025,6 @@
"windows": 81, "windows": 81,
"macos": 85, "macos": 85,
"ios": 91 "ios": 91
},
"keyCodes": {
"glfw": [
323
]
} }
}, },
"Numpad4": { "Numpad4": {
...@@ -2467,11 +2042,6 @@ ...@@ -2467,11 +2042,6 @@
"windows": 75, "windows": 75,
"macos": 86, "macos": 86,
"ios": 92 "ios": 92
},
"keyCodes": {
"glfw": [
324
]
} }
}, },
"Numpad5": { "Numpad5": {
...@@ -2489,11 +2059,6 @@ ...@@ -2489,11 +2059,6 @@
"windows": 76, "windows": 76,
"macos": 87, "macos": 87,
"ios": 93 "ios": 93
},
"keyCodes": {
"glfw": [
325
]
} }
}, },
"Numpad6": { "Numpad6": {
...@@ -2511,11 +2076,6 @@ ...@@ -2511,11 +2076,6 @@
"windows": 77, "windows": 77,
"macos": 88, "macos": 88,
"ios": 94 "ios": 94
},
"keyCodes": {
"glfw": [
326
]
} }
}, },
"Numpad7": { "Numpad7": {
...@@ -2533,11 +2093,6 @@ ...@@ -2533,11 +2093,6 @@
"windows": 71, "windows": 71,
"macos": 89, "macos": 89,
"ios": 95 "ios": 95
},
"keyCodes": {
"glfw": [
327
]
} }
}, },
"Numpad8": { "Numpad8": {
...@@ -2555,11 +2110,6 @@ ...@@ -2555,11 +2110,6 @@
"windows": 72, "windows": 72,
"macos": 91, "macos": 91,
"ios": 96 "ios": 96
},
"keyCodes": {
"glfw": [
328
]
} }
}, },
"Numpad9": { "Numpad9": {
...@@ -2577,11 +2127,6 @@ ...@@ -2577,11 +2127,6 @@
"windows": 73, "windows": 73,
"macos": 92, "macos": 92,
"ios": 97 "ios": 97
},
"keyCodes": {
"glfw": [
329
]
} }
}, },
"Numpad0": { "Numpad0": {
...@@ -2599,11 +2144,6 @@ ...@@ -2599,11 +2144,6 @@
"windows": 82, "windows": 82,
"macos": 82, "macos": 82,
"ios": 98 "ios": 98
},
"keyCodes": {
"glfw": [
320
]
} }
}, },
"NumpadDecimal": { "NumpadDecimal": {
...@@ -2621,11 +2161,6 @@ ...@@ -2621,11 +2161,6 @@
"windows": 83, "windows": 83,
"macos": 65, "macos": 65,
"ios": 99 "ios": 99
},
"keyCodes": {
"glfw": [
330
]
} }
}, },
"IntlBackslash": { "IntlBackslash": {
...@@ -2658,11 +2193,6 @@ ...@@ -2658,11 +2193,6 @@
"windows": 57437, "windows": 57437,
"macos": 110, "macos": 110,
"ios": 101 "ios": 101
},
"keyCodes": {
"glfw": [
348
]
} }
}, },
"Power": { "Power": {
...@@ -2697,11 +2227,6 @@ ...@@ -2697,11 +2227,6 @@
"windows": 89, "windows": 89,
"macos": 81, "macos": 81,
"ios": 103 "ios": 103
},
"keyCodes": {
"glfw": [
336
]
} }
}, },
"F13": { "F13": {
...@@ -2719,11 +2244,6 @@ ...@@ -2719,11 +2244,6 @@
"windows": 100, "windows": 100,
"macos": 105, "macos": 105,
"ios": 104 "ios": 104
},
"keyCodes": {
"glfw": [
302
]
} }
}, },
"F14": { "F14": {
...@@ -2741,11 +2261,6 @@ ...@@ -2741,11 +2261,6 @@
"windows": 101, "windows": 101,
"macos": 107, "macos": 107,
"ios": 105 "ios": 105
},
"keyCodes": {
"glfw": [
303
]
} }
}, },
"F15": { "F15": {
...@@ -2763,11 +2278,6 @@ ...@@ -2763,11 +2278,6 @@
"windows": 102, "windows": 102,
"macos": 113, "macos": 113,
"ios": 106 "ios": 106
},
"keyCodes": {
"glfw": [
304
]
} }
}, },
"F16": { "F16": {
...@@ -2785,11 +2295,6 @@ ...@@ -2785,11 +2295,6 @@
"windows": 103, "windows": 103,
"macos": 106, "macos": 106,
"ios": 107 "ios": 107
},
"keyCodes": {
"glfw": [
305
]
} }
}, },
"F17": { "F17": {
...@@ -2807,11 +2312,6 @@ ...@@ -2807,11 +2312,6 @@
"windows": 104, "windows": 104,
"macos": 64, "macos": 64,
"ios": 108 "ios": 108
},
"keyCodes": {
"glfw": [
306
]
} }
}, },
"F18": { "F18": {
...@@ -2829,11 +2329,6 @@ ...@@ -2829,11 +2329,6 @@
"windows": 105, "windows": 105,
"macos": 79, "macos": 79,
"ios": 109 "ios": 109
},
"keyCodes": {
"glfw": [
307
]
} }
}, },
"F19": { "F19": {
...@@ -2851,11 +2346,6 @@ ...@@ -2851,11 +2346,6 @@
"windows": 106, "windows": 106,
"macos": 80, "macos": 80,
"ios": 110 "ios": 110
},
"keyCodes": {
"glfw": [
308
]
} }
}, },
"F20": { "F20": {
...@@ -2873,11 +2363,6 @@ ...@@ -2873,11 +2363,6 @@
"windows": 107, "windows": 107,
"macos": 90, "macos": 90,
"ios": 111 "ios": 111
},
"keyCodes": {
"glfw": [
309
]
} }
}, },
"F21": { "F21": {
...@@ -2894,11 +2379,6 @@ ...@@ -2894,11 +2379,6 @@
"xkb": 199, "xkb": 199,
"windows": 108, "windows": 108,
"ios": 112 "ios": 112
},
"keyCodes": {
"glfw": [
310
]
} }
}, },
"F22": { "F22": {
...@@ -2915,11 +2395,6 @@ ...@@ -2915,11 +2395,6 @@
"xkb": 200, "xkb": 200,
"windows": 109, "windows": 109,
"ios": 113 "ios": 113
},
"keyCodes": {
"glfw": [
311
]
} }
}, },
"F23": { "F23": {
...@@ -2936,11 +2411,6 @@ ...@@ -2936,11 +2411,6 @@
"xkb": 201, "xkb": 201,
"windows": 110, "windows": 110,
"ios": 114 "ios": 114
},
"keyCodes": {
"glfw": [
312
]
} }
}, },
"F24": { "F24": {
...@@ -3478,11 +2948,6 @@ ...@@ -3478,11 +2948,6 @@
"windows": 29, "windows": 29,
"macos": 59, "macos": 59,
"ios": 224 "ios": 224
},
"keyCodes": {
"glfw": [
341
]
} }
}, },
"ShiftLeft": { "ShiftLeft": {
...@@ -3500,11 +2965,6 @@ ...@@ -3500,11 +2965,6 @@
"windows": 42, "windows": 42,
"macos": 56, "macos": 56,
"ios": 225 "ios": 225
},
"keyCodes": {
"glfw": [
340
]
} }
}, },
"AltLeft": { "AltLeft": {
...@@ -3522,11 +2982,6 @@ ...@@ -3522,11 +2982,6 @@
"windows": 56, "windows": 56,
"macos": 58, "macos": 58,
"ios": 226 "ios": 226
},
"keyCodes": {
"glfw": [
342
]
} }
}, },
"MetaLeft": { "MetaLeft": {
...@@ -3544,11 +2999,6 @@ ...@@ -3544,11 +2999,6 @@
"windows": 57435, "windows": 57435,
"macos": 55, "macos": 55,
"ios": 227 "ios": 227
},
"keyCodes": {
"glfw": [
343
]
} }
}, },
"ControlRight": { "ControlRight": {
...@@ -3566,11 +3016,6 @@ ...@@ -3566,11 +3016,6 @@
"windows": 57373, "windows": 57373,
"macos": 62, "macos": 62,
"ios": 228 "ios": 228
},
"keyCodes": {
"glfw": [
345
]
} }
}, },
"ShiftRight": { "ShiftRight": {
...@@ -3588,11 +3033,6 @@ ...@@ -3588,11 +3033,6 @@
"windows": 54, "windows": 54,
"macos": 60, "macos": 60,
"ios": 229 "ios": 229
},
"keyCodes": {
"glfw": [
344
]
} }
}, },
"AltRight": { "AltRight": {
...@@ -3610,11 +3050,6 @@ ...@@ -3610,11 +3050,6 @@
"windows": 57400, "windows": 57400,
"macos": 61, "macos": 61,
"ios": 230 "ios": 230
},
"keyCodes": {
"glfw": [
346
]
} }
}, },
"MetaRight": { "MetaRight": {
...@@ -3632,11 +3067,6 @@ ...@@ -3632,11 +3067,6 @@
"windows": 57436, "windows": 57436,
"macos": 54, "macos": 54,
"ios": 231 "ios": 231
},
"keyCodes": {
"glfw": [
347
]
} }
}, },
"Info": { "Info": {
......
...@@ -63,7 +63,8 @@ class KeyboardMapsCodeGenerator extends BaseCodeGenerator { ...@@ -63,7 +63,8 @@ class KeyboardMapsCodeGenerator extends BaseCodeGenerator {
String get _glfwNumpadMap { String get _glfwNumpadMap {
final OutputLines<int> lines = OutputLines<int>('GLFW numpad map'); final OutputLines<int> lines = OutputLines<int>('GLFW numpad map');
for (final PhysicalKeyEntry entry in _numpadKeyData) { for (final PhysicalKeyEntry entry in _numpadKeyData) {
for (final int code in entry.glfwKeyCodes) { final LogicalKeyEntry logicalKey = logicalData.entryByName(entry.name);
for (final int code in logicalKey.glfwValues) {
lines.add(code, ' $code: LogicalKeyboardKey.${entry.constantName},'); lines.add(code, ' $code: LogicalKeyboardKey.${entry.constantName},');
} }
} }
...@@ -73,9 +74,9 @@ class KeyboardMapsCodeGenerator extends BaseCodeGenerator { ...@@ -73,9 +74,9 @@ class KeyboardMapsCodeGenerator extends BaseCodeGenerator {
/// This generates the map of GLFW key codes to logical keys. /// This generates the map of GLFW key codes to logical keys.
String get _glfwKeyCodeMap { String get _glfwKeyCodeMap {
final OutputLines<int> lines = OutputLines<int>('GLFW key code map'); final OutputLines<int> lines = OutputLines<int>('GLFW key code map');
for (final PhysicalKeyEntry entry in keyData.entries) { for (final LogicalKeyEntry entry in logicalData.entries) {
for (final int code in entry.glfwKeyCodes) { for (final int value in entry.glfwValues) {
lines.add(code, ' $code: LogicalKeyboardKey.${entry.constantName},'); lines.add(value, ' $value: LogicalKeyboardKey.${entry.constantName},');
} }
} }
return lines.sortedJoin().trimRight(); return lines.sortedJoin().trimRight();
......
...@@ -50,6 +50,8 @@ class LogicalKeyData { ...@@ -50,6 +50,8 @@ class LogicalKeyData {
String androidNameMap, String androidNameMap,
String macosLogicalToPhysical, String macosLogicalToPhysical,
String iosLogicalToPhysical, String iosLogicalToPhysical,
String glfwHeaderFile,
String glfwNameMap,
PhysicalKeyData physicalKeyData, PhysicalKeyData physicalKeyData,
) { ) {
final Map<String, LogicalKeyEntry> data = <String, LogicalKeyEntry>{}; final Map<String, LogicalKeyEntry> data = <String, LogicalKeyEntry>{};
...@@ -60,6 +62,7 @@ class LogicalKeyData { ...@@ -60,6 +62,7 @@ class LogicalKeyData {
_readMacOsKeyCodes(data, physicalKeyData, parseMapOfListOfString(macosLogicalToPhysical)); _readMacOsKeyCodes(data, physicalKeyData, parseMapOfListOfString(macosLogicalToPhysical));
_readIosKeyCodes(data, physicalKeyData, parseMapOfListOfString(iosLogicalToPhysical)); _readIosKeyCodes(data, physicalKeyData, parseMapOfListOfString(iosLogicalToPhysical));
_readFuchsiaKeyCodes(data, physicalKeyData); _readFuchsiaKeyCodes(data, physicalKeyData);
_readGlfwKeyCodes(data, glfwHeaderFile, parseMapOfListOfString(glfwNameMap));
// Sort entries by value // Sort entries by value
final List<MapEntry<String, LogicalKeyEntry>> sortedEntries = data.entries.toList()..sort( final List<MapEntry<String, LogicalKeyEntry>> sortedEntries = data.entries.toList()..sort(
(MapEntry<String, LogicalKeyEntry> a, MapEntry<String, LogicalKeyEntry> b) => (MapEntry<String, LogicalKeyEntry> a, MapEntry<String, LogicalKeyEntry> b) =>
...@@ -333,6 +336,54 @@ class LogicalKeyData { ...@@ -333,6 +336,54 @@ class LogicalKeyData {
} }
} }
/// Parses entries from GLFW's keycodes.h key code data file.
///
/// Lines in this file look like this (without the ///):
/// /** Space key. */
/// #define GLFW_KEY_SPACE 32,
/// #define GLFW_KEY_LAST GLFW_KEY_MENU
static void _readGlfwKeyCodes(Map<String, LogicalKeyEntry> data, String headerFile, Map<String, List<String>> nameMap) {
final Map<String, String> nameToFlutterName = reverseMapOfListOfString(nameMap,
(String flutterName, String glfwName) { print('Duplicate GLFW logical name $glfwName'); });
// Only get the KEY definitions, ignore the rest (mouse, joystick, etc).
final RegExp definedCodes = RegExp(
r'define\s+'
r'GLFW_KEY_(?<name>[A-Z0-9_]+)\s+'
r'(?<value>[A-Z0-9_]+),?',
);
final Map<String, dynamic> replaced = <String, dynamic>{};
for (final RegExpMatch match in definedCodes.allMatches(headerFile)) {
final String name = match.namedGroup('name')!;
final String value = match.namedGroup('value')!;
replaced[name] = int.tryParse(value) ?? value.replaceAll('GLFW_KEY_', '');
}
final Map<String, int> glfwNameToKeyCode = <String, int>{};
replaced.forEach((String key, dynamic value) {
// Some definition values point to other definitions (e.g #define GLFW_KEY_LAST GLFW_KEY_MENU).
if (value is String) {
glfwNameToKeyCode[key] = replaced[value] as int;
} else {
glfwNameToKeyCode[key] = value as int;
}
});
glfwNameToKeyCode.forEach((String glfwName, int value) {
final String? name = nameToFlutterName[glfwName];
final LogicalKeyEntry? entry = data[nameToFlutterName[glfwName]];
if (entry == null) {
print('Invalid logical entry by name $name (from GLFW $glfwName)');
return;
}
addNameValue(
entry.glfwNames,
entry.glfwValues,
glfwName,
value,
);
});
}
// Map Web key to the pair of key names // Map Web key to the pair of key names
static late final Map<String, _ModifierPair> _chromeModifiers = () { static late final Map<String, _ModifierPair> _chromeModifiers = () {
final String rawJson = File(path.join(dataRoot, 'chromium_modifiers.json',)).readAsStringSync(); final String rawJson = File(path.join(dataRoot, 'chromium_modifiers.json',)).readAsStringSync();
...@@ -401,7 +452,9 @@ class LogicalKeyEntry { ...@@ -401,7 +452,9 @@ class LogicalKeyEntry {
windowsValues = <int>[], windowsValues = <int>[],
androidNames = <String>[], androidNames = <String>[],
androidValues = <int>[], androidValues = <int>[],
fuchsiaValues = <int>[]; fuchsiaValues = <int>[],
glfwNames = <String>[],
glfwValues = <int>[];
LogicalKeyEntry.fromName({ LogicalKeyEntry.fromName({
required int value, required int value,
...@@ -429,6 +482,8 @@ class LogicalKeyEntry { ...@@ -429,6 +482,8 @@ class LogicalKeyEntry {
androidNames = _toNonEmptyArray<String>((map['names'] as Map<String, dynamic>)['android']), androidNames = _toNonEmptyArray<String>((map['names'] as Map<String, dynamic>)['android']),
androidValues = _toNonEmptyArray<int>((map['values'] as Map<String, dynamic>?)?['android']), androidValues = _toNonEmptyArray<int>((map['values'] as Map<String, dynamic>?)?['android']),
fuchsiaValues = _toNonEmptyArray<int>((map['values'] as Map<String, dynamic>?)?['fuchsia']), fuchsiaValues = _toNonEmptyArray<int>((map['values'] as Map<String, dynamic>?)?['fuchsia']),
glfwNames = _toNonEmptyArray<String>((map['names'] as Map<String, dynamic>)['glfw']),
glfwValues = _toNonEmptyArray<int>((map['values'] as Map<String, dynamic>?)?['glfw']),
keyLabel = map['keyLabel'] as String?; keyLabel = map['keyLabel'] as String?;
final int value; final int value;
...@@ -490,6 +545,15 @@ class LogicalKeyEntry { ...@@ -490,6 +545,15 @@ class LogicalKeyEntry {
final List<int> fuchsiaValues; final List<int> fuchsiaValues;
/// The list of names that GLFW gives to this key (symbol names minus the
/// prefix).
final List<String> glfwNames;
/// The list of GLFW key codes matching this key, created by looking up the
/// GLFW name in the Chromium data, and substituting the GLFW key code
/// value.
final List<int> glfwValues;
/// A string indicating the letter on the keycap of a letter key. /// A string indicating the letter on the keycap of a letter key.
/// ///
/// This is only used to generate the key label mapping in keyboard_map.dart. /// This is only used to generate the key label mapping in keyboard_map.dart.
...@@ -510,6 +574,7 @@ class LogicalKeyEntry { ...@@ -510,6 +574,7 @@ class LogicalKeyEntry {
'gtk': gtkNames, 'gtk': gtkNames,
'windows': windowsNames, 'windows': windowsNames,
'android': androidNames, 'android': androidNames,
'glfw': glfwNames,
}, },
'values': <String, List<int>>{ 'values': <String, List<int>>{
'macos': macOSKeyCodeValues, 'macos': macOSKeyCodeValues,
...@@ -518,6 +583,7 @@ class LogicalKeyEntry { ...@@ -518,6 +583,7 @@ class LogicalKeyEntry {
'windows': windowsValues, 'windows': windowsValues,
'android': androidValues, 'android': androidValues,
'fuchsia': fuchsiaValues, 'fuchsia': fuchsiaValues,
'glfw': glfwValues,
}, },
}); });
} }
......
...@@ -17,15 +17,11 @@ class PhysicalKeyData { ...@@ -17,15 +17,11 @@ class PhysicalKeyData {
String chromiumHidCodes, String chromiumHidCodes,
String androidKeyboardLayout, String androidKeyboardLayout,
String androidNameMap, String androidNameMap,
String glfwHeaderFile,
String glfwNameMap,
) { ) {
final Map<String, List<int>> nameToAndroidScanCodes = _readAndroidScanCodes(androidKeyboardLayout, androidNameMap); final Map<String, List<int>> nameToAndroidScanCodes = _readAndroidScanCodes(androidKeyboardLayout, androidNameMap);
final Map<String, List<int>> nameToGlfwKeyCodes = _readGlfwKeyCodes(glfwHeaderFile, glfwNameMap);
final Map<String, PhysicalKeyEntry> data = _readHidEntries( final Map<String, PhysicalKeyEntry> data = _readHidEntries(
chromiumHidCodes, chromiumHidCodes,
nameToAndroidScanCodes, nameToAndroidScanCodes,
nameToGlfwKeyCodes,
); );
final List<MapEntry<String, PhysicalKeyEntry>> sortedEntries = data.entries.toList()..sort( final List<MapEntry<String, PhysicalKeyEntry>> sortedEntries = data.entries.toList()..sort(
(MapEntry<String, PhysicalKeyEntry> a, MapEntry<String, PhysicalKeyEntry> b) => (MapEntry<String, PhysicalKeyEntry> a, MapEntry<String, PhysicalKeyEntry> b) =>
...@@ -134,54 +130,6 @@ class PhysicalKeyData { ...@@ -134,54 +130,6 @@ class PhysicalKeyData {
return result; return result;
} }
/// Parses entries from GLFW's keycodes.h key code data file.
///
/// Lines in this file look like this (without the ///):
/// /** Space key. */
/// #define GLFW_KEY_SPACE 32,
/// #define GLFW_KEY_LAST GLFW_KEY_MENU
static Map<String, List<int>> _readGlfwKeyCodes(String headerFile, String nameMap) {
// Only get the KEY definitions, ignore the rest (mouse, joystick, etc).
final RegExp definedCodes = RegExp(
r'define\s+'
r'GLFW_KEY_(?<name>[A-Z0-9_]+)\s+'
r'(?<value>[A-Z0-9_]+),?',
);
final Map<String, dynamic> replaced = <String, dynamic>{};
for (final RegExpMatch match in definedCodes.allMatches(headerFile)) {
final String name = match.namedGroup('name')!;
final String value = match.namedGroup('value')!;
replaced[name] = int.tryParse(value) ?? value.replaceAll('GLFW_KEY_', '');
}
final Map<String, int> glfwNameToKeyCode = <String, int>{};
replaced.forEach((String key, dynamic value) {
// Some definition values point to other definitions (e.g #define GLFW_KEY_LAST GLFW_KEY_MENU).
if (value is String) {
glfwNameToKeyCode[key] = replaced[value] as int;
} else {
glfwNameToKeyCode[key] = value as int;
}
});
final Map<String, List<String>> nameToGlfwNames = (json.decode(nameMap) as Map<String, dynamic>)
.cast<String, List<dynamic>>()
.map<String, List<String>>((String key, List<dynamic> value) {
return MapEntry<String, List<String>>(key, value.cast<String>());
});
final Map<String, List<int>> result = nameToGlfwNames.map((String name, List<String> glfwNames) {
final Set<int> keyCodes = <int>{};
for (final String glfwName in glfwNames) {
if (glfwNameToKeyCode[glfwName] != null)
keyCodes.add(glfwNameToKeyCode[glfwName]!);
}
return MapEntry<String, List<int>>(name, keyCodes.toList()..sort());
});
return result;
}
/// Parses entries from Chromium's HID code mapping header file. /// Parses entries from Chromium's HID code mapping header file.
/// ///
/// Lines in this file look like this (without the ///): /// Lines in this file look like this (without the ///):
...@@ -190,7 +138,6 @@ class PhysicalKeyData { ...@@ -190,7 +138,6 @@ class PhysicalKeyData {
static Map<String, PhysicalKeyEntry> _readHidEntries( static Map<String, PhysicalKeyEntry> _readHidEntries(
String input, String input,
Map<String, List<int>> nameToAndroidScanCodes, Map<String, List<int>> nameToAndroidScanCodes,
Map<String, List<int>> nameToGlfwKeyCodes,
) { ) {
final Map<int, PhysicalKeyEntry> entries = <int, PhysicalKeyEntry>{}; final Map<int, PhysicalKeyEntry> entries = <int, PhysicalKeyEntry>{};
final RegExp usbMapRegExp = RegExp( final RegExp usbMapRegExp = RegExp(
...@@ -227,7 +174,6 @@ class PhysicalKeyData { ...@@ -227,7 +174,6 @@ class PhysicalKeyData {
final PhysicalKeyEntry newEntry = PhysicalKeyEntry( final PhysicalKeyEntry newEntry = PhysicalKeyEntry(
usbHidCode: usbHidCode, usbHidCode: usbHidCode,
androidScanCodes: nameToAndroidScanCodes[name] ?? <int>[], androidScanCodes: nameToAndroidScanCodes[name] ?? <int>[],
glfwKeyCodes: nameToGlfwKeyCodes[name] ?? <int>[],
linuxScanCode: linuxScanCode == 0 ? null : linuxScanCode, linuxScanCode: linuxScanCode == 0 ? null : linuxScanCode,
xKbScanCode: xKbScanCode == 0 ? null : xKbScanCode, xKbScanCode: xKbScanCode == 0 ? null : xKbScanCode,
windowsScanCode: windowsScanCode == 0 ? null : windowsScanCode, windowsScanCode: windowsScanCode == 0 ? null : windowsScanCode,
...@@ -270,14 +216,12 @@ class PhysicalKeyEntry { ...@@ -270,14 +216,12 @@ class PhysicalKeyEntry {
required this.macOSScanCode, required this.macOSScanCode,
required this.iOSScanCode, required this.iOSScanCode,
required this.chromiumCode, required this.chromiumCode,
required this.glfwKeyCodes,
}); });
/// Populates the key from a JSON map. /// Populates the key from a JSON map.
factory PhysicalKeyEntry.fromJsonMapEntry(Map<String, dynamic> map) { factory PhysicalKeyEntry.fromJsonMapEntry(Map<String, dynamic> map) {
final Map<String, dynamic> names = map['names'] as Map<String, dynamic>; final Map<String, dynamic> names = map['names'] as Map<String, dynamic>;
final Map<String, dynamic> scanCodes = map['scanCodes'] as Map<String, dynamic>; final Map<String, dynamic> scanCodes = map['scanCodes'] as Map<String, dynamic>;
final Map<String, dynamic>? keyCodes = map['keyCodes'] as Map<String, dynamic>?;
return PhysicalKeyEntry( return PhysicalKeyEntry(
name: names['name'] as String, name: names['name'] as String,
chromiumCode: names['chromium'] as String?, chromiumCode: names['chromium'] as String?,
...@@ -288,7 +232,6 @@ class PhysicalKeyEntry { ...@@ -288,7 +232,6 @@ class PhysicalKeyEntry {
windowsScanCode: scanCodes['windows'] as int?, windowsScanCode: scanCodes['windows'] as int?,
macOSScanCode: scanCodes['macos'] as int?, macOSScanCode: scanCodes['macos'] as int?,
iOSScanCode: scanCodes['ios'] as int?, iOSScanCode: scanCodes['ios'] as int?,
glfwKeyCodes: (keyCodes?['glfw'] as List<dynamic>?)?.cast<int>() ?? <int>[],
); );
} }
...@@ -309,10 +252,6 @@ class PhysicalKeyEntry { ...@@ -309,10 +252,6 @@ class PhysicalKeyEntry {
/// the Android name in the Chromium data, and substituting the Android scan /// the Android name in the Chromium data, and substituting the Android scan
/// code value. /// code value.
final List<int> androidScanCodes; final List<int> androidScanCodes;
/// The list of GLFW key codes matching this key, created by looking up the
/// Linux name in the Chromium data, and substituting the GLFW key code
/// value.
final List<int> glfwKeyCodes;
/// The name of the key, mostly derived from the DomKey name in Chromium, /// The name of the key, mostly derived from the DomKey name in Chromium,
/// but where there was no DomKey representation, derived from the Chromium /// but where there was no DomKey representation, derived from the Chromium
/// symbol name. /// symbol name.
...@@ -336,9 +275,6 @@ class PhysicalKeyEntry { ...@@ -336,9 +275,6 @@ class PhysicalKeyEntry {
'macos': macOSScanCode, 'macos': macOSScanCode,
'ios': iOSScanCode, 'ios': iOSScanCode,
}, },
'keyCodes': <String, List<int>>{
'glfw': glfwKeyCodes,
},
}); });
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment