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

Side by Side Diff: ash/wm/base_layout_manager_unittest.cc

Issue 138003007: [Cleanup] Screen cleanup (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: make sure screen_for_shutdown is reset everytime Created 6 years, 11 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 | « ash/wm/base_layout_manager.cc ('k') | ash/wm/caption_buttons/alternate_frame_size_button.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) 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 "ash/wm/base_layout_manager.h" 5 #include "ash/wm/base_layout_manager.h"
6 6
7 #include "ash/screen_ash.h" 7 #include "ash/screen_util.h"
8 #include "ash/session_state_delegate.h" 8 #include "ash/session_state_delegate.h"
9 #include "ash/shelf/shelf_layout_manager.h" 9 #include "ash/shelf/shelf_layout_manager.h"
10 #include "ash/shell.h" 10 #include "ash/shell.h"
11 #include "ash/shell_window_ids.h" 11 #include "ash/shell_window_ids.h"
12 #include "ash/test/ash_test_base.h" 12 #include "ash/test/ash_test_base.h"
13 #include "ash/wm/window_state.h" 13 #include "ash/wm/window_state.h"
14 #include "ash/wm/window_util.h" 14 #include "ash/wm/window_util.h"
15 #include "ash/wm/workspace/workspace_window_resizer.h" 15 #include "ash/wm/workspace/workspace_window_resizer.h"
16 #include "base/basictypes.h" 16 #include "base/basictypes.h"
17 #include "base/compiler_specific.h" 17 #include "base/compiler_specific.h"
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
50 DISALLOW_COPY_AND_ASSIGN(BaseLayoutManagerTest); 50 DISALLOW_COPY_AND_ASSIGN(BaseLayoutManagerTest);
51 }; 51 };
52 52
53 // Tests normal->maximize->normal. 53 // Tests normal->maximize->normal.
54 TEST_F(BaseLayoutManagerTest, Maximize) { 54 TEST_F(BaseLayoutManagerTest, Maximize) {
55 gfx::Rect bounds(100, 100, 200, 200); 55 gfx::Rect bounds(100, 100, 200, 200);
56 scoped_ptr<aura::Window> window(CreateTestWindow(bounds)); 56 scoped_ptr<aura::Window> window(CreateTestWindow(bounds));
57 window->SetProperty(aura::client::kShowStateKey, ui::SHOW_STATE_MAXIMIZED); 57 window->SetProperty(aura::client::kShowStateKey, ui::SHOW_STATE_MAXIMIZED);
58 // Maximized window fills the work area, not the whole display. 58 // Maximized window fills the work area, not the whole display.
59 EXPECT_EQ( 59 EXPECT_EQ(
60 ScreenAsh::GetMaximizedWindowBoundsInParent(window.get()).ToString(), 60 ScreenUtil::GetMaximizedWindowBoundsInParent(window.get()).ToString(),
61 window->bounds().ToString()); 61 window->bounds().ToString());
62 window->SetProperty(aura::client::kShowStateKey, ui::SHOW_STATE_NORMAL); 62 window->SetProperty(aura::client::kShowStateKey, ui::SHOW_STATE_NORMAL);
63 EXPECT_EQ(bounds.ToString(), window->bounds().ToString()); 63 EXPECT_EQ(bounds.ToString(), window->bounds().ToString());
64 } 64 }
65 65
66 // Tests normal->minimize->normal. 66 // Tests normal->minimize->normal.
67 TEST_F(BaseLayoutManagerTest, Minimize) { 67 TEST_F(BaseLayoutManagerTest, Minimize) {
68 gfx::Rect bounds(100, 100, 200, 200); 68 gfx::Rect bounds(100, 100, 200, 200);
69 scoped_ptr<aura::Window> window(CreateTestWindow(bounds)); 69 scoped_ptr<aura::Window> window(CreateTestWindow(bounds));
70 window->SetProperty(aura::client::kShowStateKey, ui::SHOW_STATE_MINIMIZED); 70 window->SetProperty(aura::client::kShowStateKey, ui::SHOW_STATE_MINIMIZED);
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after
125 EXPECT_TRUE(window->IsVisible()); 125 EXPECT_TRUE(window->IsVisible());
126 EXPECT_EQ(ui::SHOW_STATE_DEFAULT, delegate.GetShowStateAndReset()); 126 EXPECT_EQ(ui::SHOW_STATE_DEFAULT, delegate.GetShowStateAndReset());
127 } 127 }
128 128
129 // Tests maximized window size during root window resize. 129 // Tests maximized window size during root window resize.
130 TEST_F(BaseLayoutManagerTest, MaximizeRootWindowResize) { 130 TEST_F(BaseLayoutManagerTest, MaximizeRootWindowResize) {
131 gfx::Rect bounds(100, 100, 200, 200); 131 gfx::Rect bounds(100, 100, 200, 200);
132 scoped_ptr<aura::Window> window(CreateTestWindow(bounds)); 132 scoped_ptr<aura::Window> window(CreateTestWindow(bounds));
133 window->SetProperty(aura::client::kShowStateKey, ui::SHOW_STATE_MAXIMIZED); 133 window->SetProperty(aura::client::kShowStateKey, ui::SHOW_STATE_MAXIMIZED);
134 gfx::Rect initial_work_area_bounds = 134 gfx::Rect initial_work_area_bounds =
135 ScreenAsh::GetMaximizedWindowBoundsInParent(window.get()); 135 ScreenUtil::GetMaximizedWindowBoundsInParent(window.get());
136 EXPECT_EQ(initial_work_area_bounds.ToString(), window->bounds().ToString()); 136 EXPECT_EQ(initial_work_area_bounds.ToString(), window->bounds().ToString());
137 // Enlarge the root window. We should still match the work area size. 137 // Enlarge the root window. We should still match the work area size.
138 UpdateDisplay("900x700"); 138 UpdateDisplay("900x700");
139 EXPECT_EQ( 139 EXPECT_EQ(
140 ScreenAsh::GetMaximizedWindowBoundsInParent(window.get()).ToString(), 140 ScreenUtil::GetMaximizedWindowBoundsInParent(window.get()).ToString(),
141 window->bounds().ToString()); 141 window->bounds().ToString());
142 EXPECT_NE( 142 EXPECT_NE(
143 initial_work_area_bounds.ToString(), 143 initial_work_area_bounds.ToString(),
144 ScreenAsh::GetMaximizedWindowBoundsInParent(window.get()).ToString()); 144 ScreenUtil::GetMaximizedWindowBoundsInParent(window.get()).ToString());
145 } 145 }
146 146
147 // Tests normal->fullscreen->normal. 147 // Tests normal->fullscreen->normal.
148 TEST_F(BaseLayoutManagerTest, Fullscreen) { 148 TEST_F(BaseLayoutManagerTest, Fullscreen) {
149 gfx::Rect bounds(100, 100, 200, 200); 149 gfx::Rect bounds(100, 100, 200, 200);
150 scoped_ptr<aura::Window> window(CreateTestWindow(bounds)); 150 scoped_ptr<aura::Window> window(CreateTestWindow(bounds));
151 window->SetProperty(aura::client::kShowStateKey, ui::SHOW_STATE_FULLSCREEN); 151 window->SetProperty(aura::client::kShowStateKey, ui::SHOW_STATE_FULLSCREEN);
152 // Fullscreen window fills the whole display. 152 // Fullscreen window fills the whole display.
153 EXPECT_EQ(Shell::GetScreen()->GetDisplayNearestWindow( 153 EXPECT_EQ(Shell::GetScreen()->GetDisplayNearestWindow(
154 window.get()).bounds().ToString(), 154 window.get()).bounds().ToString(),
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after
211 // Create a window with bounds that fill the screen. 211 // Create a window with bounds that fill the screen.
212 gfx::Rect bounds = Shell::GetScreen()->GetPrimaryDisplay().bounds(); 212 gfx::Rect bounds = Shell::GetScreen()->GetPrimaryDisplay().bounds();
213 scoped_ptr<aura::Window> window(CreateTestWindow(bounds)); 213 scoped_ptr<aura::Window> window(CreateTestWindow(bounds));
214 // Maximize it, which writes the old bounds to restore bounds. 214 // Maximize it, which writes the old bounds to restore bounds.
215 window->SetProperty(aura::client::kShowStateKey, ui::SHOW_STATE_MAXIMIZED); 215 window->SetProperty(aura::client::kShowStateKey, ui::SHOW_STATE_MAXIMIZED);
216 // Restore it. 216 // Restore it.
217 window->SetProperty(aura::client::kShowStateKey, ui::SHOW_STATE_NORMAL); 217 window->SetProperty(aura::client::kShowStateKey, ui::SHOW_STATE_NORMAL);
218 // It should have the default maximized window bounds, inset by the grid size. 218 // It should have the default maximized window bounds, inset by the grid size.
219 int grid_size = internal::WorkspaceWindowResizer::kScreenEdgeInset; 219 int grid_size = internal::WorkspaceWindowResizer::kScreenEdgeInset;
220 gfx::Rect max_bounds = 220 gfx::Rect max_bounds =
221 ash::ScreenAsh::GetMaximizedWindowBoundsInParent(window.get()); 221 ash::ScreenUtil::GetMaximizedWindowBoundsInParent(window.get());
222 max_bounds.Inset(grid_size, grid_size); 222 max_bounds.Inset(grid_size, grid_size);
223 EXPECT_EQ(max_bounds.ToString(), window->bounds().ToString()); 223 EXPECT_EQ(max_bounds.ToString(), window->bounds().ToString());
224 } 224 }
225 225
226 // Verifies maximizing sets the restore bounds, and restoring 226 // Verifies maximizing sets the restore bounds, and restoring
227 // restores the bounds. 227 // restores the bounds.
228 TEST_F(BaseLayoutManagerTest, MaximizeSetsRestoreBounds) { 228 TEST_F(BaseLayoutManagerTest, MaximizeSetsRestoreBounds) {
229 scoped_ptr<aura::Window> window(CreateTestWindow(gfx::Rect(1, 2, 3, 4))); 229 scoped_ptr<aura::Window> window(CreateTestWindow(gfx::Rect(1, 2, 3, 4)));
230 wm::WindowState* window_state = wm::GetWindowState(window.get()); 230 wm::WindowState* window_state = wm::GetWindowState(window.get());
231 231
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
285 SetCanLockScreen(true); 285 SetCanLockScreen(true);
286 scoped_ptr<aura::Window> window(CreateTestWindow(gfx::Rect(1, 2, 3, 4))); 286 scoped_ptr<aura::Window> window(CreateTestWindow(gfx::Rect(1, 2, 3, 4)));
287 // window with AlwaysOnTop will be managed by BaseLayoutManager. 287 // window with AlwaysOnTop will be managed by BaseLayoutManager.
288 window->SetProperty(aura::client::kAlwaysOnTopKey, true); 288 window->SetProperty(aura::client::kAlwaysOnTopKey, true);
289 window->Show(); 289 window->Show();
290 290
291 internal::ShelfLayoutManager* shelf = 291 internal::ShelfLayoutManager* shelf =
292 internal::ShelfLayoutManager::ForShelf(window.get()); 292 internal::ShelfLayoutManager::ForShelf(window.get());
293 shelf->SetAutoHideBehavior(SHELF_AUTO_HIDE_BEHAVIOR_ALWAYS); 293 shelf->SetAutoHideBehavior(SHELF_AUTO_HIDE_BEHAVIOR_ALWAYS);
294 294
295 window->SetBounds(ScreenAsh::GetMaximizedWindowBoundsInParent(window.get())); 295 window->SetBounds(ScreenUtil::GetMaximizedWindowBoundsInParent(window.get()));
296 gfx::Rect window_bounds = window->bounds(); 296 gfx::Rect window_bounds = window->bounds();
297 EXPECT_EQ( 297 EXPECT_EQ(
298 ScreenAsh::GetMaximizedWindowBoundsInParent(window.get()).ToString(), 298 ScreenUtil::GetMaximizedWindowBoundsInParent(window.get()).ToString(),
299 window_bounds.ToString()); 299 window_bounds.ToString());
300 300
301 Shell::GetInstance()->session_state_delegate()->LockScreen(); 301 Shell::GetInstance()->session_state_delegate()->LockScreen();
302 shelf->UpdateVisibilityState(); 302 shelf->UpdateVisibilityState();
303 EXPECT_NE( 303 EXPECT_NE(
304 ScreenAsh::GetMaximizedWindowBoundsInParent(window.get()).ToString(), 304 ScreenUtil::GetMaximizedWindowBoundsInParent(window.get()).ToString(),
305 window_bounds.ToString()); 305 window_bounds.ToString());
306 306
307 Shell::GetInstance()->session_state_delegate()->UnlockScreen(); 307 Shell::GetInstance()->session_state_delegate()->UnlockScreen();
308 shelf->UpdateVisibilityState(); 308 shelf->UpdateVisibilityState();
309 EXPECT_EQ(window_bounds.ToString(), window->bounds().ToString()); 309 EXPECT_EQ(window_bounds.ToString(), window->bounds().ToString());
310 } 310 }
311 311
312 } // namespace 312 } // namespace
313 } // namespace ash 313 } // namespace ash
OLDNEW
« no previous file with comments | « ash/wm/base_layout_manager.cc ('k') | ash/wm/caption_buttons/alternate_frame_size_button.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698