JBR-5878 mac: osr: fix keys f14-f19, clear
diff --git a/java_tests/tests/junittests/KeyboardOSRTest.java b/java_tests/tests/junittests/KeyboardOSRTest.java
index 320a2d4..60842f5 100644
--- a/java_tests/tests/junittests/KeyboardOSRTest.java
+++ b/java_tests/tests/junittests/KeyboardOSRTest.java
@@ -126,9 +126,7 @@
}
@AfterAll
- public static void after() throws IOException {
- myFrame.closeBrowser();
- myFrame.awaitCompletion();
+ public static void after() throws IOException, InterruptedException {
File file = getScenarioFile();
if (UPDATE_REFERENCE && file != null) {
String jsonString = new GsonBuilder()
diff --git a/java_tests/tests/junittests/data/keyboard_scenario_mac.json b/java_tests/tests/junittests/data/keyboard_scenario_mac.json
index d0fd049..1737611 100644
--- a/java_tests/tests/junittests/data/keyboard_scenario_mac.json
+++ b/java_tests/tests/junittests/data/keyboard_scenario_mac.json
@@ -740,8 +740,8 @@
"eventsJSExpected": [
{
"type": "keydown",
- "key": "",
- "code": "KeyA",
+ "key": "F14",
+ "code": "F14",
"location": "0",
"altKey": "false",
"ctrlKey": "false",
@@ -750,8 +750,8 @@
},
{
"type": "keyup",
- "key": "",
- "code": "KeyA",
+ "key": "F14",
+ "code": "F14",
"location": "0",
"altKey": "false",
"ctrlKey": "false",
@@ -790,8 +790,8 @@
"eventsJSExpected": [
{
"type": "keydown",
- "key": "",
- "code": "KeyA",
+ "key": "F15",
+ "code": "F15",
"location": "0",
"altKey": "false",
"ctrlKey": "false",
@@ -800,8 +800,8 @@
},
{
"type": "keyup",
- "key": "",
- "code": "KeyA",
+ "key": "F15",
+ "code": "F15",
"location": "0",
"altKey": "false",
"ctrlKey": "false",
@@ -840,8 +840,8 @@
"eventsJSExpected": [
{
"type": "keydown",
- "key": "",
- "code": "KeyA",
+ "key": "F16",
+ "code": "F16",
"location": "0",
"altKey": "false",
"ctrlKey": "false",
@@ -850,8 +850,8 @@
},
{
"type": "keyup",
- "key": "",
- "code": "KeyA",
+ "key": "F16",
+ "code": "F16",
"location": "0",
"altKey": "false",
"ctrlKey": "false",
@@ -890,8 +890,8 @@
"eventsJSExpected": [
{
"type": "keydown",
- "key": "",
- "code": "KeyA",
+ "key": "F17",
+ "code": "F17",
"location": "0",
"altKey": "false",
"ctrlKey": "false",
@@ -900,8 +900,8 @@
},
{
"type": "keyup",
- "key": "",
- "code": "KeyA",
+ "key": "F17",
+ "code": "F17",
"location": "0",
"altKey": "false",
"ctrlKey": "false",
@@ -940,8 +940,8 @@
"eventsJSExpected": [
{
"type": "keydown",
- "key": "",
- "code": "KeyA",
+ "key": "F18",
+ "code": "F18",
"location": "0",
"altKey": "false",
"ctrlKey": "false",
@@ -950,8 +950,8 @@
},
{
"type": "keyup",
- "key": "",
- "code": "KeyA",
+ "key": "F18",
+ "code": "F18",
"location": "0",
"altKey": "false",
"ctrlKey": "false",
@@ -990,8 +990,8 @@
"eventsJSExpected": [
{
"type": "keydown",
- "key": "",
- "code": "KeyA",
+ "key": "F19",
+ "code": "F19",
"location": "0",
"altKey": "false",
"ctrlKey": "false",
@@ -1000,8 +1000,8 @@
},
{
"type": "keyup",
- "key": "",
- "code": "KeyA",
+ "key": "F19",
+ "code": "F19",
"location": "0",
"altKey": "false",
"ctrlKey": "false",
@@ -5643,8 +5643,8 @@
"eventsJSExpected": [
{
"type": "keydown",
- "key": "",
- "code": "KeyA",
+ "key": "Clear",
+ "code": "NumLock",
"location": "0",
"altKey": "false",
"ctrlKey": "false",
@@ -5653,8 +5653,8 @@
},
{
"type": "keyup",
- "key": "",
- "code": "KeyA",
+ "key": "Clear",
+ "code": "NumLock",
"location": "0",
"altKey": "false",
"ctrlKey": "false",
@@ -10077,8 +10077,8 @@
},
{
"type": "keydown",
- "key": "",
- "code": "KeyA",
+ "key": "F14",
+ "code": "F14",
"location": "0",
"altKey": "false",
"ctrlKey": "false",
@@ -10087,8 +10087,8 @@
},
{
"type": "keyup",
- "key": "",
- "code": "KeyA",
+ "key": "F14",
+ "code": "F14",
"location": "0",
"altKey": "false",
"ctrlKey": "false",
@@ -10169,8 +10169,8 @@
},
{
"type": "keydown",
- "key": "",
- "code": "KeyA",
+ "key": "F15",
+ "code": "F15",
"location": "0",
"altKey": "false",
"ctrlKey": "false",
@@ -10179,8 +10179,8 @@
},
{
"type": "keyup",
- "key": "",
- "code": "KeyA",
+ "key": "F15",
+ "code": "F15",
"location": "0",
"altKey": "false",
"ctrlKey": "false",
@@ -10261,8 +10261,8 @@
},
{
"type": "keydown",
- "key": "",
- "code": "KeyA",
+ "key": "F16",
+ "code": "F16",
"location": "0",
"altKey": "false",
"ctrlKey": "false",
@@ -10271,8 +10271,8 @@
},
{
"type": "keyup",
- "key": "",
- "code": "KeyA",
+ "key": "F16",
+ "code": "F16",
"location": "0",
"altKey": "false",
"ctrlKey": "false",
@@ -10353,8 +10353,8 @@
},
{
"type": "keydown",
- "key": "",
- "code": "KeyA",
+ "key": "F17",
+ "code": "F17",
"location": "0",
"altKey": "false",
"ctrlKey": "false",
@@ -10363,8 +10363,8 @@
},
{
"type": "keyup",
- "key": "",
- "code": "KeyA",
+ "key": "F17",
+ "code": "F17",
"location": "0",
"altKey": "false",
"ctrlKey": "false",
@@ -10445,8 +10445,8 @@
},
{
"type": "keydown",
- "key": "",
- "code": "KeyA",
+ "key": "F18",
+ "code": "F18",
"location": "0",
"altKey": "false",
"ctrlKey": "false",
@@ -10455,8 +10455,8 @@
},
{
"type": "keyup",
- "key": "",
- "code": "KeyA",
+ "key": "F18",
+ "code": "F18",
"location": "0",
"altKey": "false",
"ctrlKey": "false",
@@ -10537,8 +10537,8 @@
},
{
"type": "keydown",
- "key": "",
- "code": "KeyA",
+ "key": "F19",
+ "code": "F19",
"location": "0",
"altKey": "false",
"ctrlKey": "false",
@@ -10547,8 +10547,8 @@
},
{
"type": "keyup",
- "key": "",
- "code": "KeyA",
+ "key": "F19",
+ "code": "F19",
"location": "0",
"altKey": "false",
"ctrlKey": "false",
@@ -17681,8 +17681,8 @@
},
{
"type": "keydown",
- "key": "",
- "code": "KeyA",
+ "key": "F14",
+ "code": "F14",
"location": "0",
"altKey": "false",
"ctrlKey": "true",
@@ -17691,8 +17691,8 @@
},
{
"type": "keyup",
- "key": "",
- "code": "KeyA",
+ "key": "F14",
+ "code": "F14",
"location": "0",
"altKey": "false",
"ctrlKey": "true",
@@ -17773,8 +17773,8 @@
},
{
"type": "keydown",
- "key": "",
- "code": "KeyA",
+ "key": "F15",
+ "code": "F15",
"location": "0",
"altKey": "false",
"ctrlKey": "true",
@@ -17783,8 +17783,8 @@
},
{
"type": "keyup",
- "key": "",
- "code": "KeyA",
+ "key": "F15",
+ "code": "F15",
"location": "0",
"altKey": "false",
"ctrlKey": "true",
@@ -17865,8 +17865,8 @@
},
{
"type": "keydown",
- "key": "",
- "code": "KeyA",
+ "key": "F16",
+ "code": "F16",
"location": "0",
"altKey": "false",
"ctrlKey": "true",
@@ -17875,8 +17875,8 @@
},
{
"type": "keyup",
- "key": "",
- "code": "KeyA",
+ "key": "F16",
+ "code": "F16",
"location": "0",
"altKey": "false",
"ctrlKey": "true",
@@ -17957,8 +17957,8 @@
},
{
"type": "keydown",
- "key": "",
- "code": "KeyA",
+ "key": "F17",
+ "code": "F17",
"location": "0",
"altKey": "false",
"ctrlKey": "true",
@@ -17967,8 +17967,8 @@
},
{
"type": "keyup",
- "key": "",
- "code": "KeyA",
+ "key": "F17",
+ "code": "F17",
"location": "0",
"altKey": "false",
"ctrlKey": "true",
@@ -18049,8 +18049,8 @@
},
{
"type": "keydown",
- "key": "",
- "code": "KeyA",
+ "key": "F18",
+ "code": "F18",
"location": "0",
"altKey": "false",
"ctrlKey": "true",
@@ -18059,8 +18059,8 @@
},
{
"type": "keyup",
- "key": "",
- "code": "KeyA",
+ "key": "F18",
+ "code": "F18",
"location": "0",
"altKey": "false",
"ctrlKey": "true",
@@ -18141,8 +18141,8 @@
},
{
"type": "keydown",
- "key": "",
- "code": "KeyA",
+ "key": "F19",
+ "code": "F19",
"location": "0",
"altKey": "false",
"ctrlKey": "true",
@@ -18151,8 +18151,8 @@
},
{
"type": "keyup",
- "key": "",
- "code": "KeyA",
+ "key": "F19",
+ "code": "F19",
"location": "0",
"altKey": "false",
"ctrlKey": "true",
@@ -25019,8 +25019,8 @@
},
{
"type": "keydown",
- "key": "",
- "code": "KeyA",
+ "key": "Clear",
+ "code": "NumLock",
"location": "0",
"altKey": "false",
"ctrlKey": "true",
@@ -25029,8 +25029,8 @@
},
{
"type": "keyup",
- "key": "",
- "code": "KeyA",
+ "key": "Clear",
+ "code": "NumLock",
"location": "0",
"altKey": "false",
"ctrlKey": "true",
@@ -28331,8 +28331,8 @@
},
{
"type": "keydown",
- "key": "",
- "code": "KeyA",
+ "key": "F14",
+ "code": "F14",
"location": "0",
"altKey": "true",
"ctrlKey": "false",
@@ -28341,8 +28341,8 @@
},
{
"type": "keyup",
- "key": "",
- "code": "KeyA",
+ "key": "F14",
+ "code": "F14",
"location": "0",
"altKey": "true",
"ctrlKey": "false",
@@ -28423,8 +28423,8 @@
},
{
"type": "keydown",
- "key": "",
- "code": "KeyA",
+ "key": "F15",
+ "code": "F15",
"location": "0",
"altKey": "true",
"ctrlKey": "false",
@@ -28433,8 +28433,8 @@
},
{
"type": "keyup",
- "key": "",
- "code": "KeyA",
+ "key": "F15",
+ "code": "F15",
"location": "0",
"altKey": "true",
"ctrlKey": "false",
@@ -28515,8 +28515,8 @@
},
{
"type": "keydown",
- "key": "",
- "code": "KeyA",
+ "key": "F16",
+ "code": "F16",
"location": "0",
"altKey": "true",
"ctrlKey": "false",
@@ -28525,8 +28525,8 @@
},
{
"type": "keyup",
- "key": "",
- "code": "KeyA",
+ "key": "F16",
+ "code": "F16",
"location": "0",
"altKey": "true",
"ctrlKey": "false",
@@ -28607,8 +28607,8 @@
},
{
"type": "keydown",
- "key": "",
- "code": "KeyA",
+ "key": "F17",
+ "code": "F17",
"location": "0",
"altKey": "true",
"ctrlKey": "false",
@@ -28617,8 +28617,8 @@
},
{
"type": "keyup",
- "key": "",
- "code": "KeyA",
+ "key": "F17",
+ "code": "F17",
"location": "0",
"altKey": "true",
"ctrlKey": "false",
@@ -28699,8 +28699,8 @@
},
{
"type": "keydown",
- "key": "",
- "code": "KeyA",
+ "key": "F18",
+ "code": "F18",
"location": "0",
"altKey": "true",
"ctrlKey": "false",
@@ -28709,8 +28709,8 @@
},
{
"type": "keyup",
- "key": "",
- "code": "KeyA",
+ "key": "F18",
+ "code": "F18",
"location": "0",
"altKey": "true",
"ctrlKey": "false",
@@ -28791,8 +28791,8 @@
},
{
"type": "keydown",
- "key": "",
- "code": "KeyA",
+ "key": "F19",
+ "code": "F19",
"location": "0",
"altKey": "true",
"ctrlKey": "false",
@@ -28801,8 +28801,8 @@
},
{
"type": "keyup",
- "key": "",
- "code": "KeyA",
+ "key": "F19",
+ "code": "F19",
"location": "0",
"altKey": "true",
"ctrlKey": "false",
@@ -35974,8 +35974,8 @@
},
{
"type": "keydown",
- "key": "",
- "code": "KeyA",
+ "key": "Clear",
+ "code": "NumLock",
"location": "0",
"altKey": "true",
"ctrlKey": "false",
@@ -35984,8 +35984,8 @@
},
{
"type": "keyup",
- "key": "",
- "code": "KeyA",
+ "key": "Clear",
+ "code": "NumLock",
"location": "0",
"altKey": "true",
"ctrlKey": "false",
@@ -39275,8 +39275,8 @@
},
{
"type": "keydown",
- "key": "",
- "code": "KeyA",
+ "key": "F14",
+ "code": "F14",
"location": "0",
"altKey": "false",
"ctrlKey": "false",
@@ -39285,8 +39285,8 @@
},
{
"type": "keyup",
- "key": "",
- "code": "KeyA",
+ "key": "F14",
+ "code": "F14",
"location": "0",
"altKey": "false",
"ctrlKey": "false",
@@ -39367,8 +39367,8 @@
},
{
"type": "keydown",
- "key": "",
- "code": "KeyA",
+ "key": "F15",
+ "code": "F15",
"location": "0",
"altKey": "false",
"ctrlKey": "false",
@@ -39377,8 +39377,8 @@
},
{
"type": "keyup",
- "key": "",
- "code": "KeyA",
+ "key": "F15",
+ "code": "F15",
"location": "0",
"altKey": "false",
"ctrlKey": "false",
@@ -39459,8 +39459,8 @@
},
{
"type": "keydown",
- "key": "",
- "code": "KeyA",
+ "key": "F16",
+ "code": "F16",
"location": "0",
"altKey": "false",
"ctrlKey": "false",
@@ -39469,8 +39469,8 @@
},
{
"type": "keyup",
- "key": "",
- "code": "KeyA",
+ "key": "F16",
+ "code": "F16",
"location": "0",
"altKey": "false",
"ctrlKey": "false",
@@ -39551,8 +39551,8 @@
},
{
"type": "keydown",
- "key": "",
- "code": "KeyA",
+ "key": "F17",
+ "code": "F17",
"location": "0",
"altKey": "false",
"ctrlKey": "false",
@@ -39561,8 +39561,8 @@
},
{
"type": "keyup",
- "key": "",
- "code": "KeyA",
+ "key": "F17",
+ "code": "F17",
"location": "0",
"altKey": "false",
"ctrlKey": "false",
@@ -39643,8 +39643,8 @@
},
{
"type": "keydown",
- "key": "",
- "code": "KeyA",
+ "key": "F18",
+ "code": "F18",
"location": "0",
"altKey": "false",
"ctrlKey": "false",
@@ -39653,8 +39653,8 @@
},
{
"type": "keyup",
- "key": "",
- "code": "KeyA",
+ "key": "F18",
+ "code": "F18",
"location": "0",
"altKey": "false",
"ctrlKey": "false",
@@ -39735,8 +39735,8 @@
},
{
"type": "keydown",
- "key": "",
- "code": "KeyA",
+ "key": "F19",
+ "code": "F19",
"location": "0",
"altKey": "false",
"ctrlKey": "false",
@@ -39745,8 +39745,8 @@
},
{
"type": "keyup",
- "key": "",
- "code": "KeyA",
+ "key": "F19",
+ "code": "F19",
"location": "0",
"altKey": "false",
"ctrlKey": "false",
@@ -45715,8 +45715,8 @@
},
{
"type": "keydown",
- "key": "",
- "code": "KeyA",
+ "key": "Clear",
+ "code": "NumLock",
"location": "0",
"altKey": "false",
"ctrlKey": "false",
@@ -45725,8 +45725,8 @@
},
{
"type": "keyup",
- "key": "",
- "code": "KeyA",
+ "key": "Clear",
+ "code": "NumLock",
"location": "0",
"altKey": "false",
"ctrlKey": "false",
@@ -56142,56 +56142,6 @@
]
},
{
- "name": "^",
- "comments": "de - disabled",
- "eventsJava": [
- {
- "id": 401,
- "modifiers": 0,
- "keyCode": 514,
- "keyChar": "",
- "keyLocation": 1,
- "rawCode": 0,
- "primaryLevelUnicode": 0,
- "scancode": 0,
- "extendedKeyCode": 514
- },
- {
- "id": 402,
- "modifiers": 0,
- "keyCode": 514,
- "keyChar": "^",
- "keyLocation": 1,
- "rawCode": 0,
- "primaryLevelUnicode": 0,
- "scancode": 0,
- "extendedKeyCode": 514
- }
- ],
- "eventsJSExpected": [
- {
- "type": "keydown",
- "key": "",
- "code": "KeyA",
- "location": "0",
- "altKey": "false",
- "ctrlKey": "false",
- "metaKay": "false",
- "shiftKey": "false"
- },
- {
- "type": "keyup",
- "key": "^",
- "code": "Digit6",
- "location": "0",
- "altKey": "false",
- "ctrlKey": "false",
- "metaKay": "false",
- "shiftKey": "false"
- }
- ]
- },
- {
"name": "1",
"comments": "de",
"eventsJava": [
diff --git a/native/CefBrowser_N.cpp b/native/CefBrowser_N.cpp
index 696cef9..3b92ee0 100644
--- a/native/CefBrowser_N.cpp
+++ b/native/CefBrowser_N.cpp
@@ -1697,6 +1697,7 @@
JNI_STATIC_DEFINE_INT(env, cls, VK_BACK_SPACE);
JNI_STATIC_DEFINE_INT(env, cls, VK_DELETE);
+ JNI_STATIC_DEFINE_INT(env, cls, VK_CLEAR);
JNI_STATIC_DEFINE_INT(env, cls, VK_DOWN);
JNI_STATIC_DEFINE_INT(env, cls, VK_ENTER);
JNI_STATIC_DEFINE_INT(env, cls, VK_ESCAPE);
@@ -1722,6 +1723,12 @@
JNI_STATIC_DEFINE_INT(env, cls, VK_F11);
JNI_STATIC_DEFINE_INT(env, cls, VK_F12);
JNI_STATIC_DEFINE_INT(env, cls, VK_F13);
+ JNI_STATIC_DEFINE_INT(env, cls, VK_F14);
+ JNI_STATIC_DEFINE_INT(env, cls, VK_F15);
+ JNI_STATIC_DEFINE_INT(env, cls, VK_F16);
+ JNI_STATIC_DEFINE_INT(env, cls, VK_F17);
+ JNI_STATIC_DEFINE_INT(env, cls, VK_F18);
+ JNI_STATIC_DEFINE_INT(env, cls, VK_F19);
JNI_STATIC_DEFINE_INT(env, cls, VK_META);
JNI_STATIC_DEFINE_INT(env, cls, VK_SHIFT);
@@ -1764,6 +1771,9 @@
} else if (key_code == JNI_STATIC(VK_DELETE)) {
cef_event.native_key_code = kVK_ForwardDelete;
cef_event.unmodified_character = kDeleteCharCode;
+ } else if (key_code == JNI_STATIC(VK_CLEAR)) {
+ cef_event.native_key_code = kVK_ANSI_KeypadClear;
+ cef_event.unmodified_character = /* NSClearLineFunctionKey */ 0xF739;
} else if (key_code == JNI_STATIC(VK_DOWN)) {
cef_event.native_key_code = kVK_DownArrow;
cef_event.unmodified_character = /* NSDownArrowFunctionKey */ 0xF701;
@@ -1836,6 +1846,24 @@
} else if (key_code == JNI_STATIC(VK_F13)) {
cef_event.native_key_code = kVK_F13;
cef_event.unmodified_character = 63248;
+ } else if (key_code == JNI_STATIC(VK_F14)) {
+ cef_event.native_key_code = kVK_F14;
+ cef_event.unmodified_character = 63249;
+ } else if (key_code == JNI_STATIC(VK_F15)) {
+ cef_event.native_key_code = kVK_F15;
+ cef_event.unmodified_character = 63250;
+ } else if (key_code == JNI_STATIC(VK_F16)) {
+ cef_event.native_key_code = kVK_F16;
+ cef_event.unmodified_character = 63251;
+ } else if (key_code == JNI_STATIC(VK_F17)) {
+ cef_event.native_key_code = kVK_F17;
+ cef_event.unmodified_character = 63252;
+ } else if (key_code == JNI_STATIC(VK_F18)) {
+ cef_event.native_key_code = kVK_F18;
+ cef_event.unmodified_character = 63253;
+ } else if (key_code == JNI_STATIC(VK_F19)) {
+ cef_event.native_key_code = kVK_F19;
+ cef_event.unmodified_character = 63254;
} else if (key_code == JNI_STATIC(VK_META)) {
cef_event.native_key_code = key_location == JNI_STATIC(KEY_LOCATION_RIGHT)
? kVK_RightCommand