| Index: athena/wm/window_manager_unittest.cc
|
| diff --git a/athena/wm/window_manager_unittest.cc b/athena/wm/window_manager_unittest.cc
|
| index 0f03ae12ce2229b7ae13b6349965fb06353452b6..58f099710cb22a7eb626da32679b2d31c57f46a1 100644
|
| --- a/athena/wm/window_manager_unittest.cc
|
| +++ b/athena/wm/window_manager_unittest.cc
|
| @@ -60,9 +60,16 @@ TEST_F(WindowManagerTest, OverviewModeBasics) {
|
| first->bounds().size().ToString());
|
| EXPECT_FALSE(WindowManager::GetInstance()->IsOverviewModeActive());
|
|
|
| - // Tests that going into overview mode does not change the window bounds.
|
| WindowManager::GetInstance()->ToggleOverview();
|
| ASSERT_TRUE(WindowManager::GetInstance()->IsOverviewModeActive());
|
| +
|
| + // |second| should no longer be active. If |second| were to stay active, it
|
| + // would be possible to type text into a text field in |second| and to stay
|
| + // in overview mode.
|
| + EXPECT_FALSE(wm::IsActiveWindow(first.get()));
|
| + EXPECT_FALSE(wm::IsActiveWindow(second.get()));
|
| +
|
| + // Entering overview mode should not have changed the window bounds.
|
| EXPECT_EQ(first->bounds().ToString(), second->bounds().ToString());
|
| EXPECT_EQ(gfx::Screen::GetNativeScreen()
|
| ->GetPrimaryDisplay()
|
| @@ -79,6 +86,7 @@ TEST_F(WindowManagerTest, OverviewModeBasics) {
|
| ASSERT_FALSE(WindowManager::GetInstance()->IsOverviewModeActive());
|
| EXPECT_FALSE(first->IsVisible());
|
| EXPECT_TRUE(second->IsVisible());
|
| + EXPECT_TRUE(wm::IsActiveWindow(second.get()));
|
| }
|
|
|
| TEST_F(WindowManagerTest, OverviewToSplitViewMode) {
|
| @@ -97,10 +105,33 @@ TEST_F(WindowManagerTest, OverviewToSplitViewMode) {
|
|
|
| // Go into split-view mode.
|
| WindowOverviewModeDelegate* overview_delegate = wm_api.wm();
|
| - overview_delegate->OnSplitViewMode(NULL, w2.get());
|
| + overview_delegate->OnSelectWindow(w2.get(),
|
| + WindowOverviewModeDelegate::SPLIT_LEFT);
|
| EXPECT_TRUE(w3->IsVisible());
|
| EXPECT_TRUE(w2->IsVisible());
|
| EXPECT_FALSE(w1->IsVisible());
|
| + EXPECT_TRUE(wm::IsActiveWindow(w2.get()));
|
| +}
|
| +
|
| +TEST_F(WindowManagerTest, NewWindowFromOverview) {
|
| + aura::test::TestWindowDelegate delegate;
|
| + scoped_ptr<aura::Window> w1(CreateTestWindow(&delegate, gfx::Rect()));
|
| + scoped_ptr<aura::Window> w2(CreateTestWindow(&delegate, gfx::Rect()));
|
| + wm::ActivateWindow(w2.get());
|
| +
|
| + WindowManager::GetInstance()->ToggleOverview();
|
| + EXPECT_TRUE(w1->IsVisible());
|
| + EXPECT_TRUE(w2->IsVisible());
|
| +
|
| + // Test that opening a new window exits overview mode. The new window could
|
| + // have been opened by JavaScript or by the home card.
|
| + scoped_ptr<aura::Window> w3(CreateTestWindow(&delegate, gfx::Rect()));
|
| +
|
| + ASSERT_FALSE(WindowManager::GetInstance()->IsOverviewModeActive());
|
| + EXPECT_TRUE(w3->IsVisible());
|
| + EXPECT_TRUE(wm::IsActiveWindow(w3.get()));
|
| + EXPECT_FALSE(w1->IsVisible());
|
| + EXPECT_FALSE(w2->IsVisible());
|
| }
|
|
|
| TEST_F(WindowManagerTest, BezelGestureToSplitViewMode) {
|
| @@ -364,9 +395,11 @@ TEST_F(WindowManagerTest, OverviewModeFromSplitMode) {
|
| EXPECT_EQ(w2.get(), wm_api.GetSplitViewController()->right_window());
|
|
|
| WindowOverviewModeDelegate* overview_delegate = wm_api.wm();
|
| - overview_delegate->OnSelectWindow(w1.get());
|
| + overview_delegate->OnSelectWindow(w1.get(),
|
| + WindowOverviewModeDelegate::SPLIT_NONE);
|
| EXPECT_FALSE(wm_api.GetSplitViewController()->IsSplitViewModeActive());
|
| EXPECT_TRUE(w1->IsVisible());
|
| + EXPECT_TRUE(wm::IsActiveWindow(w1.get()));
|
| // Make sure the windows that were in split-view mode are hidden.
|
| EXPECT_FALSE(w2->IsVisible());
|
| EXPECT_FALSE(w3->IsVisible());
|
|
|