Changed test to wait for paint complete before focus request.
Bug 5688191
WebViewTest.testSetDownloadListener was requesting focus with
View.FOCUS_DOWN immediately after loading the page. The view
size did not get updated until the paint was complete,
which can happen any time later on the WebViewCore thread.
Changed the test to call waitForIdleSync prior to requestFocus
to ensure that the FOCUS_DOWN correctly handles the faked
down arrow event.
Change-Id: I8f7047e8bec238850534e2fafa2befe4956b6cf0
diff --git a/tests/tests/webkit/src/android/webkit/cts/WebViewTest.java b/tests/tests/webkit/src/android/webkit/cts/WebViewTest.java
index 3eb49b3..401db6d 100755
--- a/tests/tests/webkit/src/android/webkit/cts/WebViewTest.java
+++ b/tests/tests/webkit/src/android/webkit/cts/WebViewTest.java
@@ -2503,6 +2503,12 @@
mWebView.loadData("<html><body><a href=\"" + url + "\">link</a></body></html>",
"text/html", null);
waitForLoadComplete();
+ }
+ });
+ // Wait for layout to complete before setting focus.
+ getInstrumentation().waitForIdleSync();
+ runTestOnUiThread(new Runnable() {
+ public void run() {
assertTrue(mWebView.requestFocus(View.FOCUS_DOWN, null));
}
});