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

Side by Side Diff: ash/shelf/shelf_widget_unittest.cc

Issue 2886253002: mash: remove more shell/shelf WmWindow usage. (Closed)
Patch Set: Fix WmShelf::ForWindow. Created 3 years, 7 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
« no previous file with comments | « ash/shelf/shelf_view_unittest.cc ('k') | ash/shelf/shelf_window_watcher.cc » ('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) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2013 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 "ash/shelf/shelf_widget.h" 5 #include "ash/shelf/shelf_widget.h"
6 6
7 #include "ash/root_window_controller.h" 7 #include "ash/root_window_controller.h"
8 #include "ash/shelf/shelf_constants.h" 8 #include "ash/shelf/shelf_constants.h"
9 #include "ash/shelf/shelf_layout_manager.h" 9 #include "ash/shelf/shelf_layout_manager.h"
10 #include "ash/shelf/shelf_view.h" 10 #include "ash/shelf/shelf_view.h"
(...skipping 17 matching lines...) Expand all
28 namespace { 28 namespace {
29 29
30 ShelfWidget* GetShelfWidget() { 30 ShelfWidget* GetShelfWidget() {
31 return test::AshTestBase::GetPrimaryShelf()->shelf_widget(); 31 return test::AshTestBase::GetPrimaryShelf()->shelf_widget();
32 } 32 }
33 33
34 ShelfLayoutManager* GetShelfLayoutManager() { 34 ShelfLayoutManager* GetShelfLayoutManager() {
35 return GetShelfWidget()->shelf_layout_manager(); 35 return GetShelfWidget()->shelf_layout_manager();
36 } 36 }
37 37
38 void TestLauncherAlignment(WmWindow* root, 38 void TestLauncherAlignment(aura::Window* root,
39 ShelfAlignment alignment, 39 ShelfAlignment alignment,
40 const gfx::Rect& expected) { 40 const gfx::Rect& expected) {
41 root->GetRootWindowController()->GetShelf()->SetAlignment(alignment); 41 GetRootWindowController(root)->GetShelf()->SetAlignment(alignment);
42 EXPECT_EQ(expected.ToString(), 42 EXPECT_EQ(expected.ToString(), display::Screen::GetScreen()
43 root->GetDisplayNearestWindow().work_area().ToString()); 43 ->GetDisplayNearestWindow(root)
44 .work_area()
45 .ToString());
44 } 46 }
45 47
46 using ShelfWidgetTest = test::AshTestBase; 48 using ShelfWidgetTest = test::AshTestBase;
47 49
48 TEST_F(ShelfWidgetTest, TestAlignment) { 50 TEST_F(ShelfWidgetTest, TestAlignment) {
49 UpdateDisplay("400x400"); 51 UpdateDisplay("400x400");
50 { 52 {
51 SCOPED_TRACE("Single Bottom"); 53 SCOPED_TRACE("Single Bottom");
52 TestLauncherAlignment(ShellPort::Get()->GetPrimaryRootWindow(), 54 TestLauncherAlignment(Shell::GetPrimaryRootWindow(), SHELF_ALIGNMENT_BOTTOM,
53 SHELF_ALIGNMENT_BOTTOM, gfx::Rect(0, 0, 400, 352)); 55 gfx::Rect(0, 0, 400, 352));
54 } 56 }
55 { 57 {
56 SCOPED_TRACE("Single Locked"); 58 SCOPED_TRACE("Single Locked");
57 TestLauncherAlignment(ShellPort::Get()->GetPrimaryRootWindow(), 59 TestLauncherAlignment(Shell::GetPrimaryRootWindow(),
58 SHELF_ALIGNMENT_BOTTOM_LOCKED, 60 SHELF_ALIGNMENT_BOTTOM_LOCKED,
59 gfx::Rect(0, 0, 400, 352)); 61 gfx::Rect(0, 0, 400, 352));
60 } 62 }
61 { 63 {
62 SCOPED_TRACE("Single Right"); 64 SCOPED_TRACE("Single Right");
63 TestLauncherAlignment(ShellPort::Get()->GetPrimaryRootWindow(), 65 TestLauncherAlignment(Shell::GetPrimaryRootWindow(), SHELF_ALIGNMENT_RIGHT,
64 SHELF_ALIGNMENT_RIGHT, gfx::Rect(0, 0, 352, 400)); 66 gfx::Rect(0, 0, 352, 400));
65 } 67 }
66 { 68 {
67 SCOPED_TRACE("Single Left"); 69 SCOPED_TRACE("Single Left");
68 TestLauncherAlignment(ShellPort::Get()->GetPrimaryRootWindow(), 70 TestLauncherAlignment(Shell::GetPrimaryRootWindow(), SHELF_ALIGNMENT_LEFT,
69 SHELF_ALIGNMENT_LEFT,
70 gfx::Rect(kShelfSize, 0, 352, 400)); 71 gfx::Rect(kShelfSize, 0, 352, 400));
71 } 72 }
72 } 73 }
73 74
74 TEST_F(ShelfWidgetTest, TestAlignmentForMultipleDisplays) { 75 TEST_F(ShelfWidgetTest, TestAlignmentForMultipleDisplays) {
75 UpdateDisplay("300x300,500x500"); 76 UpdateDisplay("300x300,500x500");
76 std::vector<WmWindow*> root_windows = ShellPort::Get()->GetAllRootWindows(); 77 aura::Window::Windows root_windows = Shell::GetAllRootWindows();
77 { 78 {
78 SCOPED_TRACE("Primary Bottom"); 79 SCOPED_TRACE("Primary Bottom");
79 TestLauncherAlignment(root_windows[0], SHELF_ALIGNMENT_BOTTOM, 80 TestLauncherAlignment(root_windows[0], SHELF_ALIGNMENT_BOTTOM,
80 gfx::Rect(0, 0, 300, 252)); 81 gfx::Rect(0, 0, 300, 252));
81 } 82 }
82 { 83 {
83 SCOPED_TRACE("Primary Locked"); 84 SCOPED_TRACE("Primary Locked");
84 TestLauncherAlignment(root_windows[0], SHELF_ALIGNMENT_BOTTOM_LOCKED, 85 TestLauncherAlignment(root_windows[0], SHELF_ALIGNMENT_BOTTOM_LOCKED,
85 gfx::Rect(0, 0, 300, 252)); 86 gfx::Rect(0, 0, 300, 252));
86 } 87 }
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after
143 } 144 }
144 145
145 // Verifies shelf is created with correct size after user login and when its 146 // Verifies shelf is created with correct size after user login and when its
146 // container and status widget has finished sizing. 147 // container and status widget has finished sizing.
147 // See http://crbug.com/252533 148 // See http://crbug.com/252533
148 TEST_F(ShelfWidgetTest, ShelfInitiallySizedAfterLogin) { 149 TEST_F(ShelfWidgetTest, ShelfInitiallySizedAfterLogin) {
149 SetUserLoggedIn(false); 150 SetUserLoggedIn(false);
150 UpdateDisplay("300x200,400x300"); 151 UpdateDisplay("300x200,400x300");
151 152
152 // Both displays have a shelf controller. 153 // Both displays have a shelf controller.
153 std::vector<WmWindow*> roots = ShellPort::Get()->GetAllRootWindows(); 154 aura::Window::Windows roots = Shell::GetAllRootWindows();
154 WmShelf* shelf1 = WmShelf::ForWindow(roots[0]); 155 WmShelf* shelf1 = WmShelf::ForWindow(roots[0]);
155 WmShelf* shelf2 = WmShelf::ForWindow(roots[1]); 156 WmShelf* shelf2 = WmShelf::ForWindow(roots[1]);
156 ASSERT_TRUE(shelf1); 157 ASSERT_TRUE(shelf1);
157 ASSERT_TRUE(shelf2); 158 ASSERT_TRUE(shelf2);
158 159
159 // Both shelf controllers have a shelf widget. 160 // Both shelf controllers have a shelf widget.
160 ShelfWidget* shelf_widget1 = shelf1->shelf_widget(); 161 ShelfWidget* shelf_widget1 = shelf1->shelf_widget();
161 ShelfWidget* shelf_widget2 = shelf2->shelf_widget(); 162 ShelfWidget* shelf_widget2 = shelf2->shelf_widget();
162 ASSERT_TRUE(shelf_widget1); 163 ASSERT_TRUE(shelf_widget1);
163 ASSERT_TRUE(shelf_widget2); 164 ASSERT_TRUE(shelf_widget2);
(...skipping 234 matching lines...) Expand 10 before | Expand all | Expand 10 after
398 } 399 }
399 400
400 TEST_F(ShelfWidgetAfterLoginTest, CreateLockedShelf) { 401 TEST_F(ShelfWidgetAfterLoginTest, CreateLockedShelf) {
401 // The auto hide state 'HIDDEN' is returned for any non-auto-hide behavior. 402 // The auto hide state 'HIDDEN' is returned for any non-auto-hide behavior.
402 TestShelf(SHELF_ALIGNMENT_BOTTOM_LOCKED, SHELF_AUTO_HIDE_BEHAVIOR_NEVER, 403 TestShelf(SHELF_ALIGNMENT_BOTTOM_LOCKED, SHELF_AUTO_HIDE_BEHAVIOR_NEVER,
403 SHELF_VISIBLE, SHELF_AUTO_HIDE_HIDDEN); 404 SHELF_VISIBLE, SHELF_AUTO_HIDE_HIDDEN);
404 } 405 }
405 406
406 } // namespace 407 } // namespace
407 } // namespace ash 408 } // namespace ash
OLDNEW
« no previous file with comments | « ash/shelf/shelf_view_unittest.cc ('k') | ash/shelf/shelf_window_watcher.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698