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/utf_string_conversions.h" | 6 #include "base/utf_string_conversions.h" |
7 #include "chrome/browser/download/download_service.h" | 7 #include "chrome/browser/download/download_service.h" |
8 #include "chrome/browser/download/download_service_factory.h" | 8 #include "chrome/browser/download/download_service_factory.h" |
9 #include "chrome/browser/net/url_request_mock_util.h" | 9 #include "chrome/browser/net/url_request_mock_util.h" |
10 #include "chrome/browser/prefs/browser_prefs.h" | 10 #include "chrome/browser/prefs/browser_prefs.h" |
11 #include "chrome/browser/prefs/pref_service.h" | 11 #include "chrome/browser/prefs/pref_service.h" |
12 #include "chrome/browser/profiles/profile.h" | 12 #include "chrome/browser/profiles/profile.h" |
13 #include "chrome/browser/ui/app_modal_dialogs/app_modal_dialog.h" | 13 #include "chrome/browser/ui/app_modal_dialogs/app_modal_dialog.h" |
14 #include "chrome/browser/ui/app_modal_dialogs/native_app_modal_dialog.h" | 14 #include "chrome/browser/ui/app_modal_dialogs/native_app_modal_dialog.h" |
15 #include "chrome/browser/ui/browser_commands.h" | 15 #include "chrome/browser/ui/browser_commands.h" |
16 #include "chrome/browser/ui/browser_finder.h" | 16 #include "chrome/browser/ui/browser_finder.h" |
17 #include "chrome/browser/ui/browser_list.h" | 17 #include "chrome/browser/ui/browser_list.h" |
| 18 #include "chrome/browser/ui/browser_tabstrip.h" |
18 #include "chrome/browser/ui/browser_window.h" | 19 #include "chrome/browser/ui/browser_window.h" |
19 #include "chrome/browser/ui/find_bar/find_bar.h" | 20 #include "chrome/browser/ui/find_bar/find_bar.h" |
20 #include "chrome/browser/ui/find_bar/find_bar_controller.h" | 21 #include "chrome/browser/ui/find_bar/find_bar_controller.h" |
21 #include "chrome/browser/ui/panels/base_panel_browser_test.h" | 22 #include "chrome/browser/ui/panels/base_panel_browser_test.h" |
22 #include "chrome/browser/ui/panels/docked_panel_strip.h" | 23 #include "chrome/browser/ui/panels/docked_panel_strip.h" |
23 #include "chrome/browser/ui/panels/native_panel.h" | 24 #include "chrome/browser/ui/panels/native_panel.h" |
24 #include "chrome/browser/ui/panels/panel.h" | 25 #include "chrome/browser/ui/panels/panel.h" |
25 #include "chrome/browser/ui/panels/panel_manager.h" | 26 #include "chrome/browser/ui/panels/panel_manager.h" |
26 #include "chrome/browser/ui/panels/test_panel_mouse_watcher.h" | 27 #include "chrome/browser/ui/panels/test_panel_mouse_watcher.h" |
27 #include "chrome/browser/ui/tabs/tab_strip_model.h" | 28 #include "chrome/browser/ui/tabs/tab_strip_model.h" |
(...skipping 1382 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1410 CreatePanelParams params("PanelTest1", gfx::Rect(), SHOW_AS_ACTIVE); | 1411 CreatePanelParams params("PanelTest1", gfx::Rect(), SHOW_AS_ACTIVE); |
1411 Panel* panel = CreatePanelWithParams(params); | 1412 Panel* panel = CreatePanelWithParams(params); |
1412 Browser* panel_browser = panel->browser(); | 1413 Browser* panel_browser = panel->browser(); |
1413 EXPECT_EQ(2U, BrowserList::size()); | 1414 EXPECT_EQ(2U, BrowserList::size()); |
1414 | 1415 |
1415 // Swap tab contents over to the panel from the tabbed browser. | 1416 // Swap tab contents over to the panel from the tabbed browser. |
1416 TabContents* contents = browser()->tab_strip_model()->DetachTabContentsAt(0); | 1417 TabContents* contents = browser()->tab_strip_model()->DetachTabContentsAt(0); |
1417 panel_browser->tab_strip_model()->InsertTabContentsAt( | 1418 panel_browser->tab_strip_model()->InsertTabContentsAt( |
1418 0, contents, TabStripModel::ADD_NONE); | 1419 0, contents, TabStripModel::ADD_NONE); |
1419 chrome::SelectNumberedTab(panel_browser, 0); | 1420 chrome::SelectNumberedTab(panel_browser, 0); |
1420 EXPECT_EQ(contents, panel_browser->GetActiveTabContents()); | 1421 EXPECT_EQ(contents, chrome::GetActiveTabContents(panel_browser)); |
1421 EXPECT_EQ(1, PanelManager::GetInstance()->num_panels()); | 1422 EXPECT_EQ(1, PanelManager::GetInstance()->num_panels()); |
1422 | 1423 |
1423 // Ensure that the tab contents were noticed by the panel by | 1424 // Ensure that the tab contents were noticed by the panel by |
1424 // verifying that the panel auto resizes correctly. (Panel | 1425 // verifying that the panel auto resizes correctly. (Panel |
1425 // enables auto resizing when tab contents are detected.) | 1426 // enables auto resizing when tab contents are detected.) |
1426 int initial_width = panel->GetBounds().width(); | 1427 int initial_width = panel->GetBounds().width(); |
1427 ui_test_utils::WindowedNotificationObserver enlarge( | 1428 ui_test_utils::WindowedNotificationObserver enlarge( |
1428 chrome::NOTIFICATION_PANEL_BOUNDS_ANIMATIONS_FINISHED, | 1429 chrome::NOTIFICATION_PANEL_BOUNDS_ANIMATIONS_FINISHED, |
1429 content::Source<Panel>(panel)); | 1430 content::Source<Panel>(panel)); |
1430 EXPECT_TRUE(ui_test_utils::ExecuteJavaScript( | 1431 EXPECT_TRUE(ui_test_utils::ExecuteJavaScript( |
1431 panel_browser->GetActiveWebContents()->GetRenderViewHost(), | 1432 chrome::GetActiveWebContents(panel_browser)->GetRenderViewHost(), |
1432 std::wstring(), | 1433 std::wstring(), |
1433 L"changeSize(50);")); | 1434 L"changeSize(50);")); |
1434 enlarge.Wait(); | 1435 enlarge.Wait(); |
1435 EXPECT_GT(panel->GetBounds().width(), initial_width); | 1436 EXPECT_GT(panel->GetBounds().width(), initial_width); |
1436 | 1437 |
1437 // Swapping tab contents back to the browser should close the panel. | 1438 // Swapping tab contents back to the browser should close the panel. |
1438 ui_test_utils::WindowedNotificationObserver signal( | 1439 ui_test_utils::WindowedNotificationObserver signal( |
1439 chrome::NOTIFICATION_PANEL_CLOSED, | 1440 chrome::NOTIFICATION_PANEL_CLOSED, |
1440 content::Source<Panel>(panel)); | 1441 content::Source<Panel>(panel)); |
1441 chrome::ConvertPopupToTabbedBrowser(panel_browser); | 1442 chrome::ConvertPopupToTabbedBrowser(panel_browser); |
1442 signal.Wait(); | 1443 signal.Wait(); |
1443 EXPECT_EQ(0, PanelManager::GetInstance()->num_panels()); | 1444 EXPECT_EQ(0, PanelManager::GetInstance()->num_panels()); |
1444 | 1445 |
1445 Browser* tabbed_browser = browser::FindTabbedBrowser(profile, false); | 1446 Browser* tabbed_browser = browser::FindTabbedBrowser(profile, false); |
1446 EXPECT_EQ(contents, tabbed_browser->GetActiveTabContents()); | 1447 EXPECT_EQ(contents, chrome::GetActiveTabContents(tabbed_browser)); |
1447 tabbed_browser->window()->Close(); | 1448 tabbed_browser->window()->Close(); |
1448 } | 1449 } |
1449 | 1450 |
1450 IN_PROC_BROWSER_TEST_F(PanelBrowserTest, SizeClamping) { | 1451 IN_PROC_BROWSER_TEST_F(PanelBrowserTest, SizeClamping) { |
1451 // Using '0' sizes is equivalent of not providing sizes in API and causes | 1452 // Using '0' sizes is equivalent of not providing sizes in API and causes |
1452 // minimum sizes to be applied to facilitate auto-sizing. | 1453 // minimum sizes to be applied to facilitate auto-sizing. |
1453 CreatePanelParams params("Panel", gfx::Rect(), SHOW_AS_ACTIVE); | 1454 CreatePanelParams params("Panel", gfx::Rect(), SHOW_AS_ACTIVE); |
1454 Panel* panel = CreatePanelWithParams(params); | 1455 Panel* panel = CreatePanelWithParams(params); |
1455 EXPECT_EQ(panel->min_size().width(), panel->GetBounds().width()); | 1456 EXPECT_EQ(panel->min_size().width(), panel->GetBounds().width()); |
1456 EXPECT_EQ(panel->min_size().height(), panel->GetBounds().height()); | 1457 EXPECT_EQ(panel->min_size().height(), panel->GetBounds().height()); |
(...skipping 281 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1738 ASSERT_TRUE(tabbed_browser->window()->IsDownloadShelfVisible()); | 1739 ASSERT_TRUE(tabbed_browser->window()->IsDownloadShelfVisible()); |
1739 chrome::CloseWindow(tabbed_browser); | 1740 chrome::CloseWindow(tabbed_browser); |
1740 | 1741 |
1741 EXPECT_EQ(1, panel_browser->tab_count()); | 1742 EXPECT_EQ(1, panel_browser->tab_count()); |
1742 ASSERT_FALSE(panel_browser->window()->IsDownloadShelfVisible()); | 1743 ASSERT_FALSE(panel_browser->window()->IsDownloadShelfVisible()); |
1743 | 1744 |
1744 chrome::CloseWindow(panel_browser); | 1745 chrome::CloseWindow(panel_browser); |
1745 } | 1746 } |
1746 | 1747 |
1747 #endif // OS_MACOSX | 1748 #endif // OS_MACOSX |
OLD | NEW |