OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "base/bind.h" | 5 #include "base/bind.h" |
6 #include "base/files/file_util.h" | 6 #include "base/files/file_util.h" |
7 #include "base/format_macros.h" | 7 #include "base/format_macros.h" |
8 #include "base/message_loop/message_loop.h" | 8 #include "base/message_loop/message_loop.h" |
9 #include "base/path_service.h" | 9 #include "base/path_service.h" |
10 #include "base/strings/stringprintf.h" | 10 #include "base/strings/stringprintf.h" |
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
58 // action we take. | 58 // action we take. |
59 const int kActionDelayMs = 500; | 59 const int kActionDelayMs = 500; |
60 | 60 |
61 const char kSimplePage[] = "/focus/page_with_focus.html"; | 61 const char kSimplePage[] = "/focus/page_with_focus.html"; |
62 const char kStealFocusPage[] = "/focus/page_steals_focus.html"; | 62 const char kStealFocusPage[] = "/focus/page_steals_focus.html"; |
63 const char kTypicalPage[] = "/focus/typical_page.html"; | 63 const char kTypicalPage[] = "/focus/typical_page.html"; |
64 | 64 |
65 class BrowserFocusTest : public InProcessBrowserTest { | 65 class BrowserFocusTest : public InProcessBrowserTest { |
66 public: | 66 public: |
67 // InProcessBrowserTest overrides: | 67 // InProcessBrowserTest overrides: |
68 virtual void SetUpOnMainThread() OVERRIDE { | 68 virtual void SetUpOnMainThread() override { |
69 ASSERT_TRUE(embedded_test_server()->InitializeAndWaitUntilReady()); | 69 ASSERT_TRUE(embedded_test_server()->InitializeAndWaitUntilReady()); |
70 } | 70 } |
71 | 71 |
72 bool IsViewFocused(ViewID vid) { | 72 bool IsViewFocused(ViewID vid) { |
73 return ui_test_utils::IsViewFocused(browser(), vid); | 73 return ui_test_utils::IsViewFocused(browser(), vid); |
74 } | 74 } |
75 | 75 |
76 void ClickOnView(ViewID vid) { | 76 void ClickOnView(ViewID vid) { |
77 ui_test_utils::ClickOnView(browser(), vid); | 77 ui_test_utils::ClickOnView(browser(), vid); |
78 } | 78 } |
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
138 | 138 |
139 // A helper class that waits for an interstitial page to attach. | 139 // A helper class that waits for an interstitial page to attach. |
140 class WaitForInterstitial : public content::WebContentsObserver { | 140 class WaitForInterstitial : public content::WebContentsObserver { |
141 public: | 141 public: |
142 explicit WaitForInterstitial(content::WebContents* tab) | 142 explicit WaitForInterstitial(content::WebContents* tab) |
143 : WebContentsObserver(tab), | 143 : WebContentsObserver(tab), |
144 runner_(new content::MessageLoopRunner) { | 144 runner_(new content::MessageLoopRunner) { |
145 runner_->Run(); | 145 runner_->Run(); |
146 } | 146 } |
147 | 147 |
148 virtual void DidAttachInterstitialPage() OVERRIDE { runner_->Quit(); } | 148 virtual void DidAttachInterstitialPage() override { runner_->Quit(); } |
149 virtual void DidDetachInterstitialPage() OVERRIDE { NOTREACHED(); } | 149 virtual void DidDetachInterstitialPage() override { NOTREACHED(); } |
150 | 150 |
151 private: | 151 private: |
152 scoped_refptr<content::MessageLoopRunner> runner_; | 152 scoped_refptr<content::MessageLoopRunner> runner_; |
153 DISALLOW_COPY_AND_ASSIGN(WaitForInterstitial); | 153 DISALLOW_COPY_AND_ASSIGN(WaitForInterstitial); |
154 }; | 154 }; |
155 | 155 |
156 // A test interstitial page with typical HTML contents. | 156 // A test interstitial page with typical HTML contents. |
157 class TestInterstitialPage : public content::InterstitialPageDelegate { | 157 class TestInterstitialPage : public content::InterstitialPageDelegate { |
158 public: | 158 public: |
159 explicit TestInterstitialPage(WebContents* tab) { | 159 explicit TestInterstitialPage(WebContents* tab) { |
160 base::FilePath file_path; | 160 base::FilePath file_path; |
161 bool success = PathService::Get(chrome::DIR_TEST_DATA, &file_path); | 161 bool success = PathService::Get(chrome::DIR_TEST_DATA, &file_path); |
162 EXPECT_TRUE(success); | 162 EXPECT_TRUE(success); |
163 file_path = file_path.AppendASCII("focus/typical_page.html"); | 163 file_path = file_path.AppendASCII("focus/typical_page.html"); |
164 success = base::ReadFileToString(file_path, &html_contents_); | 164 success = base::ReadFileToString(file_path, &html_contents_); |
165 EXPECT_TRUE(success); | 165 EXPECT_TRUE(success); |
166 interstitial_page_ = content::InterstitialPage::Create( | 166 interstitial_page_ = content::InterstitialPage::Create( |
167 tab, true, GURL("http://interstitial.com"), this); | 167 tab, true, GURL("http://interstitial.com"), this); |
168 | 168 |
169 // Show the interstitial and delay return until it has attached. | 169 // Show the interstitial and delay return until it has attached. |
170 interstitial_page_->Show(); | 170 interstitial_page_->Show(); |
171 WaitForInterstitial wait(tab); | 171 WaitForInterstitial wait(tab); |
172 EXPECT_TRUE(tab->ShowingInterstitialPage()); | 172 EXPECT_TRUE(tab->ShowingInterstitialPage()); |
173 } | 173 } |
174 | 174 |
175 virtual std::string GetHTMLContents() OVERRIDE { return html_contents_; } | 175 virtual std::string GetHTMLContents() override { return html_contents_; } |
176 | 176 |
177 RenderViewHost* render_view_host() { | 177 RenderViewHost* render_view_host() { |
178 return interstitial_page_->GetRenderViewHostForTesting(); | 178 return interstitial_page_->GetRenderViewHostForTesting(); |
179 } | 179 } |
180 | 180 |
181 void DontProceed() { interstitial_page_->DontProceed(); } | 181 void DontProceed() { interstitial_page_->DontProceed(); } |
182 | 182 |
183 bool HasFocus() { return render_view_host()->GetView()->HasFocus(); } | 183 bool HasFocus() { return render_view_host()->GetView()->HasFocus(); } |
184 | 184 |
185 private: | 185 private: |
(...skipping 509 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
695 content::NOTIFICATION_NAV_ENTRY_COMMITTED, | 695 content::NOTIFICATION_NAV_ENTRY_COMMITTED, |
696 content::NotificationService::AllSources()); | 696 content::NotificationService::AllSources()); |
697 chrome::GoForward(browser(), CURRENT_TAB); | 697 chrome::GoForward(browser(), CURRENT_TAB); |
698 forward_nav_observer.Wait(); | 698 forward_nav_observer.Wait(); |
699 } | 699 } |
700 | 700 |
701 EXPECT_FALSE(IsViewFocused(VIEW_ID_OMNIBOX)); | 701 EXPECT_FALSE(IsViewFocused(VIEW_ID_OMNIBOX)); |
702 } | 702 } |
703 | 703 |
704 } // namespace | 704 } // namespace |
OLD | NEW |