summaryrefslogtreecommitdiff
path: root/Source/WebKit/chromium/tests/WebViewTest.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Source/WebKit/chromium/tests/WebViewTest.cpp')
-rw-r--r--Source/WebKit/chromium/tests/WebViewTest.cpp40
1 files changed, 22 insertions, 18 deletions
diff --git a/Source/WebKit/chromium/tests/WebViewTest.cpp b/Source/WebKit/chromium/tests/WebViewTest.cpp
index d478aad92..1929c1ba6 100644
--- a/Source/WebKit/chromium/tests/WebViewTest.cpp
+++ b/Source/WebKit/chromium/tests/WebViewTest.cpp
@@ -585,24 +585,6 @@ TEST_F(WebViewTest, DetectContentAroundPosition)
EXPECT_FALSE(client.contentDetectionRequested());
client.reset();
- // Content detection should still work on click, mouse and touch event listeners for long taps
- // as long as we're not tapping on links.
- EXPECT_TRUE(tapElementById(webView, WebInputEvent::GestureLongPress, clickListener));
- EXPECT_TRUE(client.contentDetectionRequested());
- client.reset();
-
- EXPECT_TRUE(tapElementById(webView, WebInputEvent::GestureLongPress, touchstartListener));
- EXPECT_TRUE(client.contentDetectionRequested());
- client.reset();
-
- EXPECT_TRUE(tapElementById(webView, WebInputEvent::GestureLongPress, mousedownListener));
- EXPECT_TRUE(client.contentDetectionRequested());
- client.reset();
-
- EXPECT_TRUE(tapElementById(webView, WebInputEvent::GestureLongPress, link));
- EXPECT_FALSE(client.contentDetectionRequested());
- client.reset();
-
// Content detection should work normally without these event listeners.
// The click listener in the body should be ignored as a special case.
EXPECT_TRUE(tapElementById(webView, WebInputEvent::GestureTap, noListener));
@@ -647,4 +629,26 @@ TEST_F(WebViewTest, ClientTapHandling)
webView->close();
}
+#if OS(ANDROID)
+TEST_F(WebViewTest, LongPressSelection)
+{
+ URLTestHelpers::registerMockedURLFromBaseURL(WebString::fromUTF8(m_baseURL.c_str()), WebString::fromUTF8("longpress_selection.html"));
+
+ WebView* webView = FrameTestHelpers::createWebViewAndLoad(m_baseURL + "longpress_selection.html", true);
+ webView->resize(WebSize(500, 300));
+ webView->layout();
+ webkit_support::RunAllPendingMessages();
+
+ WebString target = WebString::fromUTF8("target");
+ WebString onselectstartfalse = WebString::fromUTF8("onselectstartfalse");
+ WebFrameImpl* frame = static_cast<WebFrameImpl*>(webView->mainFrame());
+
+ EXPECT_TRUE(tapElementById(webView, WebInputEvent::GestureLongPress, onselectstartfalse));
+ EXPECT_EQ("", std::string(frame->selectionAsText().utf8().data()));
+ EXPECT_TRUE(tapElementById(webView, WebInputEvent::GestureLongPress, target));
+ EXPECT_EQ("testword", std::string(frame->selectionAsText().utf8().data()));
+ webView->close();
+}
+#endif
+
}