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/compiler_specific.h" | |
6 #include "base/strings/utf_string_conversions.h" | |
7 #include "chrome/browser/ui/browser.h" | 5 #include "chrome/browser/ui/browser.h" |
8 #include "chrome/browser/ui/browser_commands.h" | 6 #include "chrome/browser/ui/browser_commands.h" |
9 #include "chrome/browser/ui/browser_tabstrip.h" | 7 #include "chrome/browser/ui/browser_tabstrip.h" |
10 #include "chrome/browser/ui/browser_window.h" | 8 #include "chrome/browser/ui/browser_window.h" |
11 #include "chrome/browser/ui/exclusive_access/fullscreen_controller.h" | 9 #include "chrome/browser/ui/exclusive_access/fullscreen_controller.h" |
12 #include "chrome/browser/ui/exclusive_access/fullscreen_controller_test.h" | 10 #include "chrome/browser/ui/exclusive_access/fullscreen_controller_test.h" |
13 #include "chrome/browser/ui/tabs/tab_strip_model.h" | 11 #include "chrome/browser/ui/tabs/tab_strip_model.h" |
14 #include "content/public/browser/render_view_host.h" | 12 #include "chrome/test/base/ui_test_utils.h" |
15 #include "content/public/browser/web_contents.h" | 13 #include "content/public/browser/web_contents.h" |
16 #include "content/public/common/url_constants.h" | 14 #include "content/public/common/url_constants.h" |
17 #include "content/public/test/test_navigation_observer.h" | |
18 | 15 |
19 using url::kAboutBlankURL; | |
20 using content::WebContents; | 16 using content::WebContents; |
21 using ui::PAGE_TRANSITION_TYPED; | 17 using ui::PAGE_TRANSITION_TYPED; |
22 | 18 |
23 class FullscreenControllerBrowserTest: public FullscreenControllerTest { | |
24 }; | |
25 | |
26 IN_PROC_BROWSER_TEST_F(FullscreenControllerTest, | 19 IN_PROC_BROWSER_TEST_F(FullscreenControllerTest, |
27 PendingMouseLockExitsOnTabSwitch) { | 20 PendingMouseLockExitsOnTabSwitch) { |
28 AddTabAtIndex(0, GURL(url::kAboutBlankURL), PAGE_TRANSITION_TYPED); | 21 AddTabAtIndex(0, GURL(url::kAboutBlankURL), PAGE_TRANSITION_TYPED); |
29 AddTabAtIndex(0, GURL(url::kAboutBlankURL), PAGE_TRANSITION_TYPED); | 22 AddTabAtIndex(0, GURL(url::kAboutBlankURL), PAGE_TRANSITION_TYPED); |
30 WebContents* tab1 = browser()->tab_strip_model()->GetActiveWebContents(); | 23 WebContents* tab1 = browser()->tab_strip_model()->GetActiveWebContents(); |
31 | 24 |
32 // Request mouse lock. Bubble is displayed. | 25 // Request mouse lock. Bubble is displayed. |
33 RequestToLockMouse(true, false); | 26 RequestToLockMouse(true, false); |
34 ASSERT_TRUE(IsFullscreenBubbleDisplayed()); | 27 ASSERT_TRUE(IsFullscreenBubbleDisplayed()); |
35 | 28 |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
67 ASSERT_TRUE(IsFullscreenBubbleDisplayed()); | 60 ASSERT_TRUE(IsFullscreenBubbleDisplayed()); |
68 | 61 |
69 // Close tab. Bubble is cleared. | 62 // Close tab. Bubble is cleared. |
70 { | 63 { |
71 MouseLockNotificationObserver mouse_lock_observer; | 64 MouseLockNotificationObserver mouse_lock_observer; |
72 chrome::CloseTab(browser()); | 65 chrome::CloseTab(browser()); |
73 mouse_lock_observer.Wait(); | 66 mouse_lock_observer.Wait(); |
74 } | 67 } |
75 ASSERT_FALSE(IsFullscreenBubbleDisplayed()); | 68 ASSERT_FALSE(IsFullscreenBubbleDisplayed()); |
76 } | 69 } |
| 70 |
| 71 IN_PROC_BROWSER_TEST_F(FullscreenControllerTest, MouseLockOnFileURL) { |
| 72 static const base::FilePath::CharType* kEmptyFile = |
| 73 FILE_PATH_LITERAL("empty.html"); |
| 74 GURL file_url(ui_test_utils::GetTestUrl( |
| 75 base::FilePath(base::FilePath::kCurrentDirectory), |
| 76 base::FilePath(kEmptyFile))); |
| 77 AddTabAtIndex(0, file_url, PAGE_TRANSITION_TYPED); |
| 78 RequestToLockMouse(true, false); |
| 79 ASSERT_TRUE(IsFullscreenBubbleDisplayed()); |
| 80 ASSERT_TRUE(IsFullscreenBubbleDisplayingButtons()); |
| 81 } |
| 82 |
| 83 IN_PROC_BROWSER_TEST_F(FullscreenControllerTest, FullscreenOnFileURL) { |
| 84 static const base::FilePath::CharType* kEmptyFile = |
| 85 FILE_PATH_LITERAL("empty.html"); |
| 86 GURL file_url(ui_test_utils::GetTestUrl( |
| 87 base::FilePath(base::FilePath::kCurrentDirectory), |
| 88 base::FilePath(kEmptyFile))); |
| 89 AddTabAtIndex(0, file_url, PAGE_TRANSITION_TYPED); |
| 90 RequestToLockMouse(true, false); |
| 91 ASSERT_TRUE(IsFullscreenBubbleDisplayed()); |
| 92 ASSERT_TRUE(IsFullscreenBubbleDisplayingButtons()); |
| 93 } |
OLD | NEW |