summaryrefslogtreecommitdiff
path: root/chromium/content/browser/text_fragment_browsertest.cc
diff options
context:
space:
mode:
authorAllan Sandfeld Jensen <allan.jensen@qt.io>2020-10-12 14:27:29 +0200
committerAllan Sandfeld Jensen <allan.jensen@qt.io>2020-10-13 09:35:20 +0000
commitc30a6232df03e1efbd9f3b226777b07e087a1122 (patch)
treee992f45784689f373bcc38d1b79a239ebe17ee23 /chromium/content/browser/text_fragment_browsertest.cc
parent7b5b123ac58f58ffde0f4f6e488bcd09aa4decd3 (diff)
downloadqtwebengine-chromium-85-based.tar.gz
BASELINE: Update Chromium to 85.0.4183.14085-based
Change-Id: Iaa42f4680837c57725b1344f108c0196741f6057 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Diffstat (limited to 'chromium/content/browser/text_fragment_browsertest.cc')
-rw-r--r--chromium/content/browser/text_fragment_browsertest.cc37
1 files changed, 37 insertions, 0 deletions
diff --git a/chromium/content/browser/text_fragment_browsertest.cc b/chromium/content/browser/text_fragment_browsertest.cc
index 2c6e0d5fdca..86c392b8733 100644
--- a/chromium/content/browser/text_fragment_browsertest.cc
+++ b/chromium/content/browser/text_fragment_browsertest.cc
@@ -431,6 +431,21 @@ IN_PROC_BROWSER_TEST_F(ForceLoadAtTopBrowserTest, FragmentAnchorDisabled) {
EXPECT_TRUE(main_contents->GetMainFrame()->GetView()->IsScrollOffsetAtTop());
}
+IN_PROC_BROWSER_TEST_F(ForceLoadAtTopBrowserTest, SameDocumentNavigation) {
+ GURL url(
+ embedded_test_server()->GetURL("/scrollable_page_with_content.html"));
+ WebContents* main_contents = shell()->web_contents();
+
+ EXPECT_TRUE(NavigateToURL(shell(), url));
+ EXPECT_TRUE(WaitForRenderFrameReady(main_contents->GetMainFrame()));
+ EXPECT_TRUE(main_contents->GetMainFrame()->GetView()->IsScrollOffsetAtTop());
+
+ ClickElementWithId(main_contents, "link");
+
+ RunUntilInputProcessed(GetWidgetHost());
+ EXPECT_FALSE(main_contents->GetMainFrame()->GetView()->IsScrollOffsetAtTop());
+}
+
IN_PROC_BROWSER_TEST_F(ForceLoadAtTopBrowserTest, TextFragmentAnchorDisabled) {
GURL url(embedded_test_server()->GetURL(
"/scrollable_page_with_content.html#:~:text=text"));
@@ -450,4 +465,26 @@ IN_PROC_BROWSER_TEST_F(ForceLoadAtTopBrowserTest, TextFragmentAnchorDisabled) {
EXPECT_TRUE(main_contents->GetMainFrame()->GetView()->IsScrollOffsetAtTop());
}
+// Test that Tab key press puts focus from the start of selection.
+IN_PROC_BROWSER_TEST_F(TextFragmentAnchorBrowserTest, TabFocus) {
+ ASSERT_TRUE(embedded_test_server()->Start());
+ GURL url(embedded_test_server()->GetURL(
+ "/scrollable_page_with_anchor.html#:~:text=text"));
+ WebContents* main_contents = shell()->web_contents();
+ RenderFrameSubmissionObserver frame_observer(main_contents);
+ EXPECT_TRUE(NavigateToURL(shell(), url));
+ WaitForPageLoad(main_contents);
+ frame_observer.WaitForScrollOffsetAtTop(
+ /*expected_scroll_offset_at_top=*/false);
+
+ DOMMessageQueue msg_queue;
+ SimulateKeyPress(main_contents, ui::DomKey::TAB, ui::DomCode::TAB,
+ ui::VKEY_TAB, false, false, false, false);
+
+ // Wait for focus to happen.
+ std::string message;
+ EXPECT_TRUE(msg_queue.WaitForMessage(&message));
+ EXPECT_EQ("\"FocusDone2\"", message);
+}
+
} // namespace content