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

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

Issue 2807693002: Make LogoutButtonTray a regular View (Closed)
Patch Set: Rebased Created 3 years, 8 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
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/shelf/shelf_layout_manager.h" 5 #include "ash/shelf/shelf_layout_manager.h"
6 6
7 #include "ash/accelerators/accelerator_controller.h" 7 #include "ash/accelerators/accelerator_controller.h"
8 #include "ash/accelerators/accelerator_table.h" 8 #include "ash/accelerators/accelerator_table.h"
9 #include "ash/focus_cycler.h" 9 #include "ash/focus_cycler.h"
10 #include "ash/public/cpp/shell_window_ids.h" 10 #include "ash/public/cpp/shell_window_ids.h"
(...skipping 143 matching lines...) Expand 10 before | Expand all | Expand 10 after
154 154
155 if (type == ui::ET_GESTURE_SCROLL_UPDATE) 155 if (type == ui::ET_GESTURE_SCROLL_UPDATE)
156 scroll_.Add(delta); 156 scroll_.Add(delta);
157 157
158 WmShelf* shelf = test::AshTestBase::GetPrimaryShelf(); 158 WmShelf* shelf = test::AshTestBase::GetPrimaryShelf();
159 gfx::Rect shelf_bounds = GetShelfWidget()->GetWindowBoundsInScreen(); 159 gfx::Rect shelf_bounds = GetShelfWidget()->GetWindowBoundsInScreen();
160 if (shelf->IsHorizontalAlignment()) { 160 if (shelf->IsHorizontalAlignment()) {
161 EXPECT_EQ(auto_hidden_shelf_widget_bounds_.bottom(), 161 EXPECT_EQ(auto_hidden_shelf_widget_bounds_.bottom(),
162 shelf_bounds.bottom()); 162 shelf_bounds.bottom());
163 EXPECT_EQ(shelf_widget_bounds_.bottom(), shelf_bounds.bottom()); 163 EXPECT_EQ(shelf_widget_bounds_.bottom(), shelf_bounds.bottom());
164 } else if (SHELF_ALIGNMENT_RIGHT == shelf->GetAlignment()) { 164 } else if (SHELF_ALIGNMENT_RIGHT == shelf->alignment()) {
165 EXPECT_EQ(auto_hidden_shelf_widget_bounds_.right(), shelf_bounds.right()); 165 EXPECT_EQ(auto_hidden_shelf_widget_bounds_.right(), shelf_bounds.right());
166 EXPECT_EQ(shelf_widget_bounds_.right(), shelf_bounds.right()); 166 EXPECT_EQ(shelf_widget_bounds_.right(), shelf_bounds.right());
167 } else if (SHELF_ALIGNMENT_LEFT == shelf->GetAlignment()) { 167 } else if (SHELF_ALIGNMENT_LEFT == shelf->alignment()) {
168 EXPECT_EQ(auto_hidden_shelf_widget_bounds_.x(), shelf_bounds.x()); 168 EXPECT_EQ(auto_hidden_shelf_widget_bounds_.x(), shelf_bounds.x());
169 EXPECT_EQ(shelf_widget_bounds_.x(), shelf_bounds.x()); 169 EXPECT_EQ(shelf_widget_bounds_.x(), shelf_bounds.x());
170 } 170 }
171 171
172 float scroll_delta = 172 float scroll_delta =
173 GetShelfLayoutManager()->PrimaryAxisValue(scroll_.y(), scroll_.x()); 173 GetShelfLayoutManager()->PrimaryAxisValue(scroll_.y(), scroll_.x());
174 bool increasing_drag = 174 bool increasing_drag =
175 GetShelfLayoutManager()->SelectValueForShelfAlignment( 175 GetShelfLayoutManager()->SelectValueForShelfAlignment(
176 scroll_delta<0, scroll_delta> 0, scroll_delta < 0); 176 scroll_delta<0, scroll_delta> 0, scroll_delta < 0);
177 int shelf_size = GetShelfLayoutManager()->PrimaryAxisValue( 177 int shelf_size = GetShelfLayoutManager()->PrimaryAxisValue(
(...skipping 207 matching lines...) Expand 10 before | Expand all | Expand 10 after
385 // Swipe up yet again to show it. 385 // Swipe up yet again to show it.
386 end = start + delta; 386 end = start + delta;
387 generator.GestureScrollSequenceWithCallback( 387 generator.GestureScrollSequenceWithCallback(
388 end, start, kTimeDelta, kNumScrollSteps, 388 end, start, kTimeDelta, kNumScrollSteps,
389 base::Bind(&ShelfDragCallback::ProcessScroll, 389 base::Bind(&ShelfDragCallback::ProcessScroll,
390 base::Unretained(&handler))); 390 base::Unretained(&handler)));
391 391
392 // Swipe down very little. It shouldn't change any state. 392 // Swipe down very little. It shouldn't change any state.
393 if (shelf->IsHorizontalAlignment()) 393 if (shelf->IsHorizontalAlignment())
394 end.set_y(start.y() + shelf_shown.height() * 3 / 10); 394 end.set_y(start.y() + shelf_shown.height() * 3 / 10);
395 else if (SHELF_ALIGNMENT_LEFT == shelf->GetAlignment()) 395 else if (SHELF_ALIGNMENT_LEFT == shelf->alignment())
James Cook 2017/04/17 16:54:35 Thanks for fixing these.
396 end.set_x(start.x() - shelf_shown.width() * 3 / 10); 396 end.set_x(start.x() - shelf_shown.width() * 3 / 10);
397 else if (SHELF_ALIGNMENT_RIGHT == shelf->GetAlignment()) 397 else if (SHELF_ALIGNMENT_RIGHT == shelf->alignment())
398 end.set_x(start.x() + shelf_shown.width() * 3 / 10); 398 end.set_x(start.x() + shelf_shown.width() * 3 / 10);
399 generator.GestureScrollSequence(start, end, kTimeDelta, 5); 399 generator.GestureScrollSequence(start, end, kTimeDelta, 5);
400 EXPECT_EQ(SHELF_VISIBLE, shelf->GetVisibilityState()); 400 EXPECT_EQ(SHELF_VISIBLE, shelf->GetVisibilityState());
401 EXPECT_EQ(SHELF_AUTO_HIDE_BEHAVIOR_NEVER, shelf->auto_hide_behavior()); 401 EXPECT_EQ(SHELF_AUTO_HIDE_BEHAVIOR_NEVER, shelf->auto_hide_behavior());
402 EXPECT_EQ(bounds_shelf.ToString(), window->bounds().ToString()); 402 EXPECT_EQ(bounds_shelf.ToString(), window->bounds().ToString());
403 EXPECT_EQ(shelf_shown.ToString(), 403 EXPECT_EQ(shelf_shown.ToString(),
404 GetShelfWidget()->GetWindowBoundsInScreen().ToString()); 404 GetShelfWidget()->GetWindowBoundsInScreen().ToString());
405 405
406 // Swipe down again to hide. 406 // Swipe down again to hide.
407 end = start + delta; 407 end = start + delta;
408 generator.GestureScrollSequenceWithCallback( 408 generator.GestureScrollSequenceWithCallback(
409 start, end, kTimeDelta, kNumScrollSteps, 409 start, end, kTimeDelta, kNumScrollSteps,
410 base::Bind(&ShelfDragCallback::ProcessScroll, 410 base::Bind(&ShelfDragCallback::ProcessScroll,
411 base::Unretained(&handler))); 411 base::Unretained(&handler)));
412 EXPECT_EQ(SHELF_AUTO_HIDE, shelf->GetVisibilityState()); 412 EXPECT_EQ(SHELF_AUTO_HIDE, shelf->GetVisibilityState());
413 EXPECT_EQ(SHELF_AUTO_HIDE_HIDDEN, shelf->GetAutoHideState()); 413 EXPECT_EQ(SHELF_AUTO_HIDE_HIDDEN, shelf->GetAutoHideState());
414 EXPECT_EQ(SHELF_AUTO_HIDE_BEHAVIOR_ALWAYS, shelf->auto_hide_behavior()); 414 EXPECT_EQ(SHELF_AUTO_HIDE_BEHAVIOR_ALWAYS, shelf->auto_hide_behavior());
415 EXPECT_EQ(bounds_noshelf.ToString(), window->bounds().ToString()); 415 EXPECT_EQ(bounds_noshelf.ToString(), window->bounds().ToString());
416 EXPECT_EQ(shelf_hidden.ToString(), 416 EXPECT_EQ(shelf_hidden.ToString(),
417 GetShelfWidget()->GetWindowBoundsInScreen().ToString()); 417 GetShelfWidget()->GetWindowBoundsInScreen().ToString());
418 418
419 // Swipe up in extended hit region to show it. 419 // Swipe up in extended hit region to show it.
420 gfx::Point extended_start = start; 420 gfx::Point extended_start = start;
421 if (shelf->IsHorizontalAlignment()) 421 if (shelf->IsHorizontalAlignment())
422 extended_start.set_y(GetShelfWidget()->GetWindowBoundsInScreen().y() - 1); 422 extended_start.set_y(GetShelfWidget()->GetWindowBoundsInScreen().y() - 1);
423 else if (SHELF_ALIGNMENT_LEFT == shelf->GetAlignment()) 423 else if (SHELF_ALIGNMENT_LEFT == shelf->alignment())
424 extended_start.set_x(GetShelfWidget()->GetWindowBoundsInScreen().right() + 424 extended_start.set_x(GetShelfWidget()->GetWindowBoundsInScreen().right() +
425 1); 425 1);
426 else if (SHELF_ALIGNMENT_RIGHT == shelf->GetAlignment()) 426 else if (SHELF_ALIGNMENT_RIGHT == shelf->alignment())
427 extended_start.set_x(GetShelfWidget()->GetWindowBoundsInScreen().x() - 1); 427 extended_start.set_x(GetShelfWidget()->GetWindowBoundsInScreen().x() - 1);
428 end = extended_start - delta; 428 end = extended_start - delta;
429 generator.GestureScrollSequenceWithCallback( 429 generator.GestureScrollSequenceWithCallback(
430 extended_start, end, kTimeDelta, kNumScrollSteps, 430 extended_start, end, kTimeDelta, kNumScrollSteps,
431 base::Bind(&ShelfDragCallback::ProcessScroll, 431 base::Bind(&ShelfDragCallback::ProcessScroll,
432 base::Unretained(&handler))); 432 base::Unretained(&handler)));
433 EXPECT_EQ(SHELF_VISIBLE, shelf->GetVisibilityState()); 433 EXPECT_EQ(SHELF_VISIBLE, shelf->GetVisibilityState());
434 EXPECT_EQ(SHELF_AUTO_HIDE_BEHAVIOR_NEVER, shelf->auto_hide_behavior()); 434 EXPECT_EQ(SHELF_AUTO_HIDE_BEHAVIOR_NEVER, shelf->auto_hide_behavior());
435 EXPECT_EQ(bounds_shelf.ToString(), window->bounds().ToString()); 435 EXPECT_EQ(bounds_shelf.ToString(), window->bounds().ToString());
436 EXPECT_EQ(shelf_shown.ToString(), 436 EXPECT_EQ(shelf_shown.ToString(),
(...skipping 25 matching lines...) Expand all
462 EXPECT_EQ(SHELF_AUTO_HIDE_HIDDEN, shelf->GetAutoHideState()); 462 EXPECT_EQ(SHELF_AUTO_HIDE_HIDDEN, shelf->GetAutoHideState());
463 EXPECT_EQ(SHELF_AUTO_HIDE_BEHAVIOR_ALWAYS, shelf->auto_hide_behavior()); 463 EXPECT_EQ(SHELF_AUTO_HIDE_BEHAVIOR_ALWAYS, shelf->auto_hide_behavior());
464 EXPECT_EQ(shelf_hidden.ToString(), 464 EXPECT_EQ(shelf_hidden.ToString(),
465 GetShelfWidget()->GetWindowBoundsInScreen().ToString()); 465 GetShelfWidget()->GetWindowBoundsInScreen().ToString());
466 466
467 // Swipe up from below the shelf where a bezel would be, this should show the 467 // Swipe up from below the shelf where a bezel would be, this should show the
468 // shelf. 468 // shelf.
469 gfx::Point below_start = start; 469 gfx::Point below_start = start;
470 if (shelf->IsHorizontalAlignment()) 470 if (shelf->IsHorizontalAlignment())
471 below_start.set_y(GetShelfWidget()->GetWindowBoundsInScreen().bottom() + 1); 471 below_start.set_y(GetShelfWidget()->GetWindowBoundsInScreen().bottom() + 1);
472 else if (SHELF_ALIGNMENT_LEFT == shelf->GetAlignment()) 472 else if (SHELF_ALIGNMENT_LEFT == shelf->alignment())
473 below_start.set_x(GetShelfWidget()->GetWindowBoundsInScreen().x() - 1); 473 below_start.set_x(GetShelfWidget()->GetWindowBoundsInScreen().x() - 1);
474 else if (SHELF_ALIGNMENT_RIGHT == shelf->GetAlignment()) 474 else if (SHELF_ALIGNMENT_RIGHT == shelf->alignment())
475 below_start.set_x(GetShelfWidget()->GetWindowBoundsInScreen().right() + 1); 475 below_start.set_x(GetShelfWidget()->GetWindowBoundsInScreen().right() + 1);
476 end = below_start - delta; 476 end = below_start - delta;
477 generator.GestureScrollSequence(below_start, end, kTimeDelta, 477 generator.GestureScrollSequence(below_start, end, kTimeDelta,
478 kNumScrollSteps); 478 kNumScrollSteps);
479 EXPECT_EQ(SHELF_VISIBLE, shelf->GetVisibilityState()); 479 EXPECT_EQ(SHELF_VISIBLE, shelf->GetVisibilityState());
480 EXPECT_EQ(SHELF_AUTO_HIDE_BEHAVIOR_NEVER, shelf->auto_hide_behavior()); 480 EXPECT_EQ(SHELF_AUTO_HIDE_BEHAVIOR_NEVER, shelf->auto_hide_behavior());
481 EXPECT_EQ(bounds_shelf.ToString(), window->bounds().ToString()); 481 EXPECT_EQ(bounds_shelf.ToString(), window->bounds().ToString());
482 EXPECT_EQ(shelf_shown.ToString(), 482 EXPECT_EQ(shelf_shown.ToString(),
483 GetShelfWidget()->GetWindowBoundsInScreen().ToString()); 483 GetShelfWidget()->GetWindowBoundsInScreen().ToString());
484 484
(...skipping 789 matching lines...) Expand 10 before | Expand all | Expand 10 after
1274 EXPECT_EQ(SHELF_VISIBLE, shelf->GetVisibilityState()); 1274 EXPECT_EQ(SHELF_VISIBLE, shelf->GetVisibilityState());
1275 1275
1276 shelf->SetAlignment(SHELF_ALIGNMENT_LEFT); 1276 shelf->SetAlignment(SHELF_ALIGNMENT_LEFT);
1277 gfx::Rect shelf_bounds(GetShelfWidget()->GetWindowBoundsInScreen()); 1277 gfx::Rect shelf_bounds(GetShelfWidget()->GetWindowBoundsInScreen());
1278 display::Display display = display::Screen::GetScreen()->GetPrimaryDisplay(); 1278 display::Display display = display::Screen::GetScreen()->GetPrimaryDisplay();
1279 ASSERT_NE(-1, display.id()); 1279 ASSERT_NE(-1, display.id());
1280 EXPECT_EQ(layout_manager->GetIdealBounds().width(), 1280 EXPECT_EQ(layout_manager->GetIdealBounds().width(),
1281 display.GetWorkAreaInsets().left()); 1281 display.GetWorkAreaInsets().left());
1282 EXPECT_GE(shelf_bounds.width(), 1282 EXPECT_GE(shelf_bounds.width(),
1283 GetShelfWidget()->GetContentsView()->GetPreferredSize().width()); 1283 GetShelfWidget()->GetContentsView()->GetPreferredSize().width());
1284 EXPECT_EQ(SHELF_ALIGNMENT_LEFT, GetPrimarySystemTray()->shelf_alignment()); 1284 EXPECT_EQ(SHELF_ALIGNMENT_LEFT, GetPrimarySystemTray()->shelf()->alignment());
1285 StatusAreaWidget* status_area_widget = GetShelfWidget()->status_area_widget(); 1285 StatusAreaWidget* status_area_widget = GetShelfWidget()->status_area_widget();
1286 gfx::Rect status_bounds(status_area_widget->GetWindowBoundsInScreen()); 1286 gfx::Rect status_bounds(status_area_widget->GetWindowBoundsInScreen());
1287 // TODO(estade): Re-enable this check. See crbug.com/660928. 1287 // TODO(estade): Re-enable this check. See crbug.com/660928.
1288 // EXPECT_GE( 1288 // EXPECT_GE(
1289 // status_bounds.width(), 1289 // status_bounds.width(),
1290 // status_area_widget->GetContentsView()->GetPreferredSize().width()); 1290 // status_area_widget->GetContentsView()->GetPreferredSize().width());
1291 EXPECT_EQ(layout_manager->GetIdealBounds().width(), 1291 EXPECT_EQ(layout_manager->GetIdealBounds().width(),
1292 display.GetWorkAreaInsets().left()); 1292 display.GetWorkAreaInsets().left());
1293 EXPECT_EQ(0, display.GetWorkAreaInsets().top()); 1293 EXPECT_EQ(0, display.GetWorkAreaInsets().top());
1294 EXPECT_EQ(0, display.GetWorkAreaInsets().bottom()); 1294 EXPECT_EQ(0, display.GetWorkAreaInsets().bottom());
(...skipping 10 matching lines...) Expand all
1305 1305
1306 shelf->SetAutoHideBehavior(SHELF_AUTO_HIDE_BEHAVIOR_NEVER); 1306 shelf->SetAutoHideBehavior(SHELF_AUTO_HIDE_BEHAVIOR_NEVER);
1307 shelf->SetAlignment(SHELF_ALIGNMENT_RIGHT); 1307 shelf->SetAlignment(SHELF_ALIGNMENT_RIGHT);
1308 shelf_bounds = GetShelfWidget()->GetWindowBoundsInScreen(); 1308 shelf_bounds = GetShelfWidget()->GetWindowBoundsInScreen();
1309 display = display::Screen::GetScreen()->GetPrimaryDisplay(); 1309 display = display::Screen::GetScreen()->GetPrimaryDisplay();
1310 ASSERT_NE(-1, display.id()); 1310 ASSERT_NE(-1, display.id());
1311 EXPECT_EQ(layout_manager->GetIdealBounds().width(), 1311 EXPECT_EQ(layout_manager->GetIdealBounds().width(),
1312 display.GetWorkAreaInsets().right()); 1312 display.GetWorkAreaInsets().right());
1313 EXPECT_GE(shelf_bounds.width(), 1313 EXPECT_GE(shelf_bounds.width(),
1314 GetShelfWidget()->GetContentsView()->GetPreferredSize().width()); 1314 GetShelfWidget()->GetContentsView()->GetPreferredSize().width());
1315 EXPECT_EQ(SHELF_ALIGNMENT_RIGHT, GetPrimarySystemTray()->shelf_alignment()); 1315 EXPECT_EQ(SHELF_ALIGNMENT_RIGHT,
1316 GetPrimarySystemTray()->shelf()->alignment());
1316 status_bounds = gfx::Rect(status_area_widget->GetWindowBoundsInScreen()); 1317 status_bounds = gfx::Rect(status_area_widget->GetWindowBoundsInScreen());
1317 // TODO(estade): Re-enable this check. See crbug.com/660928. 1318 // TODO(estade): Re-enable this check. See crbug.com/660928.
1318 // EXPECT_GE( 1319 // EXPECT_GE(
1319 // status_bounds.width(), 1320 // status_bounds.width(),
1320 // status_area_widget->GetContentsView()->GetPreferredSize().width()); 1321 // status_area_widget->GetContentsView()->GetPreferredSize().width());
1321 EXPECT_EQ(layout_manager->GetIdealBounds().width(), 1322 EXPECT_EQ(layout_manager->GetIdealBounds().width(),
1322 display.GetWorkAreaInsets().right()); 1323 display.GetWorkAreaInsets().right());
1323 EXPECT_EQ(0, display.GetWorkAreaInsets().top()); 1324 EXPECT_EQ(0, display.GetWorkAreaInsets().top());
1324 EXPECT_EQ(0, display.GetWorkAreaInsets().bottom()); 1325 EXPECT_EQ(0, display.GetWorkAreaInsets().bottom());
1325 EXPECT_EQ(0, display.GetWorkAreaInsets().left()); 1326 EXPECT_EQ(0, display.GetWorkAreaInsets().left());
(...skipping 515 matching lines...) Expand 10 before | Expand all | Expand 10 after
1841 // Open keyboard in sticky mode. 1842 // Open keyboard in sticky mode.
1842 kb_controller->ShowKeyboard(true); 1843 kb_controller->ShowKeyboard(true);
1843 layout_manager->OnKeyboardBoundsChanging(keyboard_bounds()); 1844 layout_manager->OnKeyboardBoundsChanging(keyboard_bounds());
1844 1845
1845 // Work area should be changed. 1846 // Work area should be changed.
1846 EXPECT_NE(orig_work_area, 1847 EXPECT_NE(orig_work_area,
1847 display::Screen::GetScreen()->GetPrimaryDisplay().work_area()); 1848 display::Screen::GetScreen()->GetPrimaryDisplay().work_area());
1848 } 1849 }
1849 1850
1850 } // namespace ash 1851 } // namespace ash
OLDNEW
« no previous file with comments | « ash/BUILD.gn ('k') | ash/shelf/shelf_widget.cc » ('j') | ash/system/palette/palette_tray.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698