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 "build/build_config.h" | 5 #include "build/build_config.h" |
6 #include "chrome/browser/content_settings/host_content_settings_map.h" | 6 #include "chrome/browser/content_settings/host_content_settings_map.h" |
7 #include "chrome/browser/fullscreen.h" | 7 #include "chrome/browser/fullscreen.h" |
8 #include "chrome/browser/profiles/profile.h" | 8 #include "chrome/browser/profiles/profile.h" |
9 #include "chrome/browser/ui/browser.h" | 9 #include "chrome/browser/ui/browser.h" |
10 #include "chrome/browser/ui/browser_commands.h" | 10 #include "chrome/browser/ui/browser_commands.h" |
11 #include "chrome/browser/ui/browser_window.h" | 11 #include "chrome/browser/ui/browser_window.h" |
12 #include "chrome/browser/ui/fullscreen/fullscreen_controller_test.h" | 12 #include "chrome/browser/ui/fullscreen/fullscreen_controller_test.h" |
13 #include "chrome/browser/ui/tabs/tab_strip_model.h" | 13 #include "chrome/browser/ui/tabs/tab_strip_model.h" |
14 #include "chrome/test/base/interactive_test_utils.h" | 14 #include "chrome/test/base/interactive_test_utils.h" |
15 #include "chrome/test/base/ui_test_utils.h" | 15 #include "chrome/test/base/ui_test_utils.h" |
16 #include "content/public/browser/render_view_host.h" | 16 #include "content/public/browser/render_view_host.h" |
17 #include "content/public/browser/render_widget_host_view.h" | 17 #include "content/public/browser/render_widget_host_view.h" |
18 #include "content/public/browser/web_contents.h" | 18 #include "content/public/browser/web_contents.h" |
19 #include "content/public/common/url_constants.h" | 19 #include "content/public/common/url_constants.h" |
20 | 20 |
21 #if defined(OS_MACOSX) | 21 #if defined(OS_MACOSX) |
22 #include "base/mac/mac_util.h" | 22 #include "base/mac/mac_util.h" |
23 #endif | 23 #endif |
24 | 24 |
25 using content::kAboutBlankURL; | 25 using url::kAboutBlankURL; |
26 using content::WebContents; | 26 using content::WebContents; |
27 using content::PAGE_TRANSITION_TYPED; | 27 using content::PAGE_TRANSITION_TYPED; |
28 | 28 |
29 namespace { | 29 namespace { |
30 | 30 |
31 const base::FilePath::CharType* kSimpleFile = FILE_PATH_LITERAL("simple.html"); | 31 const base::FilePath::CharType* kSimpleFile = FILE_PATH_LITERAL("simple.html"); |
32 | 32 |
33 } // namespace | 33 } // namespace |
34 | 34 |
35 class FullscreenControllerInteractiveTest | 35 class FullscreenControllerInteractiveTest |
(...skipping 138 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
174 } | 174 } |
175 | 175 |
176 // Tests /////////////////////////////////////////////////////////////////////// | 176 // Tests /////////////////////////////////////////////////////////////////////// |
177 | 177 |
178 // Tests that while in fullscreen creating a new tab will exit fullscreen. | 178 // Tests that while in fullscreen creating a new tab will exit fullscreen. |
179 // Test is flaky: http://crbug.com/146006 | 179 // Test is flaky: http://crbug.com/146006 |
180 IN_PROC_BROWSER_TEST_F(FullscreenControllerInteractiveTest, | 180 IN_PROC_BROWSER_TEST_F(FullscreenControllerInteractiveTest, |
181 DISABLED_TestNewTabExitsFullscreen) { | 181 DISABLED_TestNewTabExitsFullscreen) { |
182 ASSERT_TRUE(test_server()->Start()); | 182 ASSERT_TRUE(test_server()->Start()); |
183 | 183 |
184 AddTabAtIndex(0, GURL(kAboutBlankURL), PAGE_TRANSITION_TYPED); | 184 AddTabAtIndex(0, GURL(url::kAboutBlankURL), PAGE_TRANSITION_TYPED); |
185 | 185 |
186 ASSERT_NO_FATAL_FAILURE(ToggleTabFullscreen(true)); | 186 ASSERT_NO_FATAL_FAILURE(ToggleTabFullscreen(true)); |
187 | 187 |
188 { | 188 { |
189 FullscreenNotificationObserver fullscreen_observer; | 189 FullscreenNotificationObserver fullscreen_observer; |
190 AddTabAtIndex(1, GURL(kAboutBlankURL), PAGE_TRANSITION_TYPED); | 190 AddTabAtIndex(1, GURL(url::kAboutBlankURL), PAGE_TRANSITION_TYPED); |
191 fullscreen_observer.Wait(); | 191 fullscreen_observer.Wait(); |
192 ASSERT_FALSE(browser()->window()->IsFullscreen()); | 192 ASSERT_FALSE(browser()->window()->IsFullscreen()); |
193 } | 193 } |
194 } | 194 } |
195 | 195 |
196 // Tests a tab exiting fullscreen will bring the browser out of fullscreen. | 196 // Tests a tab exiting fullscreen will bring the browser out of fullscreen. |
197 // Test is flaky: http://crbug.com/146006 | 197 // Test is flaky: http://crbug.com/146006 |
198 IN_PROC_BROWSER_TEST_F(FullscreenControllerInteractiveTest, | 198 IN_PROC_BROWSER_TEST_F(FullscreenControllerInteractiveTest, |
199 DISABLED_TestTabExitsItselfFromFullscreen) { | 199 DISABLED_TestTabExitsItselfFromFullscreen) { |
200 ASSERT_TRUE(test_server()->Start()); | 200 ASSERT_TRUE(test_server()->Start()); |
201 | 201 |
202 AddTabAtIndex(0, GURL(kAboutBlankURL), PAGE_TRANSITION_TYPED); | 202 AddTabAtIndex(0, GURL(url::kAboutBlankURL), PAGE_TRANSITION_TYPED); |
203 | 203 |
204 ASSERT_NO_FATAL_FAILURE(ToggleTabFullscreen(true)); | 204 ASSERT_NO_FATAL_FAILURE(ToggleTabFullscreen(true)); |
205 ASSERT_NO_FATAL_FAILURE(ToggleTabFullscreen(false)); | 205 ASSERT_NO_FATAL_FAILURE(ToggleTabFullscreen(false)); |
206 } | 206 } |
207 | 207 |
208 // Tests entering fullscreen and then requesting mouse lock results in | 208 // Tests entering fullscreen and then requesting mouse lock results in |
209 // buttons for the user, and that after confirming the buttons are dismissed. | 209 // buttons for the user, and that after confirming the buttons are dismissed. |
210 // Test is flaky: http://crbug.com/146006 | 210 // Test is flaky: http://crbug.com/146006 |
211 IN_PROC_BROWSER_TEST_F(FullscreenControllerInteractiveTest, | 211 IN_PROC_BROWSER_TEST_F(FullscreenControllerInteractiveTest, |
212 DISABLED_TestFullscreenBubbleMouseLockState) { | 212 DISABLED_TestFullscreenBubbleMouseLockState) { |
213 ASSERT_TRUE(test_server()->Start()); | 213 ASSERT_TRUE(test_server()->Start()); |
214 | 214 |
215 AddTabAtIndex(0, GURL(kAboutBlankURL), PAGE_TRANSITION_TYPED); | 215 AddTabAtIndex(0, GURL(url::kAboutBlankURL), PAGE_TRANSITION_TYPED); |
216 AddTabAtIndex(1, GURL(kAboutBlankURL), PAGE_TRANSITION_TYPED); | 216 AddTabAtIndex(1, GURL(url::kAboutBlankURL), PAGE_TRANSITION_TYPED); |
217 | 217 |
218 ASSERT_NO_FATAL_FAILURE(ToggleTabFullscreen(true)); | 218 ASSERT_NO_FATAL_FAILURE(ToggleTabFullscreen(true)); |
219 | 219 |
220 // Request mouse lock and verify the bubble is waiting for user confirmation. | 220 // Request mouse lock and verify the bubble is waiting for user confirmation. |
221 RequestToLockMouse(true, false); | 221 RequestToLockMouse(true, false); |
222 ASSERT_TRUE(IsMouseLockPermissionRequested()); | 222 ASSERT_TRUE(IsMouseLockPermissionRequested()); |
223 | 223 |
224 // Accept mouse lock and verify bubble no longer shows confirmation buttons. | 224 // Accept mouse lock and verify bubble no longer shows confirmation buttons. |
225 AcceptCurrentFullscreenOrMouseLockRequest(); | 225 AcceptCurrentFullscreenOrMouseLockRequest(); |
226 ASSERT_FALSE(IsFullscreenBubbleDisplayingButtons()); | 226 ASSERT_FALSE(IsFullscreenBubbleDisplayingButtons()); |
(...skipping 18 matching lines...) Expand all Loading... |
245 } | 245 } |
246 | 246 |
247 // Tests Fullscreen entered in Browser, then Tab mode, then exited via Browser. | 247 // Tests Fullscreen entered in Browser, then Tab mode, then exited via Browser. |
248 // Test is flaky: http://crbug.com/146006 | 248 // Test is flaky: http://crbug.com/146006 |
249 IN_PROC_BROWSER_TEST_F(FullscreenControllerInteractiveTest, | 249 IN_PROC_BROWSER_TEST_F(FullscreenControllerInteractiveTest, |
250 DISABLED_BrowserFullscreenExit) { | 250 DISABLED_BrowserFullscreenExit) { |
251 // Enter browser fullscreen. | 251 // Enter browser fullscreen. |
252 ASSERT_NO_FATAL_FAILURE(ToggleBrowserFullscreen(true)); | 252 ASSERT_NO_FATAL_FAILURE(ToggleBrowserFullscreen(true)); |
253 | 253 |
254 // Enter tab fullscreen. | 254 // Enter tab fullscreen. |
255 AddTabAtIndex(0, GURL(kAboutBlankURL), PAGE_TRANSITION_TYPED); | 255 AddTabAtIndex(0, GURL(url::kAboutBlankURL), PAGE_TRANSITION_TYPED); |
256 ASSERT_NO_FATAL_FAILURE(ToggleTabFullscreen(true)); | 256 ASSERT_NO_FATAL_FAILURE(ToggleTabFullscreen(true)); |
257 | 257 |
258 // Exit browser fullscreen. | 258 // Exit browser fullscreen. |
259 ASSERT_NO_FATAL_FAILURE(ToggleBrowserFullscreen(false)); | 259 ASSERT_NO_FATAL_FAILURE(ToggleBrowserFullscreen(false)); |
260 ASSERT_FALSE(browser()->window()->IsFullscreen()); | 260 ASSERT_FALSE(browser()->window()->IsFullscreen()); |
261 } | 261 } |
262 | 262 |
263 // Tests Browser Fullscreen remains active after Tab mode entered and exited. | 263 // Tests Browser Fullscreen remains active after Tab mode entered and exited. |
264 // Test is flaky: http://crbug.com/146006 | 264 // Test is flaky: http://crbug.com/146006 |
265 IN_PROC_BROWSER_TEST_F(FullscreenControllerInteractiveTest, | 265 IN_PROC_BROWSER_TEST_F(FullscreenControllerInteractiveTest, |
266 DISABLED_BrowserFullscreenAfterTabFSExit) { | 266 DISABLED_BrowserFullscreenAfterTabFSExit) { |
267 // Enter browser fullscreen. | 267 // Enter browser fullscreen. |
268 ASSERT_NO_FATAL_FAILURE(ToggleBrowserFullscreen(true)); | 268 ASSERT_NO_FATAL_FAILURE(ToggleBrowserFullscreen(true)); |
269 | 269 |
270 // Enter and then exit tab fullscreen. | 270 // Enter and then exit tab fullscreen. |
271 AddTabAtIndex(0, GURL(kAboutBlankURL), PAGE_TRANSITION_TYPED); | 271 AddTabAtIndex(0, GURL(url::kAboutBlankURL), PAGE_TRANSITION_TYPED); |
272 ASSERT_NO_FATAL_FAILURE(ToggleTabFullscreen(true)); | 272 ASSERT_NO_FATAL_FAILURE(ToggleTabFullscreen(true)); |
273 ASSERT_NO_FATAL_FAILURE(ToggleTabFullscreen(false)); | 273 ASSERT_NO_FATAL_FAILURE(ToggleTabFullscreen(false)); |
274 | 274 |
275 // Verify browser fullscreen still active. | 275 // Verify browser fullscreen still active. |
276 ASSERT_TRUE(IsFullscreenForBrowser()); | 276 ASSERT_TRUE(IsFullscreenForBrowser()); |
277 } | 277 } |
278 | 278 |
279 // Tests fullscreen entered without permision prompt for file:// urls. | 279 // Tests fullscreen entered without permision prompt for file:// urls. |
280 // Test is flaky: http://crbug.com/146006 | 280 // Test is flaky: http://crbug.com/146006 |
281 IN_PROC_BROWSER_TEST_F(FullscreenControllerInteractiveTest, | 281 IN_PROC_BROWSER_TEST_F(FullscreenControllerInteractiveTest, |
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
356 ASSERT_TRUE(IsFullscreenForBrowser()); | 356 ASSERT_TRUE(IsFullscreenForBrowser()); |
357 ASSERT_FALSE(IsWindowFullscreenForTabOrPending()); | 357 ASSERT_FALSE(IsWindowFullscreenForTabOrPending()); |
358 } | 358 } |
359 | 359 |
360 #if defined(OS_MACOSX) | 360 #if defined(OS_MACOSX) |
361 // http://crbug.com/100467 | 361 // http://crbug.com/100467 |
362 IN_PROC_BROWSER_TEST_F( | 362 IN_PROC_BROWSER_TEST_F( |
363 FullscreenControllerTest, DISABLED_TabEntersPresentationModeFromWindowed) { | 363 FullscreenControllerTest, DISABLED_TabEntersPresentationModeFromWindowed) { |
364 ASSERT_TRUE(test_server()->Start()); | 364 ASSERT_TRUE(test_server()->Start()); |
365 | 365 |
366 AddTabAtIndex(0, GURL(kAboutBlankURL), PAGE_TRANSITION_TYPED); | 366 AddTabAtIndex(0, GURL(url::kAboutBlankURL), PAGE_TRANSITION_TYPED); |
367 | 367 |
368 WebContents* tab = browser()->tab_strip_model()->GetActiveWebContents(); | 368 WebContents* tab = browser()->tab_strip_model()->GetActiveWebContents(); |
369 | 369 |
370 { | 370 { |
371 FullscreenNotificationObserver fullscreen_observer; | 371 FullscreenNotificationObserver fullscreen_observer; |
372 EXPECT_FALSE(browser()->window()->IsFullscreen()); | 372 EXPECT_FALSE(browser()->window()->IsFullscreen()); |
373 EXPECT_FALSE(browser()->window()->IsFullscreenWithChrome()); | 373 EXPECT_FALSE(browser()->window()->IsFullscreenWithChrome()); |
374 EXPECT_FALSE(browser()->window()->IsFullscreenWithoutChrome()); | 374 EXPECT_FALSE(browser()->window()->IsFullscreenWithoutChrome()); |
375 browser()->ToggleFullscreenModeForTab(tab, true); | 375 browser()->ToggleFullscreenModeForTab(tab, true); |
376 fullscreen_observer.Wait(); | 376 fullscreen_observer.Wait(); |
(...skipping 547 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
924 | 924 |
925 GURL url = test_server()->GetURL("simple.html"); | 925 GURL url = test_server()->GetURL("simple.html"); |
926 AddTabAtIndex(0, url, PAGE_TRANSITION_TYPED); | 926 AddTabAtIndex(0, url, PAGE_TRANSITION_TYPED); |
927 | 927 |
928 // Validate that going fullscreen for a URL defaults to asking permision. | 928 // Validate that going fullscreen for a URL defaults to asking permision. |
929 ASSERT_FALSE(IsFullscreenPermissionRequested()); | 929 ASSERT_FALSE(IsFullscreenPermissionRequested()); |
930 ASSERT_NO_FATAL_FAILURE(ToggleTabFullscreenNoRetries(true)); | 930 ASSERT_NO_FATAL_FAILURE(ToggleTabFullscreenNoRetries(true)); |
931 ASSERT_TRUE(IsFullscreenPermissionRequested()); | 931 ASSERT_TRUE(IsFullscreenPermissionRequested()); |
932 ASSERT_NO_FATAL_FAILURE(ToggleTabFullscreenNoRetries(false)); | 932 ASSERT_NO_FATAL_FAILURE(ToggleTabFullscreenNoRetries(false)); |
933 } | 933 } |
OLD | NEW |