Index: ash/wm/workspace/workspace_event_handler_unittest.cc |
diff --git a/ash/wm/workspace/workspace_event_handler_unittest.cc b/ash/wm/workspace/workspace_event_handler_unittest.cc |
index fd8da55d005ce78bb68a5f8c580604a370989de5..fa1948118b244f15953355be76ea3f27b3137f09 100644 |
--- a/ash/wm/workspace/workspace_event_handler_unittest.cc |
+++ b/ash/wm/workspace/workspace_event_handler_unittest.cc |
@@ -19,6 +19,7 @@ |
#include "ui/aura/window.h" |
#include "ui/base/hit_test.h" |
#include "ui/gfx/screen.h" |
+#include "ui/views/corewm/window_util.h" |
#if defined(OS_WIN) |
#include "base/win/windows_version.h" |
@@ -201,7 +202,7 @@ TEST_F(WorkspaceEventHandlerTest, DoubleClickSingleAxisResizeEdge) { |
} |
TEST_F(WorkspaceEventHandlerTest, |
- DoubleClickSingleAxisDoesntResizeVerticalEdgeIfConstrained) { |
+ DoubleClickSingleAxisDoesntResizeVerticalEdgeIfConstrained) { |
gfx::Rect restored_bounds(10, 10, 50, 50); |
aura::test::TestWindowDelegate wd; |
scoped_ptr<aura::Window> window(CreateTestWindow(&wd, restored_bounds)); |
@@ -225,7 +226,7 @@ TEST_F(WorkspaceEventHandlerTest, |
} |
TEST_F(WorkspaceEventHandlerTest, |
- DoubleClickSingleAxisDoesntResizeHorizontalEdgeIfConstrained) { |
+ DoubleClickSingleAxisDoesntResizeHorizontalEdgeIfConstrained) { |
gfx::Rect restored_bounds(10, 10, 50, 50); |
aura::test::TestWindowDelegate wd; |
scoped_ptr<aura::Window> window(CreateTestWindow(&wd, restored_bounds)); |
@@ -248,6 +249,35 @@ TEST_F(WorkspaceEventHandlerTest, |
EXPECT_EQ(restored_bounds.width(), window->bounds().width()); |
} |
+TEST_F(WorkspaceEventHandlerTest, |
+ DoubleClickOrTapWithModalChildDoesntMaximize) { |
+ aura::test::TestWindowDelegate wd1; |
+ aura::test::TestWindowDelegate wd2; |
+ scoped_ptr<aura::Window> window( |
+ CreateTestWindow(&wd1, gfx::Rect(10, 20, 30, 40))); |
+ scoped_ptr<aura::Window> child( |
+ CreateTestWindow(&wd2, gfx::Rect(0, 0, 1, 1))); |
+ window->SetProperty(aura::client::kCanMaximizeKey, true); |
+ wd1.set_window_component(HTCAPTION); |
+ |
+ child->SetProperty(aura::client::kModalKey, ui::MODAL_TYPE_WINDOW); |
+ views::corewm::AddTransientChild(window.get(), child.get()); |
+ |
+ wm::WindowState* window_state = wm::GetWindowState(window.get()); |
+ EXPECT_FALSE(window_state->IsMaximized()); |
+ aura::Window* root = Shell::GetPrimaryRootWindow(); |
+ aura::test::EventGenerator generator(root, window.get()); |
+ generator.DoubleClickLeftButton(); |
+ EXPECT_EQ("10,20 30x40", window->bounds().ToString()); |
+ EXPECT_FALSE(window_state->IsMaximized()); |
+ |
+ generator.GestureTapAt(gfx::Point(25, 25)); |
+ generator.GestureTapAt(gfx::Point(25, 25)); |
+ RunAllPendingInMessageLoop(); |
+ EXPECT_EQ("10,20 30x40", window->bounds().ToString()); |
+ EXPECT_FALSE(window_state->IsMaximized()); |
+} |
+ |
TEST_F(WorkspaceEventHandlerTest, DoubleClickCaptionTogglesMaximize) { |
aura::test::TestWindowDelegate wd; |
scoped_ptr<aura::Window> window( |