| Index: chrome/browser/ui/panels/docked_panel_browsertest.cc
|
| diff --git a/chrome/browser/ui/panels/docked_panel_browsertest.cc b/chrome/browser/ui/panels/docked_panel_browsertest.cc
|
| deleted file mode 100644
|
| index 44cd09129ecbfa34535d022c910fdf9e0deb8045..0000000000000000000000000000000000000000
|
| --- a/chrome/browser/ui/panels/docked_panel_browsertest.cc
|
| +++ /dev/null
|
| @@ -1,274 +0,0 @@
|
| -// Copyright (c) 2012 The Chromium Authors. All rights reserved.
|
| -// Use of this source code is governed by a BSD-style license that can be
|
| -// found in the LICENSE file.
|
| -
|
| -#include "base/message_loop/message_loop.h"
|
| -#include "build/build_config.h"
|
| -#include "chrome/browser/chrome_notification_types.h"
|
| -#include "chrome/browser/ui/panels/base_panel_browser_test.h"
|
| -#include "chrome/browser/ui/panels/docked_panel_collection.h"
|
| -#include "chrome/browser/ui/panels/panel.h"
|
| -#include "chrome/browser/ui/panels/panel_manager.h"
|
| -#include "chrome/browser/ui/panels/test_panel_collection_squeeze_observer.h"
|
| -#include "content/public/browser/notification_service.h"
|
| -#include "content/public/test/test_utils.h"
|
| -
|
| -class DockedPanelBrowserTest : public BasePanelBrowserTest {
|
| - public:
|
| - void SetUpOnMainThread() override {
|
| - BasePanelBrowserTest::SetUpOnMainThread();
|
| -
|
| - // All the tests here assume using mocked 800x600 display area for the
|
| - // primary monitor. Do the check now.
|
| - gfx::Rect primary_display_area = PanelManager::GetInstance()->
|
| - display_settings_provider()->GetPrimaryDisplayArea();
|
| - DCHECK(primary_display_area.width() == 800);
|
| - DCHECK(primary_display_area.height() == 600);
|
| - }
|
| -};
|
| -
|
| -// http://crbug.com/143247
|
| -#if !defined(OS_WIN)
|
| -#define MAYBE_SqueezePanelsInDock DISABLED_SqueezePanelsInDock
|
| -#else
|
| -#define MAYBE_SqueezePanelsInDock SqueezePanelsInDock
|
| -#endif
|
| -IN_PROC_BROWSER_TEST_F(DockedPanelBrowserTest, MAYBE_SqueezePanelsInDock) {
|
| - PanelManager* panel_manager = PanelManager::GetInstance();
|
| - DockedPanelCollection* docked_collection = panel_manager->docked_collection();
|
| -
|
| - // Create some docked panels.
|
| - Panel* panel1 = CreateInactiveDockedPanel("1", gfx::Rect(0, 0, 200, 100));
|
| - Panel* panel2 = CreateInactiveDockedPanel("2", gfx::Rect(0, 0, 200, 100));
|
| - Panel* panel3 = CreateInactiveDockedPanel("3", gfx::Rect(0, 0, 200, 100));
|
| - ASSERT_EQ(3, docked_collection->num_panels());
|
| -
|
| - // Check that nothing has been squeezed so far.
|
| - EXPECT_EQ(panel1->GetBounds().width(), panel1->GetRestoredBounds().width());
|
| - EXPECT_EQ(panel2->GetBounds().width(), panel2->GetRestoredBounds().width());
|
| - EXPECT_EQ(panel3->GetBounds().width(), panel3->GetRestoredBounds().width());
|
| -
|
| - // Create more panels so they start getting squeezed.
|
| - Panel* panel4 = CreateInactiveDockedPanel("4", gfx::Rect(0, 0, 200, 100));
|
| - Panel* panel5 = CreateInactiveDockedPanel("5", gfx::Rect(0, 0, 200, 100));
|
| - Panel* panel6 = CreateInactiveDockedPanel("6", gfx::Rect(0, 0, 200, 100));
|
| - Panel* panel7 = CreateDockedPanel("7", gfx::Rect(0, 0, 200, 100));
|
| -
|
| - // Wait for active states to settle.
|
| - PanelCollectionSqueezeObserver panel7_settled(docked_collection, panel7);
|
| - panel7_settled.Wait();
|
| -
|
| - // The active panel should be at full width.
|
| - EXPECT_EQ(panel7->GetBounds().width(), panel7->GetRestoredBounds().width());
|
| - EXPECT_GT(panel7->GetBounds().x(), docked_collection->work_area().x());
|
| -
|
| - // The rest of them should be at reduced width.
|
| - EXPECT_LT(panel1->GetBounds().width(), panel1->GetRestoredBounds().width());
|
| - EXPECT_LT(panel2->GetBounds().width(), panel2->GetRestoredBounds().width());
|
| - EXPECT_LT(panel3->GetBounds().width(), panel3->GetRestoredBounds().width());
|
| - EXPECT_LT(panel4->GetBounds().width(), panel4->GetRestoredBounds().width());
|
| - EXPECT_LT(panel5->GetBounds().width(), panel5->GetRestoredBounds().width());
|
| - EXPECT_LT(panel6->GetBounds().width(), panel6->GetRestoredBounds().width());
|
| -
|
| - // Activate a different panel.
|
| - ActivatePanel(panel2);
|
| - WaitForPanelActiveState(panel2, SHOW_AS_ACTIVE);
|
| -
|
| - // Wait for active states to settle.
|
| - PanelCollectionSqueezeObserver panel2_settled(docked_collection, panel2);
|
| - panel2_settled.Wait();
|
| -
|
| - // The active panel should be at full width.
|
| - EXPECT_EQ(panel2->GetBounds().width(), panel2->GetRestoredBounds().width());
|
| -
|
| - // The rest of them should be at reduced width.
|
| - EXPECT_LT(panel1->GetBounds().width(), panel1->GetRestoredBounds().width());
|
| - EXPECT_LT(panel3->GetBounds().width(), panel3->GetRestoredBounds().width());
|
| - EXPECT_LT(panel4->GetBounds().width(), panel4->GetRestoredBounds().width());
|
| - EXPECT_LT(panel5->GetBounds().width(), panel5->GetRestoredBounds().width());
|
| - EXPECT_LT(panel6->GetBounds().width(), panel6->GetRestoredBounds().width());
|
| - EXPECT_LT(panel7->GetBounds().width(), panel7->GetRestoredBounds().width());
|
| -
|
| - panel_manager->CloseAll();
|
| -}
|
| -
|
| -#if defined(OS_LINUX)
|
| -// http://crbug.com/396484
|
| -#define MAYBE_SqueezeAndThenSomeMore DISABLED_SqueezeAndThenSomeMore
|
| -#else
|
| -#define MAYBE_SqueezeAndThenSomeMore SqueezeAndThenSomeMore
|
| -#endif
|
| -IN_PROC_BROWSER_TEST_F(DockedPanelBrowserTest, MAYBE_SqueezeAndThenSomeMore) {
|
| - PanelManager* panel_manager = PanelManager::GetInstance();
|
| - DockedPanelCollection* docked_collection = panel_manager->docked_collection();
|
| -
|
| - // Create enough docked panels to get into squeezing.
|
| - Panel* panel1 = CreateInactiveDockedPanel("1", gfx::Rect(0, 0, 200, 100));
|
| - Panel* panel2 = CreateInactiveDockedPanel("2", gfx::Rect(0, 0, 200, 100));
|
| - Panel* panel3 = CreateInactiveDockedPanel("3", gfx::Rect(0, 0, 200, 100));
|
| - Panel* panel4 = CreateInactiveDockedPanel("4", gfx::Rect(0, 0, 200, 100));
|
| - Panel* panel5 = CreateInactiveDockedPanel("5", gfx::Rect(0, 0, 200, 100));
|
| - Panel* panel6 = CreateInactiveDockedPanel("6", gfx::Rect(0, 0, 200, 100));
|
| -
|
| - // Wait for active states to settle.
|
| - PanelCollectionSqueezeObserver panel6_settled(docked_collection, panel6);
|
| - panel6_settled.Wait();
|
| -
|
| - // Record current widths of some panels.
|
| - int panel_1_width_less_squeezed = panel1->GetBounds().width();
|
| - int panel_2_width_less_squeezed = panel2->GetBounds().width();
|
| - int panel_3_width_less_squeezed = panel3->GetBounds().width();
|
| - int panel_4_width_less_squeezed = panel4->GetBounds().width();
|
| - int panel_5_width_less_squeezed = panel5->GetBounds().width();
|
| -
|
| - // These widths should be reduced.
|
| - EXPECT_LT(panel_1_width_less_squeezed, panel1->GetRestoredBounds().width());
|
| - EXPECT_LT(panel_2_width_less_squeezed, panel2->GetRestoredBounds().width());
|
| - EXPECT_LT(panel_3_width_less_squeezed, panel3->GetRestoredBounds().width());
|
| - EXPECT_LT(panel_4_width_less_squeezed, panel4->GetRestoredBounds().width());
|
| - EXPECT_LT(panel_5_width_less_squeezed, panel5->GetRestoredBounds().width());
|
| -
|
| - Panel* panel7 = CreateDockedPanel("7", gfx::Rect(0, 0, 200, 100));
|
| -
|
| - // Wait for active states to settle.
|
| - PanelCollectionSqueezeObserver panel7_settled(docked_collection, panel7);
|
| - panel7_settled.Wait();
|
| -
|
| - // The active panel should be at full width.
|
| - EXPECT_EQ(panel7->GetBounds().width(), panel7->GetRestoredBounds().width());
|
| -
|
| - // The panels should shrink in width.
|
| - EXPECT_LT(panel1->GetBounds().width(), panel_1_width_less_squeezed);
|
| - EXPECT_LT(panel2->GetBounds().width(), panel_2_width_less_squeezed);
|
| - EXPECT_LT(panel3->GetBounds().width(), panel_3_width_less_squeezed);
|
| - EXPECT_LT(panel4->GetBounds().width(), panel_4_width_less_squeezed);
|
| - EXPECT_LT(panel5->GetBounds().width(), panel_5_width_less_squeezed);
|
| -
|
| - panel_manager->CloseAll();
|
| -}
|
| -
|
| -IN_PROC_BROWSER_TEST_F(DockedPanelBrowserTest, MinimizeSqueezedActive) {
|
| - PanelManager* panel_manager = PanelManager::GetInstance();
|
| - DockedPanelCollection* docked_collection = panel_manager->docked_collection();
|
| -
|
| - // Create enough docked panels to get into squeezing.
|
| - Panel* panel1 = CreateInactiveDockedPanel("1", gfx::Rect(0, 0, 200, 100));
|
| - Panel* panel2 = CreateInactiveDockedPanel("2", gfx::Rect(0, 0, 200, 100));
|
| - Panel* panel3 = CreateInactiveDockedPanel("3", gfx::Rect(0, 0, 200, 100));
|
| - Panel* panel4 = CreateInactiveDockedPanel("4", gfx::Rect(0, 0, 200, 100));
|
| - Panel* panel5 = CreateInactiveDockedPanel("5", gfx::Rect(0, 0, 200, 100));
|
| - Panel* panel6 = CreateInactiveDockedPanel("6", gfx::Rect(0, 0, 200, 100));
|
| - Panel* panel7 = CreateDockedPanel("7", gfx::Rect(0, 0, 200, 100));
|
| -
|
| - // Wait for active states to settle.
|
| - PanelCollectionSqueezeObserver panel7_settled(docked_collection, panel7);
|
| - panel7_settled.Wait();
|
| -
|
| - // The active panel should be at full width.
|
| - EXPECT_EQ(panel7->GetBounds().width(), panel7->GetRestoredBounds().width());
|
| -
|
| - // The rest of them should be at reduced width.
|
| - EXPECT_LT(panel1->GetBounds().width(), panel1->GetRestoredBounds().width());
|
| - EXPECT_LT(panel2->GetBounds().width(), panel2->GetRestoredBounds().width());
|
| - EXPECT_LT(panel3->GetBounds().width(), panel3->GetRestoredBounds().width());
|
| - EXPECT_LT(panel4->GetBounds().width(), panel4->GetRestoredBounds().width());
|
| - EXPECT_LT(panel5->GetBounds().width(), panel5->GetRestoredBounds().width());
|
| - EXPECT_LT(panel6->GetBounds().width(), panel6->GetRestoredBounds().width());
|
| -
|
| - // Record the width of an inactive panel and minimize it.
|
| - int width_of_panel3_squeezed = panel3->GetBounds().width();
|
| - panel3->Minimize();
|
| -
|
| - // Check that this panel is still at the same width.
|
| - EXPECT_EQ(width_of_panel3_squeezed, panel3->GetBounds().width());
|
| -
|
| - // Minimize the active panel. It should become inactive and shrink in width.
|
| - content::WindowedNotificationObserver signal(
|
| - chrome::NOTIFICATION_PANEL_COLLECTION_UPDATED,
|
| - content::NotificationService::AllSources());
|
| - panel7->Minimize();
|
| -
|
| - // Wait for active states to settle.
|
| - WaitForPanelActiveState(panel7, SHOW_AS_INACTIVE);
|
| -
|
| - // Wait for the scheduled layout to run.
|
| - signal.Wait();
|
| -
|
| - // The minimized panel should now be at reduced width.
|
| - EXPECT_LT(panel7->GetBounds().width(), panel7->GetRestoredBounds().width());
|
| -
|
| - panel_manager->CloseAll();
|
| -}
|
| -
|
| -IN_PROC_BROWSER_TEST_F(DockedPanelBrowserTest, CloseSqueezedPanels) {
|
| - PanelManager* panel_manager = PanelManager::GetInstance();
|
| - DockedPanelCollection* docked_collection = panel_manager->docked_collection();
|
| -
|
| - // Create enough docked panels to get into squeezing.
|
| - Panel* panel1 = CreateInactiveDockedPanel("1", gfx::Rect(0, 0, 200, 100));
|
| - Panel* panel2 = CreateInactiveDockedPanel("2", gfx::Rect(0, 0, 200, 100));
|
| - Panel* panel3 = CreateInactiveDockedPanel("3", gfx::Rect(0, 0, 200, 100));
|
| - Panel* panel4 = CreateInactiveDockedPanel("4", gfx::Rect(0, 0, 200, 100));
|
| - Panel* panel5 = CreateInactiveDockedPanel("5", gfx::Rect(0, 0, 200, 100));
|
| - Panel* panel6 = CreateInactiveDockedPanel("6", gfx::Rect(0, 0, 200, 100));
|
| - Panel* panel7 = CreateDockedPanel("7", gfx::Rect(0, 0, 200, 100));
|
| -
|
| - // Wait for active states to settle.
|
| - PanelCollectionSqueezeObserver panel7_settled(docked_collection, panel7);
|
| - panel7_settled.Wait();
|
| -
|
| - // Record current widths of some panels.
|
| - int panel_1_orig_width = panel1->GetBounds().width();
|
| - int panel_2_orig_width = panel2->GetBounds().width();
|
| - int panel_3_orig_width = panel3->GetBounds().width();
|
| - int panel_4_orig_width = panel4->GetBounds().width();
|
| - int panel_5_orig_width = panel5->GetBounds().width();
|
| - int panel_6_orig_width = panel6->GetBounds().width();
|
| - int panel_7_orig_width = panel7->GetBounds().width();
|
| -
|
| - // The active panel should be at full width.
|
| - EXPECT_EQ(panel_7_orig_width, panel7->GetRestoredBounds().width());
|
| -
|
| - // The rest of them should be at reduced width.
|
| - EXPECT_LT(panel_1_orig_width, panel1->GetRestoredBounds().width());
|
| - EXPECT_LT(panel_2_orig_width, panel2->GetRestoredBounds().width());
|
| - EXPECT_LT(panel_3_orig_width, panel3->GetRestoredBounds().width());
|
| - EXPECT_LT(panel_4_orig_width, panel4->GetRestoredBounds().width());
|
| - EXPECT_LT(panel_5_orig_width, panel5->GetRestoredBounds().width());
|
| - EXPECT_LT(panel_6_orig_width, panel6->GetRestoredBounds().width());
|
| -
|
| - // Close one panel.
|
| - content::WindowedNotificationObserver signal(
|
| - chrome::NOTIFICATION_PANEL_COLLECTION_UPDATED,
|
| - content::NotificationService::AllSources());
|
| - CloseWindowAndWait(panel2);
|
| - signal.Wait();
|
| -
|
| - // The widths of the remaining panels should have increased.
|
| - EXPECT_GT(panel1->GetBounds().width(), panel_1_orig_width);
|
| - EXPECT_GT(panel3->GetBounds().width(), panel_3_orig_width);
|
| - EXPECT_GT(panel4->GetBounds().width(), panel_4_orig_width);
|
| - EXPECT_GT(panel5->GetBounds().width(), panel_5_orig_width);
|
| - EXPECT_GT(panel6->GetBounds().width(), panel_6_orig_width);
|
| -
|
| - // The active panel should have stayed at full width.
|
| - EXPECT_EQ(panel7->GetBounds().width(), panel_7_orig_width);
|
| -
|
| - // Close several panels.
|
| - CloseWindowAndWait(panel3);
|
| - CloseWindowAndWait(panel5);
|
| -
|
| - // Wait for collection update after last close.
|
| - content::WindowedNotificationObserver signal2(
|
| - chrome::NOTIFICATION_PANEL_COLLECTION_UPDATED,
|
| - content::NotificationService::AllSources());
|
| - CloseWindowAndWait(panel7);
|
| - signal2.Wait();
|
| -
|
| - // We should not have squeezing any more; all panels should be at full width.
|
| - EXPECT_EQ(panel1->GetBounds().width(), panel1->GetRestoredBounds().width());
|
| - EXPECT_EQ(panel4->GetBounds().width(), panel4->GetRestoredBounds().width());
|
| - EXPECT_EQ(panel6->GetBounds().width(), panel6->GetRestoredBounds().width());
|
| -
|
| - panel_manager->CloseAll();
|
| -}
|
|
|