Index: third_party/WebKit/Source/web/tests/WebViewTest.cpp |
diff --git a/third_party/WebKit/Source/web/tests/WebViewTest.cpp b/third_party/WebKit/Source/web/tests/WebViewTest.cpp |
index 0a0eb2e306fb347aa18619e1c36a2f2554be262d..257c108f10122690e018255c7be60ce097494097 100644 |
--- a/third_party/WebKit/Source/web/tests/WebViewTest.cpp |
+++ b/third_party/WebKit/Source/web/tests/WebViewTest.cpp |
@@ -753,18 +753,15 @@ |
URLTestHelpers::registerMockedURLFromBaseURL( |
WebString::fromUTF8(m_baseURL.c_str()), |
WebString::fromUTF8(htmlFile.c_str())); |
- WebViewImpl* webView = |
- m_webViewHelper.initializeAndLoad(m_baseURL + htmlFile); |
- WebInputMethodControllerImpl* controller = |
- webView->mainFrameImpl()->inputMethodController(); |
- EXPECT_EQ(WebTextInputTypeNone, controller->textInputType()); |
- EXPECT_EQ(WebTextInputTypeNone, controller->textInputInfo().type); |
+ WebView* webView = m_webViewHelper.initializeAndLoad(m_baseURL + htmlFile); |
+ EXPECT_EQ(WebTextInputTypeNone, webView->textInputType()); |
+ EXPECT_EQ(WebTextInputTypeNone, webView->textInputInfo().type); |
webView->setInitialFocus(false); |
- EXPECT_EQ(expectedType, controller->textInputType()); |
- EXPECT_EQ(expectedType, controller->textInputInfo().type); |
+ EXPECT_EQ(expectedType, webView->textInputType()); |
+ EXPECT_EQ(expectedType, webView->textInputInfo().type); |
webView->clearFocusedElement(); |
- EXPECT_EQ(WebTextInputTypeNone, controller->textInputType()); |
- EXPECT_EQ(WebTextInputTypeNone, controller->textInputInfo().type); |
+ EXPECT_EQ(WebTextInputTypeNone, webView->textInputType()); |
+ EXPECT_EQ(WebTextInputTypeNone, webView->textInputInfo().type); |
} |
TEST_P(WebViewTest, TextInputType) { |
@@ -806,10 +803,7 @@ |
->setIdAttribute("foo"); |
// This should not DCHECK. |
- EXPECT_EQ(WebTextInputTypeText, webViewImpl->mainFrameImpl() |
- ->inputMethodController() |
- ->textInputInfo() |
- .type); |
+ EXPECT_EQ(WebTextInputTypeText, webViewImpl->textInputInfo().type); |
} |
void WebViewTest::testInputMode(WebTextInputMode expectedInputMode, |
@@ -817,13 +811,9 @@ |
URLTestHelpers::registerMockedURLFromBaseURL( |
WebString::fromUTF8(m_baseURL.c_str()), |
WebString::fromUTF8(htmlFile.c_str())); |
- WebViewImpl* webViewImpl = |
- m_webViewHelper.initializeAndLoad(m_baseURL + htmlFile); |
- webViewImpl->setInitialFocus(false); |
- EXPECT_EQ(expectedInputMode, webViewImpl->mainFrameImpl() |
- ->inputMethodController() |
- ->textInputInfo() |
- .inputMode); |
+ WebView* webView = m_webViewHelper.initializeAndLoad(m_baseURL + htmlFile); |
+ webView->setInitialFocus(false); |
+ EXPECT_EQ(expectedInputMode, webView->textInputInfo().inputMode); |
} |
TEST_P(WebViewTest, InputMode) { |
@@ -868,10 +858,9 @@ |
URLTestHelpers::registerMockedURLLoad(toKURL(url), "div_with_image.html"); |
URLTestHelpers::registerMockedURLLoad(toKURL("http://www.test.com/foo.png"), |
"white-1x1.png"); |
- WebViewImpl* webViewImpl = m_webViewHelper.initializeAndLoad(url); |
- webViewImpl->setInitialFocus(false); |
- WebTextInputInfo info = |
- webViewImpl->mainFrameImpl()->inputMethodController()->textInputInfo(); |
+ WebView* webView = m_webViewHelper.initializeAndLoad(url); |
+ webView->setInitialFocus(false); |
+ WebTextInputInfo info = webView->textInputInfo(); |
EXPECT_EQ("foo\xef\xbf\xbc", info.value.utf8()); |
} |
@@ -884,11 +873,9 @@ |
m_baseURL + "input_field_populated.html"); |
webView->setInitialFocus(false); |
WebLocalFrameImpl* frame = webView->mainFrameImpl(); |
- WebInputMethodControllerImpl* activeInputMethodController = |
- frame->inputMethodController(); |
frame->setEditableSelectionOffsets(5, 13); |
EXPECT_EQ("56789abc", frame->selectionAsText()); |
- WebTextInputInfo info = activeInputMethodController->textInputInfo(); |
+ WebTextInputInfo info = webView->textInputInfo(); |
EXPECT_EQ("0123456789abcdefghijklmnopqrstuvwxyz", info.value); |
EXPECT_EQ(5, info.selectionStart); |
EXPECT_EQ(13, info.selectionEnd); |
@@ -902,10 +889,9 @@ |
m_baseURL + "content_editable_populated.html"); |
webView->setInitialFocus(false); |
frame = webView->mainFrameImpl(); |
- activeInputMethodController = frame->inputMethodController(); |
frame->setEditableSelectionOffsets(8, 19); |
EXPECT_EQ("89abcdefghi", frame->selectionAsText()); |
- info = activeInputMethodController->textInputInfo(); |
+ info = webView->textInputInfo(); |
EXPECT_EQ("0123456789abcdefghijklmnopqrstuvwxyz", info.value); |
EXPECT_EQ(8, info.selectionStart); |
EXPECT_EQ(19, info.selectionEnd); |
@@ -964,7 +950,7 @@ |
activeInputMethodController->setComposition( |
WebString::fromUTF8(compositionText.c_str()), emptyUnderlines, 3, 3); |
- WebTextInputInfo info = activeInputMethodController->textInputInfo(); |
+ WebTextInputInfo info = webView->textInputInfo(); |
EXPECT_EQ("hello", std::string(info.value.utf8().data())); |
EXPECT_EQ(3, info.selectionStart); |
EXPECT_EQ(3, info.selectionEnd); |
@@ -973,7 +959,7 @@ |
activeInputMethodController->finishComposingText( |
WebInputMethodController::KeepSelection); |
- info = activeInputMethodController->textInputInfo(); |
+ info = webView->textInputInfo(); |
EXPECT_EQ(3, info.selectionStart); |
EXPECT_EQ(3, info.selectionEnd); |
EXPECT_EQ(-1, info.compositionStart); |
@@ -981,7 +967,7 @@ |
activeInputMethodController->setComposition( |
WebString::fromUTF8(compositionText.c_str()), emptyUnderlines, 3, 3); |
- info = activeInputMethodController->textInputInfo(); |
+ info = webView->textInputInfo(); |
EXPECT_EQ("helhellolo", std::string(info.value.utf8().data())); |
EXPECT_EQ(6, info.selectionStart); |
EXPECT_EQ(6, info.selectionEnd); |
@@ -990,7 +976,7 @@ |
activeInputMethodController->finishComposingText( |
WebInputMethodController::DoNotKeepSelection); |
- info = activeInputMethodController->textInputInfo(); |
+ info = webView->textInputInfo(); |
EXPECT_EQ(8, info.selectionStart); |
EXPECT_EQ(8, info.selectionEnd); |
EXPECT_EQ(-1, info.compositionStart); |
@@ -1011,7 +997,7 @@ |
activeInputMethodController->commitText("hello", 0); |
activeInputMethodController->commitText("world", -5); |
- WebTextInputInfo info = activeInputMethodController->textInputInfo(); |
+ WebTextInputInfo info = webView->textInputInfo(); |
EXPECT_EQ("helloworld", std::string(info.value.utf8().data())); |
EXPECT_EQ(5, info.selectionStart); |
EXPECT_EQ(5, info.selectionEnd); |
@@ -1025,7 +1011,7 @@ |
// Caret is on the left of composing text. |
activeInputMethodController->setComposition( |
WebString::fromUTF8(compositionText.c_str()), emptyUnderlines, 0, 0); |
- info = activeInputMethodController->textInputInfo(); |
+ info = webView->textInputInfo(); |
EXPECT_EQ("helloABCworld", std::string(info.value.utf8().data())); |
EXPECT_EQ(5, info.selectionStart); |
EXPECT_EQ(5, info.selectionEnd); |
@@ -1035,7 +1021,7 @@ |
// Caret is on the right of composing text. |
activeInputMethodController->setComposition( |
WebString::fromUTF8(compositionText.c_str()), emptyUnderlines, 3, 3); |
- info = activeInputMethodController->textInputInfo(); |
+ info = webView->textInputInfo(); |
EXPECT_EQ("helloABCworld", std::string(info.value.utf8().data())); |
EXPECT_EQ(8, info.selectionStart); |
EXPECT_EQ(8, info.selectionEnd); |
@@ -1045,7 +1031,7 @@ |
// Caret is between composing text and left boundary. |
activeInputMethodController->setComposition( |
WebString::fromUTF8(compositionText.c_str()), emptyUnderlines, -2, -2); |
- info = activeInputMethodController->textInputInfo(); |
+ info = webView->textInputInfo(); |
EXPECT_EQ("helloABCworld", std::string(info.value.utf8().data())); |
EXPECT_EQ(3, info.selectionStart); |
EXPECT_EQ(3, info.selectionEnd); |
@@ -1055,7 +1041,7 @@ |
// Caret is between composing text and right boundary. |
activeInputMethodController->setComposition( |
WebString::fromUTF8(compositionText.c_str()), emptyUnderlines, 5, 5); |
- info = activeInputMethodController->textInputInfo(); |
+ info = webView->textInputInfo(); |
EXPECT_EQ("helloABCworld", std::string(info.value.utf8().data())); |
EXPECT_EQ(10, info.selectionStart); |
EXPECT_EQ(10, info.selectionEnd); |
@@ -1065,7 +1051,7 @@ |
// Caret is on the left boundary. |
activeInputMethodController->setComposition( |
WebString::fromUTF8(compositionText.c_str()), emptyUnderlines, -5, -5); |
- info = activeInputMethodController->textInputInfo(); |
+ info = webView->textInputInfo(); |
EXPECT_EQ("helloABCworld", std::string(info.value.utf8().data())); |
EXPECT_EQ(0, info.selectionStart); |
EXPECT_EQ(0, info.selectionEnd); |
@@ -1075,7 +1061,7 @@ |
// Caret is on the right boundary. |
activeInputMethodController->setComposition( |
WebString::fromUTF8(compositionText.c_str()), emptyUnderlines, 8, 8); |
- info = activeInputMethodController->textInputInfo(); |
+ info = webView->textInputInfo(); |
EXPECT_EQ("helloABCworld", std::string(info.value.utf8().data())); |
EXPECT_EQ(13, info.selectionStart); |
EXPECT_EQ(13, info.selectionEnd); |
@@ -1086,7 +1072,7 @@ |
activeInputMethodController->setComposition( |
WebString::fromUTF8(compositionText.c_str()), emptyUnderlines, -100, |
-100); |
- info = activeInputMethodController->textInputInfo(); |
+ info = webView->textInputInfo(); |
EXPECT_EQ("helloABCworld", std::string(info.value.utf8().data())); |
EXPECT_EQ(0, info.selectionStart); |
EXPECT_EQ(0, info.selectionEnd); |
@@ -1096,7 +1082,7 @@ |
// Caret exceeds the right boundary. |
activeInputMethodController->setComposition( |
WebString::fromUTF8(compositionText.c_str()), emptyUnderlines, 100, 100); |
- info = activeInputMethodController->textInputInfo(); |
+ info = webView->textInputInfo(); |
EXPECT_EQ("helloABCworld", std::string(info.value.utf8().data())); |
EXPECT_EQ(13, info.selectionStart); |
EXPECT_EQ(13, info.selectionEnd); |
@@ -1117,7 +1103,7 @@ |
->getActiveWebInputMethodController(); |
activeInputMethodController->commitText("hello", 0); |
- WebTextInputInfo info = activeInputMethodController->textInputInfo(); |
+ WebTextInputInfo info = webView->textInputInfo(); |
EXPECT_EQ("hello", std::string(info.value.utf8().data())); |
EXPECT_EQ(5, info.selectionStart); |
EXPECT_EQ(5, info.selectionEnd); |
@@ -1128,7 +1114,7 @@ |
activeInputMethodController->setComposition(WebString::fromUTF8(""), |
emptyUnderlines, 0, 0); |
- info = activeInputMethodController->textInputInfo(); |
+ info = webView->textInputInfo(); |
EXPECT_EQ("hello", std::string(info.value.utf8().data())); |
EXPECT_EQ(5, info.selectionStart); |
EXPECT_EQ(5, info.selectionEnd); |
@@ -1137,7 +1123,7 @@ |
activeInputMethodController->setComposition(WebString::fromUTF8(""), |
emptyUnderlines, -2, -2); |
- info = activeInputMethodController->textInputInfo(); |
+ info = webView->textInputInfo(); |
EXPECT_EQ("hello", std::string(info.value.utf8().data())); |
EXPECT_EQ(3, info.selectionStart); |
EXPECT_EQ(3, info.selectionEnd); |
@@ -1159,7 +1145,7 @@ |
// Caret is on the left of composing text. |
activeInputMethodController->commitText("ab", -2); |
- WebTextInputInfo info = activeInputMethodController->textInputInfo(); |
+ WebTextInputInfo info = webView->textInputInfo(); |
EXPECT_EQ("ab", std::string(info.value.utf8().data())); |
EXPECT_EQ(0, info.selectionStart); |
EXPECT_EQ(0, info.selectionEnd); |
@@ -1168,7 +1154,7 @@ |
// Caret is on the right of composing text. |
activeInputMethodController->commitText("c", 1); |
- info = activeInputMethodController->textInputInfo(); |
+ info = webView->textInputInfo(); |
EXPECT_EQ("cab", std::string(info.value.utf8().data())); |
EXPECT_EQ(2, info.selectionStart); |
EXPECT_EQ(2, info.selectionEnd); |
@@ -1177,7 +1163,7 @@ |
// Caret is on the left boundary. |
activeInputMethodController->commitText("def", -5); |
- info = activeInputMethodController->textInputInfo(); |
+ info = webView->textInputInfo(); |
EXPECT_EQ("cadefb", std::string(info.value.utf8().data())); |
EXPECT_EQ(0, info.selectionStart); |
EXPECT_EQ(0, info.selectionEnd); |
@@ -1186,7 +1172,7 @@ |
// Caret is on the right boundary. |
activeInputMethodController->commitText("g", 6); |
- info = activeInputMethodController->textInputInfo(); |
+ info = webView->textInputInfo(); |
EXPECT_EQ("gcadefb", std::string(info.value.utf8().data())); |
EXPECT_EQ(7, info.selectionStart); |
EXPECT_EQ(7, info.selectionEnd); |
@@ -1195,7 +1181,7 @@ |
// Caret exceeds the left boundary. |
activeInputMethodController->commitText("hi", -100); |
- info = activeInputMethodController->textInputInfo(); |
+ info = webView->textInputInfo(); |
EXPECT_EQ("gcadefbhi", std::string(info.value.utf8().data())); |
EXPECT_EQ(0, info.selectionStart); |
EXPECT_EQ(0, info.selectionEnd); |
@@ -1204,7 +1190,7 @@ |
// Caret exceeds the right boundary. |
activeInputMethodController->commitText("jk", 100); |
- info = activeInputMethodController->textInputInfo(); |
+ info = webView->textInputInfo(); |
EXPECT_EQ("jkgcadefbhi", std::string(info.value.utf8().data())); |
EXPECT_EQ(11, info.selectionStart); |
EXPECT_EQ(11, info.selectionEnd); |
@@ -1227,7 +1213,7 @@ |
WebVector<WebCompositionUnderline> emptyUnderlines; |
activeInputMethodController->setComposition(WebString::fromUTF8("abc"), |
emptyUnderlines, 0, 0); |
- WebTextInputInfo info = activeInputMethodController->textInputInfo(); |
+ WebTextInputInfo info = webView->textInputInfo(); |
EXPECT_EQ("abc", std::string(info.value.utf8().data())); |
EXPECT_EQ(0, info.selectionStart); |
EXPECT_EQ(0, info.selectionEnd); |
@@ -1237,7 +1223,7 @@ |
// Deletes ongoing composition, inserts the specified text and moves the |
// caret. |
activeInputMethodController->commitText("hello", -2); |
- info = activeInputMethodController->textInputInfo(); |
+ info = webView->textInputInfo(); |
EXPECT_EQ("hello", std::string(info.value.utf8().data())); |
EXPECT_EQ(3, info.selectionStart); |
EXPECT_EQ(3, info.selectionEnd); |
@@ -1246,7 +1232,7 @@ |
activeInputMethodController->setComposition(WebString::fromUTF8("abc"), |
emptyUnderlines, 0, 0); |
- info = activeInputMethodController->textInputInfo(); |
+ info = webView->textInputInfo(); |
EXPECT_EQ("helabclo", std::string(info.value.utf8().data())); |
EXPECT_EQ(3, info.selectionStart); |
EXPECT_EQ(3, info.selectionEnd); |
@@ -1255,7 +1241,7 @@ |
// Deletes ongoing composition and moves the caret. |
activeInputMethodController->commitText("", 2); |
- info = activeInputMethodController->textInputInfo(); |
+ info = webView->textInputInfo(); |
EXPECT_EQ("hello", std::string(info.value.utf8().data())); |
EXPECT_EQ(5, info.selectionStart); |
EXPECT_EQ(5, info.selectionEnd); |
@@ -1264,7 +1250,7 @@ |
// Inserts the specified text and moves the caret. |
activeInputMethodController->commitText("world", -5); |
- info = activeInputMethodController->textInputInfo(); |
+ info = webView->textInputInfo(); |
EXPECT_EQ("helloworld", std::string(info.value.utf8().data())); |
EXPECT_EQ(5, info.selectionStart); |
EXPECT_EQ(5, info.selectionEnd); |
@@ -1273,7 +1259,7 @@ |
// Only moves the caret. |
activeInputMethodController->commitText("", 5); |
- info = activeInputMethodController->textInputInfo(); |
+ info = webView->textInputInfo(); |
EXPECT_EQ("helloworld", std::string(info.value.utf8().data())); |
EXPECT_EQ(10, info.selectionStart); |
EXPECT_EQ(10, info.selectionEnd); |
@@ -1306,7 +1292,7 @@ |
EXPECT_EQ(0, webView->mainFrame()->getScrollOffset().width); |
EXPECT_LT(0, offsetHeight); |
- WebTextInputInfo info = frame->inputMethodController()->textInputInfo(); |
+ WebTextInputInfo info = webView->textInputInfo(); |
EXPECT_EQ("hello", std::string(info.value.utf8().data())); |
// Verify that the input field is not scrolled back into the viewport. |
@@ -1328,12 +1314,10 @@ |
WebVector<WebCompositionUnderline> emptyUnderlines; |
WebLocalFrameImpl* frame = webView->mainFrameImpl(); |
- WebInputMethodController* activeInputMethodController = |
- frame->inputMethodController(); |
frame->setEditableSelectionOffsets(4, 4); |
frame->setCompositionFromExistingText(8, 12, emptyUnderlines); |
- WebTextInputInfo info = activeInputMethodController->textInputInfo(); |
+ WebTextInputInfo info = webView->textInputInfo(); |
EXPECT_EQ("0123456789abcdefghijklmnopqrstuvwxyz", |
std::string(info.value.utf8().data())); |
EXPECT_EQ(4, info.selectionStart); |
@@ -1341,9 +1325,11 @@ |
EXPECT_EQ(8, info.compositionStart); |
EXPECT_EQ(12, info.compositionEnd); |
+ WebInputMethodController* activeInputMethodController = |
+ frame->frameWidget()->getActiveWebInputMethodController(); |
activeInputMethodController->finishComposingText( |
WebInputMethodController::KeepSelection); |
- info = activeInputMethodController->textInputInfo(); |
+ info = webView->textInputInfo(); |
EXPECT_EQ(4, info.selectionStart); |
EXPECT_EQ(4, info.selectionEnd); |
EXPECT_EQ(-1, info.compositionStart); |
@@ -1352,7 +1338,7 @@ |
std::string compositionText("\n"); |
activeInputMethodController->commitText( |
WebString::fromUTF8(compositionText.c_str()), 0); |
- info = activeInputMethodController->textInputInfo(); |
+ info = webView->textInputInfo(); |
EXPECT_EQ(5, info.selectionStart); |
EXPECT_EQ(5, info.selectionEnd); |
EXPECT_EQ(-1, info.compositionStart); |
@@ -1371,14 +1357,12 @@ |
webView->setInitialFocus(false); |
frame->setEditableSelectionOffsets(10, 10); |
frame->extendSelectionAndDelete(5, 8); |
- WebInputMethodController* activeInputMethodController = |
- frame->inputMethodController(); |
- WebTextInputInfo info = activeInputMethodController->textInputInfo(); |
+ WebTextInputInfo info = webView->textInputInfo(); |
EXPECT_EQ("01234ijklmnopqrstuvwxyz", std::string(info.value.utf8().data())); |
EXPECT_EQ(5, info.selectionStart); |
EXPECT_EQ(5, info.selectionEnd); |
frame->extendSelectionAndDelete(10, 0); |
- info = activeInputMethodController->textInputInfo(); |
+ info = webView->textInputInfo(); |
EXPECT_EQ("ijklmnopqrstuvwxyz", std::string(info.value.utf8().data())); |
} |
@@ -1389,39 +1373,37 @@ |
WebView* webView = m_webViewHelper.initializeAndLoad( |
m_baseURL + "input_field_populated.html"); |
WebLocalFrameImpl* frame = toWebLocalFrameImpl(webView->mainFrame()); |
- WebInputMethodController* activeInputMethodController = |
- frame->inputMethodController(); |
webView->setInitialFocus(false); |
frame->setEditableSelectionOffsets(10, 10); |
frame->deleteSurroundingText(5, 8); |
- WebTextInputInfo info = activeInputMethodController->textInputInfo(); |
+ WebTextInputInfo info = webView->textInputInfo(); |
EXPECT_EQ("01234ijklmnopqrstuvwxyz", std::string(info.value.utf8().data())); |
EXPECT_EQ(5, info.selectionStart); |
EXPECT_EQ(5, info.selectionEnd); |
frame->setEditableSelectionOffsets(5, 10); |
frame->deleteSurroundingText(3, 5); |
- info = activeInputMethodController->textInputInfo(); |
+ info = webView->textInputInfo(); |
EXPECT_EQ("01ijklmstuvwxyz", std::string(info.value.utf8().data())); |
EXPECT_EQ(2, info.selectionStart); |
EXPECT_EQ(7, info.selectionEnd); |
frame->setEditableSelectionOffsets(5, 5); |
frame->deleteSurroundingText(10, 0); |
- info = activeInputMethodController->textInputInfo(); |
+ info = webView->textInputInfo(); |
EXPECT_EQ("lmstuvwxyz", std::string(info.value.utf8().data())); |
EXPECT_EQ(0, info.selectionStart); |
EXPECT_EQ(0, info.selectionEnd); |
frame->deleteSurroundingText(0, 20); |
- info = activeInputMethodController->textInputInfo(); |
+ info = webView->textInputInfo(); |
EXPECT_EQ("", std::string(info.value.utf8().data())); |
EXPECT_EQ(0, info.selectionStart); |
EXPECT_EQ(0, info.selectionEnd); |
frame->deleteSurroundingText(10, 10); |
- info = activeInputMethodController->textInputInfo(); |
+ info = webView->textInputInfo(); |
EXPECT_EQ("", std::string(info.value.utf8().data())); |
EXPECT_EQ(0, info.selectionStart); |
EXPECT_EQ(0, info.selectionEnd); |
@@ -1437,18 +1419,16 @@ |
WebVector<WebCompositionUnderline> underlines(static_cast<size_t>(1)); |
underlines[0] = WebCompositionUnderline(0, 4, 0, false, 0); |
WebLocalFrameImpl* frame = webView->mainFrameImpl(); |
- WebInputMethodController* activeInputMethodController = |
- frame->inputMethodController(); |
frame->setEditableSelectionOffsets(4, 10); |
frame->setCompositionFromExistingText(8, 12, underlines); |
- WebTextInputInfo info = activeInputMethodController->textInputInfo(); |
+ WebTextInputInfo info = webView->textInputInfo(); |
EXPECT_EQ(4, info.selectionStart); |
EXPECT_EQ(10, info.selectionEnd); |
EXPECT_EQ(8, info.compositionStart); |
EXPECT_EQ(12, info.compositionEnd); |
WebVector<WebCompositionUnderline> emptyUnderlines; |
frame->setCompositionFromExistingText(0, 0, emptyUnderlines); |
- info = activeInputMethodController->textInputInfo(); |
+ info = webView->textInputInfo(); |
EXPECT_EQ(4, info.selectionStart); |
EXPECT_EQ(10, info.selectionEnd); |
EXPECT_EQ(-1, info.compositionStart); |
@@ -1471,13 +1451,13 @@ |
std::string newLineText("\n"); |
activeInputMethodController->commitText( |
WebString::fromUTF8(newLineText.c_str()), 0); |
- WebTextInputInfo info = activeInputMethodController->textInputInfo(); |
+ WebTextInputInfo info = webView->textInputInfo(); |
EXPECT_EQ("0123456789abcdefghijklmnopq\nrstuvwxyz", |
std::string(info.value.utf8().data())); |
frame->setEditableSelectionOffsets(31, 31); |
frame->setCompositionFromExistingText(30, 34, underlines); |
- info = activeInputMethodController->textInputInfo(); |
+ info = webView->textInputInfo(); |
EXPECT_EQ("0123456789abcdefghijklmnopq\nrstuvwxyz", |
std::string(info.value.utf8().data())); |
EXPECT_EQ(31, info.selectionStart); |
@@ -1488,7 +1468,7 @@ |
std::string compositionText("yolo"); |
activeInputMethodController->commitText( |
WebString::fromUTF8(compositionText.c_str()), 0); |
- info = activeInputMethodController->textInputInfo(); |
+ info = webView->textInputInfo(); |
EXPECT_EQ("0123456789abcdefghijklmnopq\nrsyoloxyz", |
std::string(info.value.utf8().data())); |
EXPECT_EQ(34, info.selectionStart); |
@@ -1535,7 +1515,7 @@ |
WebString::fromUTF8(compositionTextSecond.c_str()), emptyUnderlines, 5, |
5); |
- WebTextInputInfo info = activeInputMethodController->textInputInfo(); |
+ WebTextInputInfo info = webView->textInputInfo(); |
EXPECT_EQ("hello world", std::string(info.value.utf8().data())); |
EXPECT_EQ(11, info.selectionStart); |
EXPECT_EQ(11, info.selectionEnd); |
@@ -1544,7 +1524,7 @@ |
WebLocalFrameImpl* frame = webView->mainFrameImpl(); |
frame->setEditableSelectionOffsets(6, 6); |
- info = activeInputMethodController->textInputInfo(); |
+ info = webView->textInputInfo(); |
EXPECT_EQ("hello world", std::string(info.value.utf8().data())); |
EXPECT_EQ(6, info.selectionStart); |
EXPECT_EQ(6, info.selectionEnd); |
@@ -1552,7 +1532,7 @@ |
EXPECT_EQ(11, info.compositionEnd); |
frame->setEditableSelectionOffsets(8, 8); |
- info = activeInputMethodController->textInputInfo(); |
+ info = webView->textInputInfo(); |
EXPECT_EQ("hello world", std::string(info.value.utf8().data())); |
EXPECT_EQ(8, info.selectionStart); |
EXPECT_EQ(8, info.selectionEnd); |
@@ -1560,7 +1540,7 @@ |
EXPECT_EQ(11, info.compositionEnd); |
frame->setEditableSelectionOffsets(11, 11); |
- info = activeInputMethodController->textInputInfo(); |
+ info = webView->textInputInfo(); |
EXPECT_EQ("hello world", std::string(info.value.utf8().data())); |
EXPECT_EQ(11, info.selectionStart); |
EXPECT_EQ(11, info.selectionEnd); |
@@ -1568,7 +1548,7 @@ |
EXPECT_EQ(11, info.compositionEnd); |
frame->setEditableSelectionOffsets(6, 11); |
- info = activeInputMethodController->textInputInfo(); |
+ info = webView->textInputInfo(); |
EXPECT_EQ("hello world", std::string(info.value.utf8().data())); |
EXPECT_EQ(6, info.selectionStart); |
EXPECT_EQ(11, info.selectionEnd); |
@@ -1576,7 +1556,7 @@ |
EXPECT_EQ(11, info.compositionEnd); |
frame->setEditableSelectionOffsets(2, 2); |
- info = activeInputMethodController->textInputInfo(); |
+ info = webView->textInputInfo(); |
EXPECT_EQ("hello world", std::string(info.value.utf8().data())); |
EXPECT_EQ(2, info.selectionStart); |
EXPECT_EQ(2, info.selectionEnd); |
@@ -2745,7 +2725,7 @@ |
WebVector<WebCompositionUnderline> emptyUnderlines; |
frame->setEditableSelectionOffsets(4, 10); |
frame->setCompositionFromExistingText(8, 12, emptyUnderlines); |
- WebTextInputInfo info = frame->inputMethodController()->textInputInfo(); |
+ WebTextInputInfo info = webView->textInputInfo(); |
EXPECT_EQ(4, info.selectionStart); |
EXPECT_EQ(10, info.selectionEnd); |
EXPECT_EQ(8, info.compositionStart); |
@@ -2760,14 +2740,13 @@ |
frame->setAutofillClient(0); |
} |
-static void verifySelectionAndComposition(WebViewImpl* webView, |
+static void verifySelectionAndComposition(WebView* webView, |
int selectionStart, |
int selectionEnd, |
int compositionStart, |
int compositionEnd, |
const char* failMessage) { |
- WebTextInputInfo info = |
- webView->mainFrameImpl()->inputMethodController()->textInputInfo(); |
+ WebTextInputInfo info = webView->textInputInfo(); |
EXPECT_EQ(selectionStart, info.selectionStart) << failMessage; |
EXPECT_EQ(selectionEnd, info.selectionEnd) << failMessage; |
EXPECT_EQ(compositionStart, info.compositionStart) << failMessage; |
@@ -2841,7 +2820,7 @@ |
WebString::fromUTF8(compositionText.c_str()), emptyUnderlines, 0, |
compositionText.length()); |
- WebTextInputInfo info = activeInputMethodController->textInputInfo(); |
+ WebTextInputInfo info = webView->textInputInfo(); |
EXPECT_EQ(0, info.selectionStart); |
EXPECT_EQ((int)compositionText.length(), info.selectionEnd); |
EXPECT_EQ(0, info.compositionStart); |
@@ -2872,7 +2851,7 @@ |
client.clearChangeCounts(); |
frame->setCompositionFromExistingText(8, 12, emptyUnderlines); |
- WebTextInputInfo info = frame->inputMethodController()->textInputInfo(); |
+ WebTextInputInfo info = webView->textInputInfo(); |
EXPECT_EQ("0123456789abcdefghijklmnopqrstuvwxyz", |
std::string(info.value.utf8().data())); |
EXPECT_EQ(8, info.compositionStart); |
@@ -3521,8 +3500,6 @@ |
webViewImpl->setInitialFocus(false); |
WebLocalFrameImpl* frame = webViewImpl->mainFrameImpl(); |
- WebInputMethodControllerImpl* activeInputMethodController = |
- frame->inputMethodController(); |
Document* document = frame->frame()->document(); |
// (A) <input> |
@@ -3534,7 +3511,7 @@ |
inputElement, |
FocusParams(SelectionBehaviorOnFocus::None, WebFocusTypeNone, nullptr)); |
webViewImpl->setFocus(true); |
- WebTextInputInfo info1 = activeInputMethodController->textInputInfo(); |
+ WebTextInputInfo info1 = webViewImpl->textInputInfo(); |
EXPECT_EQ(WebTextInputFlagAutocompleteOff | WebTextInputFlagAutocorrectOff | |
WebTextInputFlagSpellcheckOff | |
WebTextInputFlagAutocapitalizeNone, |
@@ -3547,7 +3524,7 @@ |
inputElement, |
FocusParams(SelectionBehaviorOnFocus::None, WebFocusTypeNone, nullptr)); |
webViewImpl->setFocus(true); |
- WebTextInputInfo info2 = activeInputMethodController->textInputInfo(); |
+ WebTextInputInfo info2 = webViewImpl->textInputInfo(); |
EXPECT_EQ(WebTextInputFlagAutocompleteOn | WebTextInputFlagAutocorrectOn | |
WebTextInputFlagSpellcheckOn | |
WebTextInputFlagAutocapitalizeSentences, |
@@ -3561,7 +3538,7 @@ |
textAreaElement, |
FocusParams(SelectionBehaviorOnFocus::None, WebFocusTypeNone, nullptr)); |
webViewImpl->setFocus(true); |
- WebTextInputInfo info3 = activeInputMethodController->textInputInfo(); |
+ WebTextInputInfo info3 = webViewImpl->textInputInfo(); |
EXPECT_EQ(WebTextInputFlagAutocapitalizeSentences, info3.flags); |
// (C) Verifies the WebTextInputInfo's don't equal. |