| Index: ash/wm/window_util_unittest.cc
|
| diff --git a/ash/wm/window_util_unittest.cc b/ash/wm/window_util_unittest.cc
|
| index 719bb26c8fc945f2d72aca012ea574b7c5d079e9..58118186cb6365cdfc5a0820544e04a6ecbd396f 100644
|
| --- a/ash/wm/window_util_unittest.cc
|
| +++ b/ash/wm/window_util_unittest.cc
|
| @@ -14,15 +14,17 @@
|
| #include "ui/display/screen.h"
|
|
|
| namespace ash {
|
| +namespace wm {
|
|
|
| namespace {
|
|
|
| std::string GetAdjustedBounds(const gfx::Rect& visible,
|
| gfx::Rect to_be_adjusted) {
|
| - wm::AdjustBoundsToEnsureMinimumWindowVisibility(visible, &to_be_adjusted);
|
| + AdjustBoundsToEnsureMinimumWindowVisibility(visible, &to_be_adjusted);
|
| return to_be_adjusted.ToString();
|
| }
|
| -}
|
| +
|
| +} // namespace
|
|
|
| typedef test::AshTestBase WindowUtilTest;
|
|
|
| @@ -31,17 +33,17 @@ TEST_F(WindowUtilTest, CenterWindow) {
|
| std::unique_ptr<aura::Window> window(
|
| CreateTestWindowInShellWithBounds(gfx::Rect(12, 20, 100, 100)));
|
|
|
| - wm::WindowState* window_state = wm::GetWindowState(window.get());
|
| + WindowState* window_state = GetWindowState(window.get());
|
| EXPECT_FALSE(window_state->bounds_changed_by_user());
|
|
|
| - wm::CenterWindow(WmWindow::Get(window.get()));
|
| + CenterWindow(WmWindow::Get(window.get()));
|
| // Centring window is considered as a user's action.
|
| EXPECT_TRUE(window_state->bounds_changed_by_user());
|
| EXPECT_EQ("200,126 100x100", window->bounds().ToString());
|
| EXPECT_EQ("200,126 100x100", window->GetBoundsInScreen().ToString());
|
| window->SetBoundsInScreen(gfx::Rect(600, 0, 100, 100),
|
| display_manager()->GetSecondaryDisplay());
|
| - wm::CenterWindow(WmWindow::Get(window.get()));
|
| + CenterWindow(WmWindow::Get(window.get()));
|
| EXPECT_EQ("250,126 100x100", window->bounds().ToString());
|
| EXPECT_EQ("750,126 100x100", window->GetBoundsInScreen().ToString());
|
| }
|
| @@ -60,7 +62,7 @@ TEST_F(WindowUtilTest, AdjustBoundsToEnsureMinimumVisibility) {
|
| EXPECT_EQ("75,75 100x100",
|
| GetAdjustedBounds(visible_bounds, gfx::Rect(100, 100, 150, 150)));
|
|
|
| - // For windows that have smaller dimensions than wm::kMinimumOnScreenArea,
|
| + // For windows that have smaller dimensions than kMinimumOnScreenArea,
|
| // we should adjust bounds accordingly, leaving no white space.
|
| EXPECT_EQ("50,80 20x20",
|
| GetAdjustedBounds(visible_bounds, gfx::Rect(50, 80, 20, 20)));
|
| @@ -109,4 +111,39 @@ TEST_F(WindowUtilTest, AdjustBoundsToEnsureMinimumVisibility) {
|
| GetAdjustedBounds(visible_bounds_left, gfx::Rect(0, 0, 150, 150)));
|
| }
|
|
|
| +TEST_F(WindowUtilTest, MoveWindowToDisplay) {
|
| + UpdateDisplay("500x400, 600x400");
|
| + std::unique_ptr<aura::Window> window(
|
| + CreateTestWindowInShellWithBounds(gfx::Rect(12, 20, 100, 100)));
|
| + display::Screen* screen = display::Screen::GetScreen();
|
| + const int64_t original_display_id =
|
| + screen->GetDisplayNearestWindow(window.get()).id();
|
| + EXPECT_EQ(screen->GetPrimaryDisplay().id(), original_display_id);
|
| + const int original_container_id = window->parent()->id();
|
| + const aura::Window* original_root = window->GetRootWindow();
|
| +
|
| + EXPECT_FALSE(MoveWindowToDisplay(window.get(), display::kInvalidDisplayId));
|
| + EXPECT_EQ(original_display_id,
|
| + screen->GetDisplayNearestWindow(window.get()).id());
|
| + EXPECT_FALSE(MoveWindowToDisplay(window.get(), original_display_id));
|
| + EXPECT_EQ(original_display_id,
|
| + screen->GetDisplayNearestWindow(window.get()).id());
|
| +
|
| + ASSERT_EQ(2, screen->GetNumDisplays());
|
| + const int64_t secondary_display_id = screen->GetAllDisplays()[1].id();
|
| + EXPECT_NE(original_display_id, secondary_display_id);
|
| + EXPECT_TRUE(MoveWindowToDisplay(window.get(), secondary_display_id));
|
| + EXPECT_EQ(secondary_display_id,
|
| + screen->GetDisplayNearestWindow(window.get()).id());
|
| + EXPECT_EQ(original_container_id, window->parent()->id());
|
| + EXPECT_NE(original_root, window->GetRootWindow());
|
| +
|
| + EXPECT_TRUE(MoveWindowToDisplay(window.get(), original_display_id));
|
| + EXPECT_EQ(original_display_id,
|
| + screen->GetDisplayNearestWindow(window.get()).id());
|
| + EXPECT_EQ(original_container_id, window->parent()->id());
|
| + EXPECT_EQ(original_root, window->GetRootWindow());
|
| +}
|
| +
|
| +} // namespace wm
|
| } // namespace ash
|
|
|