Index: content/public/android/javatests/src/org/chromium/content/browser/input/ImeTest.java |
diff --git a/content/public/android/javatests/src/org/chromium/content/browser/input/ImeTest.java b/content/public/android/javatests/src/org/chromium/content/browser/input/ImeTest.java |
index d797416fb8b30e7d4d121340bf21afab639d5e88..1023cc4356189f7b0b9aa513a387efcc82777928 100644 |
--- a/content/public/android/javatests/src/org/chromium/content/browser/input/ImeTest.java |
+++ b/content/public/android/javatests/src/org/chromium/content/browser/input/ImeTest.java |
@@ -44,6 +44,7 @@ public class ImeTest extends ContentShellTestBase { |
"<input id=\"input_text\" type=\"text\" /><br/>" + |
"<input id=\"input_radio\" type=\"radio\" style=\"width:50px;height:50px\" />" + |
"<br/><textarea id=\"textarea\" rows=\"4\" cols=\"20\"></textarea>" + |
+ "<br/><p><span id=\"plain_text\">This is Plain Text One</span></p>" + |
"</form></body></html>"); |
private TestAdapterInputConnection mConnection; |
@@ -687,6 +688,26 @@ public class ImeTest extends ContentShellTestBase { |
})); |
} |
+ @SmallTest |
+ @Feature({"TextInput"}) |
+ public void testTextHandlesPreservedWithDpadNavigation() throws Throwable { |
+ DOMUtils.longPressNode(this, mContentViewCore, "plain_text"); |
+ assertWaitForSelectActionBarStatus(true); |
+ assertTrue(mContentViewCore.hasSelection()); |
+ |
+ ThreadUtils.runOnUiThreadBlocking(new Runnable() { |
+ @Override |
+ public void run() { |
+ final KeyEvent downKeyEvent = new KeyEvent( |
+ KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_DPAD_DOWN); |
+ mImeAdapter.dispatchKeyEvent(downKeyEvent); |
+ } |
+ }); |
+ |
+ assertWaitForSelectActionBarStatus(true); |
+ assertTrue(mContentViewCore.hasSelection()); |
+ } |
+ |
private void performGo(final AdapterInputConnection inputConnection, |
TestCallbackHelperContainer testCallbackHelperContainer) throws Throwable { |
handleBlockingCallbackAction( |