diff --git a/tests/auto/quick/qmltests/BLACKLIST b/tests/auto/quick/qmltests/BLACKLIST
index 63d31c8751080a4151eadc2ad70517c4a1b0b05e..390e919887eb7c2898fc3bf895c366c55242c5f4 100644
--- a/tests/auto/quick/qmltests/BLACKLIST
+++ b/tests/auto/quick/qmltests/BLACKLIST
@@ -16,9 +16,6 @@ windows
 [WebEngineViewSettings::test_javascriptDisabled]
 windows
 
-[WebEngineViewUnhandledKeyEventPropagation::test_keyboardModifierMapping]
-windows
-
 [WebEngineViewSource::test_viewSourceURL]
 windows
 
diff --git a/tests/auto/quick/qmltests/data/tst_unhandledKeyEventPropagation.qml b/tests/auto/quick/qmltests/data/tst_unhandledKeyEventPropagation.qml
index 87ef16aa286891632b2eccf6887da84dba1ddf4c..906dc16580ee98294d22c1432a339de8d15fa79c 100644
--- a/tests/auto/quick/qmltests/data/tst_unhandledKeyEventPropagation.qml
+++ b/tests/auto/quick/qmltests/data/tst_unhandledKeyEventPropagation.qml
@@ -68,12 +68,10 @@ Item {
             keyPress(Qt.Key_Left)
             keyRelease(Qt.Key_Left)
 
-            for (var i = 0; i < 20 && parentItem.releaseEvents.length < 3; i++)
-                wait(100)
-
-            compare(parentItem.pressEvents.length, 1)
+            tryCompare(parentItem.pressEvents, "length", 1)
             compare(parentItem.pressEvents[0], Qt.Key_Left)
-            compare(parentItem.releaseEvents.length, 3)
+
+            tryCompare(parentItem.releaseEvents, "length", 3)
             compare(parentItem.releaseEvents[0], Qt.Key_A)
             compare(parentItem.releaseEvents[1], Qt.Key_Left)
             compare(parentItem.releaseEvents[2], Qt.Key_Left)