Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(36)

Side by Side Diff: chrome/browser/ui/panels/detached_panel_browsertest.cc

Issue 9560002: Cleanup to keep panel from manipulating its panel strip assignment directly. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: addressed final nits Created 8 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | chrome/browser/ui/panels/detached_panel_strip.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 "chrome/browser/ui/panels/base_panel_browser_test.h" 5 #include "chrome/browser/ui/panels/base_panel_browser_test.h"
6 #include "chrome/browser/ui/panels/detached_panel_strip.h" 6 #include "chrome/browser/ui/panels/detached_panel_strip.h"
7 #include "chrome/browser/ui/panels/native_panel.h" 7 #include "chrome/browser/ui/panels/native_panel.h"
8 #include "chrome/browser/ui/panels/panel.h" 8 #include "chrome/browser/ui/panels/panel.h"
9 #include "chrome/browser/ui/panels/panel_drag_controller.h" 9 #include "chrome/browser/ui/panels/panel_drag_controller.h"
10 #include "chrome/browser/ui/panels/panel_manager.h" 10 #include "chrome/browser/ui/panels/panel_manager.h"
11 11
12 class DetachedPanelBrowserTest : public BasePanelBrowserTest { 12 class DetachedPanelBrowserTest : public BasePanelBrowserTest {
13 }; 13 };
14 14
15 IN_PROC_BROWSER_TEST_F(DetachedPanelBrowserTest, 15 IN_PROC_BROWSER_TEST_F(DetachedPanelBrowserTest, CheckDetachedPanelProperties) {
16 DISABLED_CheckDetachedPanelProperties) {
17 PanelManager* panel_manager = PanelManager::GetInstance(); 16 PanelManager* panel_manager = PanelManager::GetInstance();
18 DetachedPanelStrip* detached_strip = panel_manager->detached_strip(); 17 DetachedPanelStrip* detached_strip = panel_manager->detached_strip();
19 18
20 // Create 2 panels. 19 // Create 2 panels.
21 Panel* panel1 = CreatePanelWithBounds("Panel1", gfx::Rect(0, 0, 250, 200)); 20 Panel* panel1 = CreatePanelWithBounds("Panel1", gfx::Rect(0, 0, 250, 200));
22 Panel* panel2 = CreatePanelWithBounds("Panel2", gfx::Rect(0, 0, 300, 200)); 21 Panel* panel2 = CreatePanelWithBounds("Panel2", gfx::Rect(0, 0, 300, 200));
23 22
24 EXPECT_TRUE(panel1->draggable()); 23 EXPECT_TRUE(panel1->draggable());
25 EXPECT_TRUE(panel2->draggable()); 24 EXPECT_TRUE(panel2->draggable());
26 25
27 // Move panels to detached strip. 26 // Move panels to detached strip.
28 EXPECT_EQ(2, panel_manager->num_panels()); 27 EXPECT_EQ(2, panel_manager->num_panels());
29 EXPECT_EQ(0, detached_strip->num_panels()); 28 EXPECT_EQ(0, detached_strip->num_panels());
30 panel1->MoveToStrip(detached_strip); 29 panel_manager->MovePanelToStrip(panel1, PanelStrip::DETACHED);
31 panel2->MoveToStrip(detached_strip); 30 panel_manager->MovePanelToStrip(panel2, PanelStrip::DETACHED);
32 EXPECT_EQ(2, panel_manager->num_panels()); 31 EXPECT_EQ(2, panel_manager->num_panels());
33 EXPECT_EQ(2, detached_strip->num_panels()); 32 EXPECT_EQ(2, detached_strip->num_panels());
34 33
35 std::vector<Panel*> panels = panel_manager->panels(); 34 EXPECT_TRUE(detached_strip->HasPanel(panel1));
36 EXPECT_EQ(panel1, panels[0]); 35 EXPECT_TRUE(detached_strip->HasPanel(panel2));
37 EXPECT_EQ(panel2, panels[1]);
38 36
39 EXPECT_TRUE(panel1->draggable()); 37 EXPECT_TRUE(panel1->draggable());
40 EXPECT_TRUE(panel2->draggable()); 38 EXPECT_TRUE(panel2->draggable());
41 39
42 panel_manager->CloseAll(); 40 panel_manager->CloseAll();
43 } 41 }
44 42
45 IN_PROC_BROWSER_TEST_F(DetachedPanelBrowserTest, DragDetachedPanel) { 43 IN_PROC_BROWSER_TEST_F(DetachedPanelBrowserTest, DragDetachedPanel) {
46 PanelManager* panel_manager = PanelManager::GetInstance(); 44 PanelManager* panel_manager = PanelManager::GetInstance();
47 DetachedPanelStrip* detached_strip = panel_manager->detached_strip();
48 45
49 // Create one detached panel. 46 // Create one detached panel.
50 Panel* panel = CreatePanelWithBounds("Panel1", gfx::Rect(0, 0, 250, 200)); 47 Panel* panel = CreatePanelWithBounds("Panel1", gfx::Rect(0, 0, 250, 200));
51 panel->MoveToStrip(detached_strip); 48 panel_manager->MovePanelToStrip(panel, PanelStrip::DETACHED);
52 49
53 // Test that the detached panel can be dragged anywhere. 50 // Test that the detached panel can be dragged anywhere.
54 scoped_ptr<NativePanelTesting> panel_testing( 51 scoped_ptr<NativePanelTesting> panel_testing(
55 NativePanelTesting::Create(panel->native_panel())); 52 NativePanelTesting::Create(panel->native_panel()));
56 gfx::Point origin = panel->GetBounds().origin(); 53 gfx::Point origin = panel->GetBounds().origin();
57 54
58 panel_testing->PressLeftMouseButtonTitlebar(origin); 55 panel_testing->PressLeftMouseButtonTitlebar(origin);
59 EXPECT_EQ(origin, panel->GetBounds().origin()); 56 EXPECT_EQ(origin, panel->GetBounds().origin());
60 57
61 panel_testing->DragTitlebar(-51, 102); 58 panel_testing->DragTitlebar(-51, 102);
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
94 IN_PROC_BROWSER_TEST_F(DetachedPanelBrowserTest, CloseDetachedPanelOnDrag) { 91 IN_PROC_BROWSER_TEST_F(DetachedPanelBrowserTest, CloseDetachedPanelOnDrag) {
95 PanelManager* panel_manager = PanelManager::GetInstance(); 92 PanelManager* panel_manager = PanelManager::GetInstance();
96 PanelDragController* drag_controller = panel_manager->drag_controller(); 93 PanelDragController* drag_controller = panel_manager->drag_controller();
97 DetachedPanelStrip* detached_strip = panel_manager->detached_strip(); 94 DetachedPanelStrip* detached_strip = panel_manager->detached_strip();
98 95
99 // Create 4 detached panels. 96 // Create 4 detached panels.
100 Panel* panel1 = CreatePanelWithBounds("Panel1", gfx::Rect(0, 0, 100, 100)); 97 Panel* panel1 = CreatePanelWithBounds("Panel1", gfx::Rect(0, 0, 100, 100));
101 Panel* panel2 = CreatePanelWithBounds("Panel2", gfx::Rect(0, 0, 110, 110)); 98 Panel* panel2 = CreatePanelWithBounds("Panel2", gfx::Rect(0, 0, 110, 110));
102 Panel* panel3 = CreatePanelWithBounds("Panel3", gfx::Rect(0, 0, 120, 120)); 99 Panel* panel3 = CreatePanelWithBounds("Panel3", gfx::Rect(0, 0, 120, 120));
103 Panel* panel4 = CreatePanelWithBounds("Panel4", gfx::Rect(0, 0, 130, 130)); 100 Panel* panel4 = CreatePanelWithBounds("Panel4", gfx::Rect(0, 0, 130, 130));
104 panel1->MoveToStrip(detached_strip); 101 panel_manager->MovePanelToStrip(panel1, PanelStrip::DETACHED);
105 panel2->MoveToStrip(detached_strip); 102 panel_manager->MovePanelToStrip(panel2, PanelStrip::DETACHED);
106 panel3->MoveToStrip(detached_strip); 103 panel_manager->MovePanelToStrip(panel3, PanelStrip::DETACHED);
107 panel4->MoveToStrip(detached_strip); 104 panel_manager->MovePanelToStrip(panel4, PanelStrip::DETACHED);
108 ASSERT_EQ(4, detached_strip->num_panels()); 105 ASSERT_EQ(4, detached_strip->num_panels());
109 106
110 scoped_ptr<NativePanelTesting> panel1_testing( 107 scoped_ptr<NativePanelTesting> panel1_testing(
111 NativePanelTesting::Create(panel1->native_panel())); 108 NativePanelTesting::Create(panel1->native_panel()));
112 gfx::Point panel1_old_position = panel1->GetBounds().origin(); 109 gfx::Point panel1_old_position = panel1->GetBounds().origin();
113 gfx::Point panel2_position = panel2->GetBounds().origin(); 110 gfx::Point panel2_position = panel2->GetBounds().origin();
114 gfx::Point panel3_position = panel3->GetBounds().origin(); 111 gfx::Point panel3_position = panel3->GetBounds().origin();
115 gfx::Point panel4_position = panel4->GetBounds().origin(); 112 gfx::Point panel4_position = panel4->GetBounds().origin();
116 113
117 // Test the scenario: drag a panel, close another panel, cancel the drag. 114 // Test the scenario: drag a panel, close another panel, cancel the drag.
(...skipping 107 matching lines...) Expand 10 before | Expand all | Expand 10 after
225 CloseWindowAndWait(panel1->browser()); 222 CloseWindowAndWait(panel1->browser());
226 EXPECT_FALSE(drag_controller->IsDragging()); 223 EXPECT_FALSE(drag_controller->IsDragging());
227 224
228 ASSERT_EQ(1, detached_strip->num_panels()); 225 ASSERT_EQ(1, detached_strip->num_panels());
229 EXPECT_TRUE(detached_strip->HasPanel(panel4)); 226 EXPECT_TRUE(detached_strip->HasPanel(panel4));
230 EXPECT_EQ(panel4_position, panel4->GetBounds().origin()); 227 EXPECT_EQ(panel4_position, panel4->GetBounds().origin());
231 } 228 }
232 229
233 panel_manager->CloseAll(); 230 panel_manager->CloseAll();
234 } 231 }
OLDNEW
« no previous file with comments | « no previous file | chrome/browser/ui/panels/detached_panel_strip.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698