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

Unified Diff: ash/shelf/shelf_layout_manager_unittest.cc

Issue 2550413004: Remove Ash shelf dimmer. (Closed)
Patch Set: jamescook review Created 4 years 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « ash/shelf/dimmer_view.cc ('k') | ash/wm/overview/window_selector_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ash/shelf/shelf_layout_manager_unittest.cc
diff --git a/ash/shelf/shelf_layout_manager_unittest.cc b/ash/shelf/shelf_layout_manager_unittest.cc
index 4ef2f844249331565f96e29e5434d81cfdf029ce..69b390fe16aa795e9cb600531737b818f8c67e1a 100644
--- a/ash/shelf/shelf_layout_manager_unittest.cc
+++ b/ash/shelf/shelf_layout_manager_unittest.cc
@@ -173,11 +173,6 @@ class ShelfDragCallback {
EXPECT_EQ(shelf_widget_bounds_.x(), shelf_bounds.x());
}
- // if the shelf is being dimmed test dimmer bounds as well.
- if (GetShelfWidget()->GetDimsShelf())
- EXPECT_EQ(GetShelfWidget()->GetWindowBoundsInScreen(),
- GetShelfWidget()->GetDimmerBoundsForTest());
-
// Auto hidden shelf has a visible height of 0 in MD (where this inequality
// does not apply); whereas auto hidden shelf has a visible height of 3 in
// non-MD.
@@ -382,8 +377,6 @@ void ShelfLayoutManagerTest::RunGestureDragTests(gfx::Vector2d delta) {
EXPECT_EQ(SHELF_VISIBLE, shelf->GetVisibilityState());
EXPECT_EQ(SHELF_AUTO_HIDE_BEHAVIOR_NEVER, shelf->auto_hide_behavior());
EXPECT_EQ(bounds_shelf.ToString(), window->bounds().ToString());
- EXPECT_EQ(GetShelfWidget()->GetDimmerBoundsForTest(),
- GetShelfWidget()->GetWindowBoundsInScreen());
EXPECT_EQ(shelf_shown.ToString(),
GetShelfWidget()->GetWindowBoundsInScreen().ToString());
@@ -429,7 +422,6 @@ void ShelfLayoutManagerTest::RunGestureDragTests(gfx::Vector2d delta) {
EXPECT_EQ(SHELF_AUTO_HIDE, shelf->GetVisibilityState());
EXPECT_EQ(SHELF_AUTO_HIDE_HIDDEN, shelf->GetAutoHideState());
EXPECT_EQ(SHELF_AUTO_HIDE_BEHAVIOR_ALWAYS, shelf->auto_hide_behavior());
- EXPECT_EQ(GetShelfWidget()->GetDimmerBoundsForTest(), gfx::Rect());
EXPECT_EQ(bounds_noshelf.ToString(), window->bounds().ToString());
EXPECT_EQ(shelf_hidden.ToString(),
GetShelfWidget()->GetWindowBoundsInScreen().ToString());
@@ -451,8 +443,6 @@ void ShelfLayoutManagerTest::RunGestureDragTests(gfx::Vector2d delta) {
EXPECT_EQ(SHELF_VISIBLE, shelf->GetVisibilityState());
EXPECT_EQ(SHELF_AUTO_HIDE_BEHAVIOR_NEVER, shelf->auto_hide_behavior());
EXPECT_EQ(bounds_shelf.ToString(), window->bounds().ToString());
- EXPECT_EQ(GetShelfWidget()->GetDimmerBoundsForTest(),
- GetShelfWidget()->GetWindowBoundsInScreen());
EXPECT_EQ(shelf_shown.ToString(),
GetShelfWidget()->GetWindowBoundsInScreen().ToString());
@@ -465,7 +455,6 @@ void ShelfLayoutManagerTest::RunGestureDragTests(gfx::Vector2d delta) {
EXPECT_EQ(SHELF_AUTO_HIDE, shelf->GetVisibilityState());
EXPECT_EQ(SHELF_AUTO_HIDE_HIDDEN, shelf->GetAutoHideState());
EXPECT_EQ(SHELF_AUTO_HIDE_BEHAVIOR_ALWAYS, shelf->auto_hide_behavior());
- EXPECT_EQ(GetShelfWidget()->GetDimmerBoundsForTest(), gfx::Rect());
EXPECT_EQ(bounds_noshelf.ToString(), window->bounds().ToString());
EXPECT_EQ(shelf_hidden.ToString(),
GetShelfWidget()->GetWindowBoundsInScreen().ToString());
@@ -500,8 +489,6 @@ void ShelfLayoutManagerTest::RunGestureDragTests(gfx::Vector2d delta) {
EXPECT_EQ(SHELF_VISIBLE, shelf->GetVisibilityState());
EXPECT_EQ(SHELF_AUTO_HIDE_BEHAVIOR_NEVER, shelf->auto_hide_behavior());
EXPECT_EQ(bounds_shelf.ToString(), window->bounds().ToString());
- EXPECT_EQ(GetShelfWidget()->GetDimmerBoundsForTest(),
- GetShelfWidget()->GetWindowBoundsInScreen());
EXPECT_EQ(shelf_shown.ToString(),
GetShelfWidget()->GetWindowBoundsInScreen().ToString());
@@ -514,7 +501,6 @@ void ShelfLayoutManagerTest::RunGestureDragTests(gfx::Vector2d delta) {
EXPECT_EQ(SHELF_AUTO_HIDE, shelf->GetVisibilityState());
EXPECT_EQ(SHELF_AUTO_HIDE_HIDDEN, shelf->GetAutoHideState());
EXPECT_EQ(SHELF_AUTO_HIDE_BEHAVIOR_ALWAYS, shelf->auto_hide_behavior());
- EXPECT_EQ(GetShelfWidget()->GetDimmerBoundsForTest(), gfx::Rect());
EXPECT_EQ(bounds_noshelf.ToString(), window->bounds().ToString());
EXPECT_EQ(shelf_hidden.ToString(),
GetShelfWidget()->GetWindowBoundsInScreen().ToString());
@@ -932,171 +918,6 @@ TEST_F(ShelfLayoutManagerTest, SetAutoHideBehavior) {
widget->GetWorkAreaBoundsInScreen().bottom());
}
-// Basic assertions around the dimming of the shelf.
-TEST_F(ShelfLayoutManagerTest, DimmingBehavior) {
- ui::test::EventGenerator& generator(GetEventGenerator());
-
- ShelfWidget* shelf_widget = GetShelfWidget();
- shelf_widget->DisableDimmingAnimationsForTest();
- display::Display display = display::Screen::GetScreen()->GetPrimaryDisplay();
- gfx::Point off_shelf = display.bounds().CenterPoint();
- gfx::Point on_shelf = shelf_widget->GetWindowBoundsInScreen().CenterPoint();
- views::Widget* widget = CreateTestWidget();
-
- // Test there is no dimming object active at this point.
- generator.MoveMouseTo(on_shelf.x(), on_shelf.y());
- EXPECT_EQ(-1, shelf_widget->GetDimmingAlphaForTest());
- generator.MoveMouseTo(off_shelf.x(), off_shelf.y());
- EXPECT_EQ(-1, shelf_widget->GetDimmingAlphaForTest());
-
- // After maximization, the shelf should be visible and the dimmer created.
- widget->Maximize();
-
- on_shelf = shelf_widget->GetWindowBoundsInScreen().CenterPoint();
- EXPECT_LT(0, shelf_widget->GetDimmingAlphaForTest());
-
- // Moving the mouse off the shelf should dim the bar.
- generator.MoveMouseTo(off_shelf.x(), off_shelf.y());
- EXPECT_LT(0, shelf_widget->GetDimmingAlphaForTest());
-
- // Adding touch events outside the shelf should still keep the shelf in
- // dimmed state.
- generator.PressTouch();
- generator.MoveTouch(off_shelf);
- EXPECT_LT(0, shelf_widget->GetDimmingAlphaForTest());
- // Move the touch into the shelf area should undim.
- generator.MoveTouch(on_shelf);
- EXPECT_EQ(0, shelf_widget->GetDimmingAlphaForTest());
- generator.ReleaseTouch();
- // And a release dims again.
- EXPECT_LT(0, shelf_widget->GetDimmingAlphaForTest());
-
- // Moving the mouse on the shelf should undim the bar.
- generator.MoveMouseTo(on_shelf);
- EXPECT_EQ(0, shelf_widget->GetDimmingAlphaForTest());
-
- // No matter what the touch events do, the shelf should stay undimmed.
- generator.PressTouch();
- generator.MoveTouch(off_shelf);
- EXPECT_EQ(0, shelf_widget->GetDimmingAlphaForTest());
- generator.MoveTouch(on_shelf);
- EXPECT_EQ(0, shelf_widget->GetDimmingAlphaForTest());
- generator.MoveTouch(off_shelf);
- EXPECT_EQ(0, shelf_widget->GetDimmingAlphaForTest());
- generator.MoveTouch(on_shelf);
- generator.ReleaseTouch();
-
- // After restore, the dimming object should be deleted again.
- widget->Restore();
- EXPECT_EQ(-1, shelf_widget->GetDimmingAlphaForTest());
-}
-
-// Test that dimming works correctly with multiple displays.
-TEST_F(ShelfLayoutManagerTest, DimmingBehaviorDualDisplay) {
- if (!SupportsMultipleDisplays())
- return;
-
- // Create two displays.
- UpdateDisplay("0+0-200x200,+200+0-100x100");
- aura::Window::Windows root_windows = Shell::GetAllRootWindows();
- EXPECT_EQ(root_windows.size(), 2U);
-
- std::vector<ShelfWidget*> shelf_widgets;
- for (auto* root_window : root_windows) {
- ShelfLayoutManager* shelf =
- GetRootWindowController(root_window)->GetShelfLayoutManager();
- shelf_widgets.push_back(shelf->shelf_widget());
-
- // For disabling the dimming animation to work, the animation must be
- // disabled prior to creating the dimmer.
- shelf_widgets.back()->DisableDimmingAnimationsForTest();
-
- // Create a maximized window to create the dimmer.
- views::Widget::InitParams params;
- params.context = root_window;
- params.bounds = root_window->GetBoundsInScreen();
- params.show_state = ui::SHOW_STATE_MAXIMIZED;
- CreateTestWidgetWithParams(params);
- }
-
- ui::test::EventGenerator& generator(GetEventGenerator());
-
- generator.MoveMouseTo(root_windows[0]->GetBoundsInScreen().CenterPoint());
- EXPECT_LT(0, shelf_widgets[0]->GetDimmingAlphaForTest());
- EXPECT_LT(0, shelf_widgets[1]->GetDimmingAlphaForTest());
-
- generator.MoveMouseTo(
- shelf_widgets[0]->GetWindowBoundsInScreen().CenterPoint());
- EXPECT_EQ(0, shelf_widgets[0]->GetDimmingAlphaForTest());
- EXPECT_LT(0, shelf_widgets[1]->GetDimmingAlphaForTest());
-
- generator.MoveMouseTo(
- shelf_widgets[1]->GetWindowBoundsInScreen().CenterPoint());
- EXPECT_LT(0, shelf_widgets[0]->GetDimmingAlphaForTest());
- EXPECT_EQ(0, shelf_widgets[1]->GetDimmingAlphaForTest());
-
- generator.MoveMouseTo(root_windows[1]->GetBoundsInScreen().CenterPoint());
- EXPECT_LT(0, shelf_widgets[0]->GetDimmingAlphaForTest());
- EXPECT_LT(0, shelf_widgets[1]->GetDimmingAlphaForTest());
-}
-
-// Assertions around the dimming of the shelf in conjunction with menus.
-TEST_F(ShelfLayoutManagerTest, DimmingBehaviorWithMenus) {
- ui::test::EventGenerator& generator(GetEventGenerator());
- generator.MoveMouseTo(0, 0);
-
- ShelfWidget* shelf_widget = GetShelfWidget();
- shelf_widget->DisableDimmingAnimationsForTest();
-
- // After maximization, the shelf should be visible and the dimmer created.
- views::Widget* widget = CreateTestWidget();
- widget->Maximize();
-
- display::Display display = display::Screen::GetScreen()->GetPrimaryDisplay();
- gfx::Point off_shelf = display.bounds().CenterPoint();
- gfx::Point on_shelf = shelf_widget->GetWindowBoundsInScreen().CenterPoint();
-
- // Moving the mouse on the shelf should undim the bar.
- generator.MoveMouseTo(on_shelf.x(), on_shelf.y());
- EXPECT_EQ(0, shelf_widget->GetDimmingAlphaForTest());
-
- // Simulate a menu opening.
- shelf_widget->ForceUndimming(true);
-
- // Moving the mouse off the shelf should not dim the bar.
- generator.MoveMouseTo(off_shelf.x(), off_shelf.y());
- EXPECT_EQ(0, shelf_widget->GetDimmingAlphaForTest());
-
- // No matter what the touch events do, the shelf should stay undimmed.
- generator.PressTouch();
- generator.MoveTouch(off_shelf);
- EXPECT_EQ(0, shelf_widget->GetDimmingAlphaForTest());
- generator.MoveTouch(on_shelf);
- EXPECT_EQ(0, shelf_widget->GetDimmingAlphaForTest());
- generator.MoveTouch(off_shelf);
- EXPECT_EQ(0, shelf_widget->GetDimmingAlphaForTest());
- generator.ReleaseTouch();
- EXPECT_EQ(0, shelf_widget->GetDimmingAlphaForTest());
-
- // "Closing the menu" should now turn off the menu since no event is inside
- // the shelf any longer.
- shelf_widget->ForceUndimming(false);
- EXPECT_LT(0, shelf_widget->GetDimmingAlphaForTest());
-
- // Moving the mouse again on the shelf which should undim the bar again.
- // This time we check that the bar stays undimmed when the mouse remains on
- // the bar and the "menu gets closed".
- generator.MoveMouseTo(on_shelf.x(), on_shelf.y());
- EXPECT_EQ(0, shelf_widget->GetDimmingAlphaForTest());
- shelf_widget->ForceUndimming(true);
- generator.MoveMouseTo(off_shelf.x(), off_shelf.y());
- EXPECT_EQ(0, shelf_widget->GetDimmingAlphaForTest());
- generator.MoveMouseTo(on_shelf.x(), on_shelf.y());
- EXPECT_EQ(0, shelf_widget->GetDimmingAlphaForTest());
- shelf_widget->ForceUndimming(true);
- EXPECT_EQ(0, shelf_widget->GetDimmingAlphaForTest());
-}
-
// Verifies the shelf is visible when status/shelf is focused.
TEST_F(ShelfLayoutManagerTest, VisibleWhenStatusOrShelfFocused) {
WmShelf* shelf = GetPrimaryShelf();
@@ -1712,37 +1533,6 @@ TEST_F(ShelfLayoutManagerTest, WorkAreaChangeWorkspace) {
widget_one->GetNativeWindow()->bounds().size().GetArea());
}
-// Confirm that the shelf is dimmed only when content is maximized and
-// shelf is not autohidden.
-TEST_F(ShelfLayoutManagerTest, Dimming) {
- WmShelf* shelf = GetPrimaryShelf();
- shelf->SetAutoHideBehavior(SHELF_AUTO_HIDE_BEHAVIOR_NEVER);
- std::unique_ptr<aura::Window> w1(CreateTestWindow());
- w1->Show();
- wm::ActivateWindow(w1.get());
-
- // Normal window doesn't dim shelf.
- w1->SetProperty(aura::client::kShowStateKey, ui::SHOW_STATE_NORMAL);
- ShelfWidget* shelf_widget = GetShelfWidget();
- EXPECT_FALSE(shelf_widget->GetDimsShelf());
-
- // Maximized window does.
- w1->SetProperty(aura::client::kShowStateKey, ui::SHOW_STATE_MAXIMIZED);
- EXPECT_TRUE(shelf_widget->GetDimsShelf());
-
- // Change back to normal stops dimming.
- w1->SetProperty(aura::client::kShowStateKey, ui::SHOW_STATE_NORMAL);
- EXPECT_FALSE(shelf_widget->GetDimsShelf());
-
- // Changing back to maximized dims again.
- w1->SetProperty(aura::client::kShowStateKey, ui::SHOW_STATE_MAXIMIZED);
- EXPECT_TRUE(shelf_widget->GetDimsShelf());
-
- // Changing shelf to autohide stops dimming.
- shelf->SetAutoHideBehavior(SHELF_AUTO_HIDE_BEHAVIOR_ALWAYS);
- EXPECT_FALSE(shelf_widget->GetDimsShelf());
-}
-
// This test fails on Windows (likely due to hard-coded pointer coordinate
// arithmetic), but the Windows ash shell isn't supported any more so it's
// probably not worth fixing. Also note that this test uses system tray
« no previous file with comments | « ash/shelf/dimmer_view.cc ('k') | ash/wm/overview/window_selector_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698