| Index: ash/wm/workspace/workspace_window_resizer_unittest.cc
|
| diff --git a/ash/wm/workspace/workspace_window_resizer_unittest.cc b/ash/wm/workspace/workspace_window_resizer_unittest.cc
|
| index a0a8561f51e7ad676b0b71758201827669367994..8a779cf38fe1cea08e747a9e912a05758dc94297 100644
|
| --- a/ash/wm/workspace/workspace_window_resizer_unittest.cc
|
| +++ b/ash/wm/workspace/workspace_window_resizer_unittest.cc
|
| @@ -4,6 +4,7 @@
|
|
|
| #include "ash/wm/workspace/workspace_window_resizer.h"
|
|
|
| +#include "ash/ash_constants.h"
|
| #include "ash/ash_switches.h"
|
| #include "ash/display/display_controller.h"
|
| #include "ash/root_window_controller.h"
|
| @@ -22,6 +23,7 @@
|
| #include "base/strings/string_number_conversions.h"
|
| #include "ui/aura/client/aura_constants.h"
|
| #include "ui/aura/root_window.h"
|
| +#include "ui/aura/test/event_generator.h"
|
| #include "ui/aura/test/test_window_delegate.h"
|
| #include "ui/base/hit_test.h"
|
| #include "ui/gfx/insets.h"
|
| @@ -113,6 +115,7 @@ class WorkspaceWindowResizerTest : public test::AshTestBase {
|
| window2_.reset();
|
| window3_.reset();
|
| window4_.reset();
|
| + touch_resize_window_.reset();
|
| AshTestBase::TearDown();
|
| }
|
|
|
| @@ -151,6 +154,22 @@ class WorkspaceWindowResizerTest : public test::AshTestBase {
|
| return Shell::GetPrimaryRootWindowController()->GetShelfLayoutManager();
|
| }
|
|
|
| + void InitTouchResizeWindow(const gfx::Rect& bounds, int window_component) {
|
| + touch_resize_delegate_.set_window_component(window_component);
|
| + touch_resize_window_.reset(
|
| + CreateTestWindowInShellWithDelegate(&touch_resize_delegate_, 0,
|
| + bounds));
|
| + gfx::Insets mouse_insets = gfx::Insets(-ash::kResizeOutsideBoundsSize,
|
| + -ash::kResizeOutsideBoundsSize,
|
| + -ash::kResizeOutsideBoundsSize,
|
| + -ash::kResizeOutsideBoundsSize);
|
| + gfx::Insets touch_insets = mouse_insets.Scale(
|
| + ash::kResizeOutsideBoundsScaleForTouch);
|
| + touch_resize_window_->SetHitTestBoundsOverrideOuter(mouse_insets,
|
| + touch_insets);
|
| + touch_resize_window_->set_hit_test_bounds_override_inner(mouse_insets);
|
| + }
|
| +
|
| TestWindowDelegate delegate_;
|
| TestWindowDelegate delegate2_;
|
| TestWindowDelegate delegate3_;
|
| @@ -160,6 +179,9 @@ class WorkspaceWindowResizerTest : public test::AshTestBase {
|
| scoped_ptr<aura::Window> window3_;
|
| scoped_ptr<aura::Window> window4_;
|
|
|
| + TestWindowDelegate touch_resize_delegate_;
|
| + scoped_ptr<aura::Window> touch_resize_window_;
|
| +
|
| private:
|
| DISALLOW_COPY_AND_ASSIGN(WorkspaceWindowResizerTest);
|
| };
|
| @@ -190,7 +212,8 @@ TEST_F(WorkspaceWindowResizerTest, AttachedResize_RIGHT_2) {
|
| std::vector<aura::Window*> windows;
|
| windows.push_back(window2_.get());
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTRIGHT, windows));
|
| + window_.get(), gfx::Point(), HTRIGHT,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, windows));
|
| ASSERT_TRUE(resizer.get());
|
| // Move it 100 to the right, which should expand w1 and push w2.
|
| resizer->Drag(CalculateDragPoint(*resizer, 100, 10), 0);
|
| @@ -223,7 +246,8 @@ TEST_F(WorkspaceWindowResizerTest, AttachedResize_RIGHT_Compress) {
|
| std::vector<aura::Window*> windows;
|
| windows.push_back(window2_.get());
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTRIGHT, windows));
|
| + window_.get(), gfx::Point(), HTRIGHT,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, windows));
|
| ASSERT_TRUE(resizer.get());
|
| // Move it 100 to the left, which should expand w2 and collapse w1.
|
| resizer->Drag(CalculateDragPoint(*resizer, -100, 10), 0);
|
| @@ -260,7 +284,8 @@ TEST_F(WorkspaceWindowResizerTest, AttachedResize_RIGHT_3) {
|
| windows.push_back(window2_.get());
|
| windows.push_back(window3_.get());
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTRIGHT, windows));
|
| + window_.get(), gfx::Point(), HTRIGHT,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, windows));
|
| ASSERT_TRUE(resizer.get());
|
| // Move it 100 to the right, which should expand w1 and push w2 and w3.
|
| resizer->Drag(CalculateDragPoint(*resizer, 100, -10), 0);
|
| @@ -300,7 +325,8 @@ TEST_F(WorkspaceWindowResizerTest, AttachedResize_RIGHT_3_Compress) {
|
| windows.push_back(window2_.get());
|
| windows.push_back(window3_.get());
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTRIGHT, windows));
|
| + window_.get(), gfx::Point(), HTRIGHT,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, windows));
|
| ASSERT_TRUE(resizer.get());
|
| // Move it -100 to the right, which should collapse w1 and expand w2 and w3.
|
| resizer->Drag(CalculateDragPoint(*resizer, -100, -10), 0);
|
| @@ -329,7 +355,8 @@ TEST_F(WorkspaceWindowResizerTest, AttachedResize_BOTTOM_Compress) {
|
| std::vector<aura::Window*> windows;
|
| windows.push_back(window2_.get());
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTBOTTOM, windows));
|
| + window_.get(), gfx::Point(), HTBOTTOM,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, windows));
|
| ASSERT_TRUE(resizer.get());
|
| // Move it up 100, which should expand w2 and collapse w1.
|
| resizer->Drag(CalculateDragPoint(*resizer, 10, -100), 0);
|
| @@ -362,7 +389,8 @@ TEST_F(WorkspaceWindowResizerTest, AttachedResize_BOTTOM_2) {
|
| std::vector<aura::Window*> windows;
|
| windows.push_back(window2_.get());
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTBOTTOM, windows));
|
| + window_.get(), gfx::Point(), HTBOTTOM,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, windows));
|
| ASSERT_TRUE(resizer.get());
|
| // Move it 100 to the bottom, which should expand w1 and push w2.
|
| resizer->Drag(CalculateDragPoint(*resizer, 10, 100), 0);
|
| @@ -411,7 +439,8 @@ TEST_F(WorkspaceWindowResizerTest, MAYBE_AttachedResize_BOTTOM_3) {
|
| windows.push_back(window2_.get());
|
| windows.push_back(window3_.get());
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTBOTTOM, windows));
|
| + window_.get(), gfx::Point(), HTBOTTOM,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, windows));
|
| ASSERT_TRUE(resizer.get());
|
| // Move it 100 down, which should expand w1 and push w2 and w3.
|
| resizer->Drag(CalculateDragPoint(*resizer, -10, 100), 0);
|
| @@ -451,7 +480,8 @@ TEST_F(WorkspaceWindowResizerTest, AttachedResize_BOTTOM_3_Compress) {
|
| windows.push_back(window2_.get());
|
| windows.push_back(window3_.get());
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTBOTTOM, windows));
|
| + window_.get(), gfx::Point(), HTBOTTOM,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, windows));
|
| ASSERT_TRUE(resizer.get());
|
| // Move it 100 up, which should collapse w1 and expand w2 and w3.
|
| resizer->Drag(CalculateDragPoint(*resizer, -10, -100), 0);
|
| @@ -487,7 +517,8 @@ TEST_F(WorkspaceWindowResizerTest, MAYBE_Edge) {
|
| window_->SetBounds(gfx::Rect(20, 30, 50, 60));
|
| {
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTCAPTION, empty_windows()));
|
| + window_.get(), gfx::Point(), HTCAPTION,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, empty_windows()));
|
| ASSERT_TRUE(resizer.get());
|
| resizer->Drag(CalculateDragPoint(*resizer, 0, 10), 0);
|
| resizer->CompleteDrag(0);
|
| @@ -500,7 +531,8 @@ TEST_F(WorkspaceWindowResizerTest, MAYBE_Edge) {
|
| // Try the same with the right side.
|
| {
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTCAPTION, empty_windows()));
|
| + window_.get(), gfx::Point(), HTCAPTION,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, empty_windows()));
|
| ASSERT_TRUE(resizer.get());
|
| resizer->Drag(CalculateDragPoint(*resizer, 800, 10), 0);
|
| resizer->CompleteDrag(0);
|
| @@ -525,7 +557,8 @@ TEST_F(WorkspaceWindowResizerTest, MAYBE_Edge) {
|
| EXPECT_EQ("800,10 50x60", window_->GetBoundsInScreen().ToString());
|
|
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTCAPTION, empty_windows()));
|
| + window_.get(), gfx::Point(), HTCAPTION,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, empty_windows()));
|
| ASSERT_TRUE(resizer.get());
|
|
|
| resizer->Drag(CalculateDragPoint(*resizer, 199, 00), 0);
|
| @@ -545,7 +578,8 @@ TEST_F(WorkspaceWindowResizerTest, NonResizableWindows) {
|
| window_->SetProperty(aura::client::kCanResizeKey, false);
|
|
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTCAPTION, empty_windows()));
|
| + window_.get(), gfx::Point(), HTCAPTION,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, empty_windows()));
|
| ASSERT_TRUE(resizer.get());
|
| resizer->Drag(CalculateDragPoint(*resizer, -20, 0), 0);
|
| resizer->CompleteDrag(0);
|
| @@ -570,7 +604,8 @@ TEST_F(WorkspaceWindowResizerTest, MAYBE_CancelSnapPhantom) {
|
| EXPECT_FLOAT_EQ(1.0f, window_->layer()->opacity());
|
| {
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTCAPTION, empty_windows()));
|
| + window_.get(), gfx::Point(), HTCAPTION,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, empty_windows()));
|
| ASSERT_TRUE(resizer.get());
|
| EXPECT_FALSE(resizer->snap_phantom_window_controller_.get());
|
|
|
| @@ -596,7 +631,8 @@ TEST_F(WorkspaceWindowResizerTest, RestackAttached) {
|
| std::vector<aura::Window*> windows;
|
| windows.push_back(window2_.get());
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTRIGHT, windows));
|
| + window_.get(), gfx::Point(), HTRIGHT,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, windows));
|
| ASSERT_TRUE(resizer.get());
|
| // Move it 100 to the right, which should expand w1 and push w2 and w3.
|
| resizer->Drag(CalculateDragPoint(*resizer, 100, -10), 0);
|
| @@ -609,7 +645,8 @@ TEST_F(WorkspaceWindowResizerTest, RestackAttached) {
|
| std::vector<aura::Window*> windows;
|
| windows.push_back(window3_.get());
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window2_.get(), gfx::Point(), HTRIGHT, windows));
|
| + window2_.get(), gfx::Point(), HTRIGHT,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, windows));
|
| ASSERT_TRUE(resizer.get());
|
| // Move it 100 to the right, which should expand w1 and push w2 and w3.
|
| resizer->Drag(CalculateDragPoint(*resizer, 100, -10), 0);
|
| @@ -628,7 +665,8 @@ TEST_F(WorkspaceWindowResizerTest, DontDragOffBottom) {
|
|
|
| window_->SetBounds(gfx::Rect(100, 200, 300, 400));
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTCAPTION, empty_windows()));
|
| + window_.get(), gfx::Point(), HTCAPTION,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, empty_windows()));
|
| ASSERT_TRUE(resizer.get());
|
| resizer->Drag(CalculateDragPoint(*resizer, 0, 600), 0);
|
| int expected_y =
|
| @@ -661,7 +699,8 @@ TEST_F(WorkspaceWindowResizerTest, MAYBE_DontDragOffBottomWithMultiDisplay) {
|
| {
|
| window_->SetBounds(gfx::Rect(100, 200, 300, 400));
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTCAPTION, empty_windows()));
|
| + window_.get(), gfx::Point(), HTCAPTION,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, empty_windows()));
|
| ASSERT_TRUE(resizer.get());
|
| resizer->Drag(CalculateDragPoint(*resizer, 0, 400), 0);
|
| int expected_y =
|
| @@ -675,7 +714,8 @@ TEST_F(WorkspaceWindowResizerTest, MAYBE_DontDragOffBottomWithMultiDisplay) {
|
| {
|
| window_->SetBounds(gfx::Rect(100, 200, 300, 400));
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTCAPTION, empty_windows()));
|
| + window_.get(), gfx::Point(), HTCAPTION,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, empty_windows()));
|
| ASSERT_TRUE(resizer.get());
|
| resizer->Drag(CalculateDragPoint(*resizer, 0, 600), 0);
|
| // The window can move to the secondary display beyond non-work area of
|
| @@ -691,7 +731,8 @@ TEST_F(WorkspaceWindowResizerTest, DontDragOffTop) {
|
|
|
| window_->SetBounds(gfx::Rect(100, 200, 300, 400));
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTCAPTION, empty_windows()));
|
| + window_.get(), gfx::Point(), HTCAPTION,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, empty_windows()));
|
| ASSERT_TRUE(resizer.get());
|
| resizer->Drag(CalculateDragPoint(*resizer, 0, -600), 0);
|
| EXPECT_EQ("100,10 300x400", window_->bounds().ToString());
|
| @@ -703,7 +744,8 @@ TEST_F(WorkspaceWindowResizerTest, ResizeBottomOutsideWorkArea) {
|
|
|
| window_->SetBounds(gfx::Rect(100, 200, 300, 380));
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTTOP, empty_windows()));
|
| + window_.get(), gfx::Point(), HTTOP,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, empty_windows()));
|
| ASSERT_TRUE(resizer.get());
|
| resizer->Drag(CalculateDragPoint(*resizer, 8, 0), 0);
|
| EXPECT_EQ("100,200 300x380", window_->bounds().ToString());
|
| @@ -719,7 +761,7 @@ TEST_F(WorkspaceWindowResizerTest, ResizeWindowOutsideLeftWorkArea) {
|
| window_->SetBounds(gfx::Rect(window_x, 100, window_width, 380));
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| window_.get(), gfx::Point(pixels_to_left_border, 0), HTRIGHT,
|
| - empty_windows()));
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, empty_windows()));
|
| ASSERT_TRUE(resizer.get());
|
| resizer->Drag(CalculateDragPoint(*resizer, -window_width, 0), 0);
|
| EXPECT_EQ(base::IntToString(window_x) + ",100 " +
|
| @@ -738,7 +780,7 @@ TEST_F(WorkspaceWindowResizerTest, ResizeWindowOutsideRightWorkArea) {
|
| window_->SetBounds(gfx::Rect(window_x, 100, window_width, 380));
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| window_.get(), gfx::Point(window_x, 0), HTLEFT,
|
| - empty_windows()));
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, empty_windows()));
|
| ASSERT_TRUE(resizer.get());
|
| resizer->Drag(CalculateDragPoint(*resizer, window_width, 0), 0);
|
| EXPECT_EQ(base::IntToString(right - kMinimumOnScreenArea) +
|
| @@ -758,7 +800,7 @@ TEST_F(WorkspaceWindowResizerTest, ResizeWindowOutsideBottomWorkArea) {
|
| window_->SetBounds(gfx::Rect(100, bottom - delta_to_bottom, 300, height));
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| window_.get(), gfx::Point(0, bottom - delta_to_bottom), HTTOP,
|
| - empty_windows()));
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, empty_windows()));
|
| ASSERT_TRUE(resizer.get());
|
| resizer->Drag(CalculateDragPoint(*resizer, 0, bottom), 0);
|
| EXPECT_EQ("100," +
|
| @@ -794,7 +836,7 @@ TEST_F(WorkspaceWindowResizerTest,
|
| window_->SetBounds(gfx::Rect(window_x, 100, window_width, 380));
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| window_.get(), gfx::Point(window_x, 0), HTCAPTION,
|
| - empty_windows()));
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, empty_windows()));
|
| ASSERT_TRUE(resizer.get());
|
| resizer->Drag(CalculateDragPoint(*resizer, window_width, 0), 0);
|
| EXPECT_EQ(base::IntToString(right - kMinimumOnScreenArea) +
|
| @@ -821,7 +863,8 @@ TEST_F(WorkspaceWindowResizerTest, SnapToEdge) {
|
| SetAutoHideBehavior(SHELF_AUTO_HIDE_BEHAVIOR_ALWAYS);
|
| window_->SetBounds(gfx::Rect(96, 112, 320, 160));
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTCAPTION, empty_windows()));
|
| + window_.get(), gfx::Point(), HTCAPTION,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, empty_windows()));
|
| ASSERT_TRUE(resizer.get());
|
| // Move to an x-coordinate of 15, which should not snap.
|
| resizer->Drag(CalculateDragPoint(*resizer, 15 - 96, 0), 0);
|
| @@ -871,7 +914,8 @@ TEST_F(WorkspaceWindowResizerTest, SnapToEdge) {
|
| TEST_F(WorkspaceWindowResizerTest, SnapToWorkArea_TOPLEFT) {
|
| window_->SetBounds(gfx::Rect(100, 200, 20, 30));
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTTOPLEFT, empty_windows()));
|
| + window_.get(), gfx::Point(), HTTOPLEFT,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, empty_windows()));
|
| ASSERT_TRUE(resizer.get());
|
| resizer->Drag(CalculateDragPoint(*resizer, -98, -199), 0);
|
| EXPECT_EQ("0,0 120x230", window_->bounds().ToString());
|
| @@ -883,7 +927,8 @@ TEST_F(WorkspaceWindowResizerTest, SnapToWorkArea_TOPRIGHT) {
|
| gfx::Rect work_area(ScreenAsh::GetDisplayWorkAreaBoundsInParent(
|
| window_.get()));
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTTOPRIGHT, empty_windows()));
|
| + window_.get(), gfx::Point(), HTTOPRIGHT,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, empty_windows()));
|
| ASSERT_TRUE(resizer.get());
|
| resizer->Drag(
|
| CalculateDragPoint(*resizer, work_area.right() - 120 - 1, -199), 0);
|
| @@ -899,7 +944,8 @@ TEST_F(WorkspaceWindowResizerTest, SnapToWorkArea_BOTTOMRIGHT) {
|
| gfx::Rect work_area(ScreenAsh::GetDisplayWorkAreaBoundsInParent(
|
| window_.get()));
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTBOTTOMRIGHT, empty_windows()));
|
| + window_.get(), gfx::Point(), HTBOTTOMRIGHT,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, empty_windows()));
|
| ASSERT_TRUE(resizer.get());
|
| resizer->Drag(
|
| CalculateDragPoint(*resizer, work_area.right() - 120 - 1,
|
| @@ -916,7 +962,8 @@ TEST_F(WorkspaceWindowResizerTest, SnapToWorkArea_BOTTOMLEFT) {
|
| gfx::Rect work_area(ScreenAsh::GetDisplayWorkAreaBoundsInParent(
|
| window_.get()));
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTBOTTOMLEFT, empty_windows()));
|
| + window_.get(), gfx::Point(), HTBOTTOMLEFT,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, empty_windows()));
|
| ASSERT_TRUE(resizer.get());
|
| resizer->Drag(
|
| CalculateDragPoint(*resizer, -98, work_area.bottom() - 220 - 2), 0);
|
| @@ -932,7 +979,8 @@ TEST_F(WorkspaceWindowResizerTestSticky, StickToEdge) {
|
| SetAutoHideBehavior(SHELF_AUTO_HIDE_BEHAVIOR_ALWAYS);
|
| window_->SetBounds(gfx::Rect(96, 112, 320, 160));
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTCAPTION, empty_windows()));
|
| + window_.get(), gfx::Point(), HTCAPTION,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, empty_windows()));
|
| ASSERT_TRUE(resizer.get());
|
| // Move to an x-coordinate of 15, which should not stick.
|
| resizer->Drag(CalculateDragPoint(*resizer, 15 - 96, 0), 0);
|
| @@ -970,7 +1018,8 @@ TEST_F(WorkspaceWindowResizerTestSticky, StickToEdge) {
|
| TEST_F(WorkspaceWindowResizerTestSticky, StickToWorkArea_TOPLEFT) {
|
| window_->SetBounds(gfx::Rect(100, 200, 20, 30));
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTTOPLEFT, empty_windows()));
|
| + window_.get(), gfx::Point(), HTTOPLEFT,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, empty_windows()));
|
| ASSERT_TRUE(resizer.get());
|
| resizer->Drag(CalculateDragPoint(*resizer, -15 - 100, -15 -200), 0);
|
| EXPECT_EQ("0,0 120x230", window_->bounds().ToString());
|
| @@ -982,7 +1031,8 @@ TEST_F(WorkspaceWindowResizerTestSticky, StickToWorkArea_TOPRIGHT) {
|
| gfx::Rect work_area(ScreenAsh::GetDisplayWorkAreaBoundsInParent(
|
| window_.get()));
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTTOPRIGHT, empty_windows()));
|
| + window_.get(), gfx::Point(), HTTOPRIGHT,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, empty_windows()));
|
| ASSERT_TRUE(resizer.get());
|
| resizer->Drag(CalculateDragPoint(*resizer, work_area.right() - 100 + 20,
|
| -200 - 15), 0);
|
| @@ -998,7 +1048,8 @@ TEST_F(WorkspaceWindowResizerTestSticky, StickToWorkArea_BOTTOMRIGHT) {
|
| gfx::Rect work_area(ScreenAsh::GetDisplayWorkAreaBoundsInParent(
|
| window_.get()));
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTBOTTOMRIGHT, empty_windows()));
|
| + window_.get(), gfx::Point(), HTBOTTOMRIGHT,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, empty_windows()));
|
| ASSERT_TRUE(resizer.get());
|
| resizer->Drag(CalculateDragPoint(*resizer, work_area.right() - 100 - 20 + 15,
|
| work_area.bottom() - 200 - 30 + 15), 0);
|
| @@ -1014,7 +1065,8 @@ TEST_F(WorkspaceWindowResizerTestSticky, StickToWorkArea_BOTTOMLEFT) {
|
| gfx::Rect work_area(ScreenAsh::GetDisplayWorkAreaBoundsInParent(
|
| window_.get()));
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTBOTTOMLEFT, empty_windows()));
|
| + window_.get(), gfx::Point(), HTBOTTOMLEFT,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, empty_windows()));
|
| ASSERT_TRUE(resizer.get());
|
| resizer->Drag(CalculateDragPoint(*resizer, -15 - 100,
|
| work_area.bottom() - 200 - 30 + 15), 0);
|
| @@ -1027,7 +1079,8 @@ TEST_F(WorkspaceWindowResizerTestSticky, StickToWorkArea_BOTTOMLEFT) {
|
| TEST_F(WorkspaceWindowResizerTest, CtrlDragResizeToExactPosition) {
|
| window_->SetBounds(gfx::Rect(96, 112, 320, 160));
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTBOTTOMRIGHT, empty_windows()));
|
| + window_.get(), gfx::Point(), HTBOTTOMRIGHT,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, empty_windows()));
|
| ASSERT_TRUE(resizer.get());
|
| // Resize the right bottom to add 10 in width, 12 in height.
|
| resizer->Drag(CalculateDragPoint(*resizer, 10, 12), ui::EF_CONTROL_DOWN);
|
| @@ -1038,7 +1091,8 @@ TEST_F(WorkspaceWindowResizerTest, CtrlDragResizeToExactPosition) {
|
| TEST_F(WorkspaceWindowResizerTest, CtrlCompleteDragMoveToExactPosition) {
|
| window_->SetBounds(gfx::Rect(96, 112, 320, 160));
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTCAPTION, empty_windows()));
|
| + window_.get(), gfx::Point(), HTCAPTION,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, empty_windows()));
|
| ASSERT_TRUE(resizer.get());
|
| // Ctrl + drag the window to new poistion by adding (10, 12) to its origin,
|
| // the window should move to the exact position.
|
| @@ -1089,7 +1143,8 @@ TEST_F(WorkspaceWindowResizerTest, RestoreToPreMaximizeCoordinates) {
|
| window_->SetBounds(gfx::Rect(0, 0, 1000, 1000));
|
| SetRestoreBoundsInScreen(window_.get(), gfx::Rect(96, 112, 320, 160));
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTCAPTION, empty_windows()));
|
| + window_.get(), gfx::Point(), HTCAPTION,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, empty_windows()));
|
| ASSERT_TRUE(resizer.get());
|
| // Drag the window to new position by adding (10, 10) to original point,
|
| // the window should get restored.
|
| @@ -1106,7 +1161,8 @@ TEST_F(WorkspaceWindowResizerTest, RevertResizeOperation) {
|
| window_->SetBounds(initial_bounds);
|
| SetRestoreBoundsInScreen(window_.get(), gfx::Rect(96, 112, 320, 160));
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTCAPTION, empty_windows()));
|
| + window_.get(), gfx::Point(), HTCAPTION,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, empty_windows()));
|
| ASSERT_TRUE(resizer.get());
|
| // Drag the window to new poistion by adding (180, 16) to original point,
|
| // the window should get restored.
|
| @@ -1124,7 +1180,8 @@ TEST_F(WorkspaceWindowResizerTest, MagneticallyAttach) {
|
| window2_->Show();
|
|
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTCAPTION, empty_windows()));
|
| + window_.get(), gfx::Point(), HTCAPTION,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, empty_windows()));
|
| ASSERT_TRUE(resizer.get());
|
| // Move |window| one pixel to the left of |window2|. Should snap to right and
|
| // top.
|
| @@ -1154,7 +1211,8 @@ TEST_F(WorkspaceWindowResizerTest, MagneticallyResize_TOP) {
|
| window2_->Show();
|
|
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTTOP, empty_windows()));
|
| + window_.get(), gfx::Point(), HTTOP,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, empty_windows()));
|
| ASSERT_TRUE(resizer.get());
|
| resizer->Drag(CalculateDragPoint(*resizer, 0, 0), 0);
|
| EXPECT_EQ("100,199 20x31", window_->bounds().ToString());
|
| @@ -1167,7 +1225,8 @@ TEST_F(WorkspaceWindowResizerTest, MagneticallyResize_TOPLEFT) {
|
|
|
| {
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTTOPLEFT, empty_windows()));
|
| + window_.get(), gfx::Point(), HTTOPLEFT,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, empty_windows()));
|
| ASSERT_TRUE(resizer.get());
|
| resizer->Drag(CalculateDragPoint(*resizer, 0, 0), 0);
|
| EXPECT_EQ("99,199 21x31", window_->bounds().ToString());
|
| @@ -1177,7 +1236,8 @@ TEST_F(WorkspaceWindowResizerTest, MagneticallyResize_TOPLEFT) {
|
| {
|
| window2_->SetBounds(gfx::Rect(88, 201, 10, 20));
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTTOPLEFT, empty_windows()));
|
| + window_.get(), gfx::Point(), HTTOPLEFT,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, empty_windows()));
|
| ASSERT_TRUE(resizer.get());
|
| resizer->Drag(CalculateDragPoint(*resizer, 0, 0), 0);
|
| EXPECT_EQ("98,201 22x29", window_->bounds().ToString());
|
| @@ -1192,7 +1252,8 @@ TEST_F(WorkspaceWindowResizerTest, MagneticallyResize_TOPRIGHT) {
|
| {
|
| window2_->SetBounds(gfx::Rect(111, 179, 10, 20));
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTTOPRIGHT, empty_windows()));
|
| + window_.get(), gfx::Point(), HTTOPRIGHT,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, empty_windows()));
|
| ASSERT_TRUE(resizer.get());
|
| resizer->Drag(CalculateDragPoint(*resizer, 0, 0), 0);
|
| EXPECT_EQ("100,199 21x31", window_->bounds().ToString());
|
| @@ -1202,7 +1263,8 @@ TEST_F(WorkspaceWindowResizerTest, MagneticallyResize_TOPRIGHT) {
|
| {
|
| window2_->SetBounds(gfx::Rect(121, 199, 10, 20));
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTTOPRIGHT, empty_windows()));
|
| + window_.get(), gfx::Point(), HTTOPRIGHT,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, empty_windows()));
|
| ASSERT_TRUE(resizer.get());
|
| resizer->Drag(CalculateDragPoint(*resizer, 0, 0), 0);
|
| EXPECT_EQ("100,199 21x31", window_->bounds().ToString());
|
| @@ -1216,7 +1278,8 @@ TEST_F(WorkspaceWindowResizerTest, MagneticallyResize_RIGHT) {
|
| window2_->Show();
|
|
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTRIGHT, empty_windows()));
|
| + window_.get(), gfx::Point(), HTRIGHT,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, empty_windows()));
|
| ASSERT_TRUE(resizer.get());
|
| resizer->Drag(CalculateDragPoint(*resizer, 0, 0), 0);
|
| EXPECT_EQ("100,200 21x30", window_->bounds().ToString());
|
| @@ -1229,7 +1292,8 @@ TEST_F(WorkspaceWindowResizerTest, MagneticallyResize_BOTTOMRIGHT) {
|
| {
|
| window2_->SetBounds(gfx::Rect(122, 212, 10, 20));
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTBOTTOMRIGHT, empty_windows()));
|
| + window_.get(), gfx::Point(), HTBOTTOMRIGHT,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, empty_windows()));
|
| ASSERT_TRUE(resizer.get());
|
| resizer->Drag(CalculateDragPoint(*resizer, 0, 0), 0);
|
| EXPECT_EQ("100,200 22x32", window_->bounds().ToString());
|
| @@ -1239,7 +1303,8 @@ TEST_F(WorkspaceWindowResizerTest, MagneticallyResize_BOTTOMRIGHT) {
|
| {
|
| window2_->SetBounds(gfx::Rect(111, 233, 10, 20));
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTBOTTOMRIGHT, empty_windows()));
|
| + window_.get(), gfx::Point(), HTBOTTOMRIGHT,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, empty_windows()));
|
| ASSERT_TRUE(resizer.get());
|
| resizer->Drag(CalculateDragPoint(*resizer, 0, 0), 0);
|
| EXPECT_EQ("100,200 21x33", window_->bounds().ToString());
|
| @@ -1253,7 +1318,8 @@ TEST_F(WorkspaceWindowResizerTest, MagneticallyResize_BOTTOM) {
|
| window2_->Show();
|
|
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTBOTTOM, empty_windows()));
|
| + window_.get(), gfx::Point(), HTBOTTOM,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, empty_windows()));
|
| ASSERT_TRUE(resizer.get());
|
| resizer->Drag(CalculateDragPoint(*resizer, 0, 0), 0);
|
| EXPECT_EQ("100,200 20x33", window_->bounds().ToString());
|
| @@ -1266,7 +1332,8 @@ TEST_F(WorkspaceWindowResizerTest, MagneticallyResize_BOTTOMLEFT) {
|
| {
|
| window2_->SetBounds(gfx::Rect(99, 231, 10, 20));
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTBOTTOMLEFT, empty_windows()));
|
| + window_.get(), gfx::Point(), HTBOTTOMLEFT,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, empty_windows()));
|
| ASSERT_TRUE(resizer.get());
|
| resizer->Drag(CalculateDragPoint(*resizer, 0, 0), 0);
|
| EXPECT_EQ("99,200 21x31", window_->bounds().ToString());
|
| @@ -1276,7 +1343,8 @@ TEST_F(WorkspaceWindowResizerTest, MagneticallyResize_BOTTOMLEFT) {
|
| {
|
| window2_->SetBounds(gfx::Rect(89, 209, 10, 20));
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTBOTTOMLEFT, empty_windows()));
|
| + window_.get(), gfx::Point(), HTBOTTOMLEFT,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, empty_windows()));
|
| ASSERT_TRUE(resizer.get());
|
| resizer->Drag(CalculateDragPoint(*resizer, 0, 0), 0);
|
| EXPECT_EQ("99,200 21x29", window_->bounds().ToString());
|
| @@ -1290,7 +1358,8 @@ TEST_F(WorkspaceWindowResizerTest, MagneticallyResize_LEFT) {
|
| window2_->Show();
|
|
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTLEFT, empty_windows()));
|
| + window_.get(), gfx::Point(), HTLEFT,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, empty_windows()));
|
| ASSERT_TRUE(resizer.get());
|
| resizer->Drag(CalculateDragPoint(*resizer, 0, 0), 0);
|
| EXPECT_EQ("99,200 21x30", window_->bounds().ToString());
|
| @@ -1304,7 +1373,8 @@ TEST_F(WorkspaceWindowResizerTest, CheckUserWindowMangedFlags) {
|
| // Check that an abort doesn't change anything.
|
| {
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTCAPTION, no_attached_windows));
|
| + window_.get(), gfx::Point(), HTCAPTION,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, no_attached_windows));
|
| ASSERT_TRUE(resizer.get());
|
| // Move it 100 to the bottom.
|
| resizer->Drag(CalculateDragPoint(*resizer, 0, 100), 0);
|
| @@ -1317,7 +1387,8 @@ TEST_F(WorkspaceWindowResizerTest, CheckUserWindowMangedFlags) {
|
| // Check that a completed move / size does change the user coordinates.
|
| {
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTCAPTION, no_attached_windows));
|
| + window_.get(), gfx::Point(), HTCAPTION,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, no_attached_windows));
|
| ASSERT_TRUE(resizer.get());
|
| // Move it 100 to the bottom.
|
| resizer->Drag(CalculateDragPoint(*resizer, 0, 100), 0);
|
| @@ -1333,7 +1404,8 @@ TEST_F(WorkspaceWindowResizerTest, TestMaxSizeEnforced) {
|
| delegate_.set_max_size(gfx::Size(401, 301));
|
|
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTBOTTOMRIGHT, empty_windows()));
|
| + window_.get(), gfx::Point(), HTBOTTOMRIGHT,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, empty_windows()));
|
| resizer->Drag(CalculateDragPoint(*resizer, 2, 2), 0);
|
| EXPECT_EQ(401, window_->bounds().width());
|
| EXPECT_EQ(301, window_->bounds().height());
|
| @@ -1345,7 +1417,8 @@ TEST_F(WorkspaceWindowResizerTest, TestPartialMaxSizeEnforced) {
|
| delegate_.set_max_size(gfx::Size(401, 0));
|
|
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTBOTTOMRIGHT, empty_windows()));
|
| + window_.get(), gfx::Point(), HTBOTTOMRIGHT,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, empty_windows()));
|
| resizer->Drag(CalculateDragPoint(*resizer, 2, 2), 0);
|
| EXPECT_EQ(401, window_->bounds().width());
|
| EXPECT_EQ(302, window_->bounds().height());
|
| @@ -1359,7 +1432,8 @@ TEST_F(WorkspaceWindowResizerTest, PhantomSnapMaxSize) {
|
| window_->SetBounds(gfx::Rect(0, 0, 300, 200));
|
|
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTCAPTION, empty_windows()));
|
| + window_.get(), gfx::Point(), HTCAPTION,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, empty_windows()));
|
| EXPECT_FALSE(resizer->snap_phantom_window_controller_.get());
|
| resizer->Drag(CalculateDragPoint(*resizer, 801, 0), 0);
|
| EXPECT_TRUE(resizer->snap_phantom_window_controller_.get());
|
| @@ -1370,7 +1444,8 @@ TEST_F(WorkspaceWindowResizerTest, PhantomSnapMaxSize) {
|
| delegate_.set_max_size(gfx::Size(300, 200));
|
|
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTCAPTION, empty_windows()));
|
| + window_.get(), gfx::Point(), HTCAPTION,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, empty_windows()));
|
| resizer->Drag(CalculateDragPoint(*resizer, 801, 0), 0);
|
| EXPECT_FALSE(resizer->snap_phantom_window_controller_.get());
|
| }
|
| @@ -1393,7 +1468,8 @@ TEST_F(WorkspaceWindowResizerTest, DontRewardRightmostWindowForOverflows) {
|
| windows.push_back(window3_.get());
|
| windows.push_back(window4_.get());
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTRIGHT, windows));
|
| + window_.get(), gfx::Point(), HTRIGHT,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, windows));
|
| ASSERT_TRUE(resizer.get());
|
| // Move it 51 to the left, which should contract w1 and expand w2-4.
|
| // w2 will hit its max size straight away, and in doing so will leave extra
|
| @@ -1424,7 +1500,8 @@ TEST_F(WorkspaceWindowResizerTest, DontExceedMaxWidth) {
|
| windows.push_back(window3_.get());
|
| windows.push_back(window4_.get());
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTRIGHT, windows));
|
| + window_.get(), gfx::Point(), HTRIGHT,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, windows));
|
| ASSERT_TRUE(resizer.get());
|
| // Move it 52 to the left, which should contract w1 and expand w2-4.
|
| resizer->Drag(CalculateDragPoint(*resizer, -52, 0), 0);
|
| @@ -1452,7 +1529,8 @@ TEST_F(WorkspaceWindowResizerTest, DontExceedMaxHeight) {
|
| windows.push_back(window3_.get());
|
| windows.push_back(window4_.get());
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTBOTTOM, windows));
|
| + window_.get(), gfx::Point(), HTBOTTOM,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, windows));
|
| ASSERT_TRUE(resizer.get());
|
| // Move it 52 up, which should contract w1 and expand w2-4.
|
| resizer->Drag(CalculateDragPoint(*resizer, 0, -52), 0);
|
| @@ -1487,7 +1565,8 @@ TEST_F(WorkspaceWindowResizerTest, MAYBE_DontExceedMinHeight) {
|
| windows.push_back(window3_.get());
|
| windows.push_back(window4_.get());
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTBOTTOM, windows));
|
| + window_.get(), gfx::Point(), HTBOTTOM,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, windows));
|
| ASSERT_TRUE(resizer.get());
|
| // Move it 52 down, which should expand w1 and contract w2-4.
|
| resizer->Drag(CalculateDragPoint(*resizer, 0, 52), 0);
|
| @@ -1513,7 +1592,8 @@ TEST_F(WorkspaceWindowResizerTest, DontExpandRightmostPastMaxWidth) {
|
| windows.push_back(window3_.get());
|
| windows.push_back(window4_.get());
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTRIGHT, windows));
|
| + window_.get(), gfx::Point(), HTRIGHT,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, windows));
|
| ASSERT_TRUE(resizer.get());
|
| // Move it 51 to the left, which should contract w1 and expand w2-3.
|
| resizer->Drag(CalculateDragPoint(*resizer, -51, 0), 0);
|
| @@ -1539,7 +1619,8 @@ TEST_F(WorkspaceWindowResizerTest, MoveAttachedWhenGrownToMaxSize) {
|
| windows.push_back(window3_.get());
|
| windows.push_back(window4_.get());
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTRIGHT, windows));
|
| + window_.get(), gfx::Point(), HTRIGHT,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, windows));
|
| ASSERT_TRUE(resizer.get());
|
| // Move it 52 to the left, which should contract w1 and expand and move w2-3.
|
| resizer->Drag(CalculateDragPoint(*resizer, -52, 0), 0);
|
| @@ -1571,7 +1652,8 @@ TEST_F(WorkspaceWindowResizerTest, MAYBE_MainWindowHonoursMaxWidth) {
|
| windows.push_back(window3_.get());
|
| windows.push_back(window4_.get());
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTRIGHT, windows));
|
| + window_.get(), gfx::Point(), HTRIGHT,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, windows));
|
| ASSERT_TRUE(resizer.get());
|
| // Move it 50 to the right, which should expand w1 and contract w2-3, as they
|
| // won't fit in the root window in their original sizes.
|
| @@ -1596,7 +1678,8 @@ TEST_F(WorkspaceWindowResizerTest, MainWindowHonoursMinWidth) {
|
| windows.push_back(window2_.get());
|
| windows.push_back(window3_.get());
|
| scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
|
| - window_.get(), gfx::Point(), HTRIGHT, windows));
|
| + window_.get(), gfx::Point(), HTRIGHT,
|
| + aura::client::WINDOW_MOVE_SOURCE_MOUSE, windows));
|
| ASSERT_TRUE(resizer.get());
|
| // Move it 50 to the left, which should contract w1 and expand w2-3.
|
| resizer->Drag(CalculateDragPoint(*resizer, -50, 0), 0);
|
| @@ -1605,5 +1688,110 @@ TEST_F(WorkspaceWindowResizerTest, MainWindowHonoursMinWidth) {
|
| EXPECT_EQ("299,100 101x100", window3_->bounds().ToString());
|
| }
|
|
|
| +// The following variants test that windows are resized correctly to the edges
|
| +// of the screen using touch, when touch point is off of the window border.
|
| +TEST_F(WorkspaceWindowResizerTest, TouchResizeToEdge_RIGHT) {
|
| + shelf_layout_manager()->SetAutoHideBehavior(SHELF_AUTO_HIDE_ALWAYS_HIDDEN);
|
| +
|
| + InitTouchResizeWindow(gfx::Rect(100, 100, 600, kRootHeight - 200), HTRIGHT);
|
| + EXPECT_EQ(gfx::Rect(100, 100, 600, kRootHeight - 200).ToString(),
|
| + touch_resize_window_->bounds().ToString());
|
| +
|
| + aura::test::EventGenerator generator(Shell::GetPrimaryRootWindow(),
|
| + touch_resize_window_.get());
|
| +
|
| + // Drag out of the right border ...
|
| + generator.GestureScrollSequence(gfx::Point(715, kRootHeight / 2),
|
| + gfx::Point(790, kRootHeight / 2),
|
| + base::TimeDelta::FromMilliseconds(100),
|
| + 1);
|
| + EXPECT_EQ(gfx::Rect(100, 100, 675, kRootHeight - 200).ToString(),
|
| + touch_resize_window_->bounds().ToString());
|
| + // Drag out of the right border ...
|
| + generator.GestureScrollSequence(gfx::Point(790, kRootHeight / 2),
|
| + gfx::Point(800, kRootHeight / 2),
|
| + base::TimeDelta::FromMilliseconds(100),
|
| + 1);
|
| + EXPECT_EQ(gfx::Rect(100, 100, 700, kRootHeight - 200).ToString(),
|
| + touch_resize_window_->bounds().ToString());
|
| +}
|
| +
|
| +TEST_F(WorkspaceWindowResizerTest, TouchResizeToEdge_LEFT) {
|
| + shelf_layout_manager()->SetAutoHideBehavior(SHELF_AUTO_HIDE_ALWAYS_HIDDEN);
|
| +
|
| + InitTouchResizeWindow(gfx::Rect(100, 100, 600, kRootHeight - 200), HTLEFT);
|
| + EXPECT_EQ(gfx::Rect(100, 100, 600, kRootHeight - 200).ToString(),
|
| + touch_resize_window_->bounds().ToString());
|
| +
|
| + aura::test::EventGenerator generator(Shell::GetPrimaryRootWindow(),
|
| + touch_resize_window_.get());
|
| +
|
| + // Drag out of the left border ...
|
| + generator.GestureScrollSequence(gfx::Point(85, kRootHeight / 2),
|
| + gfx::Point(10, kRootHeight / 2),
|
| + base::TimeDelta::FromMilliseconds(100),
|
| + 1);
|
| + EXPECT_EQ(gfx::Rect(25, 100, 675, kRootHeight - 200).ToString(),
|
| + touch_resize_window_->bounds().ToString());
|
| + // Drag out of the left border ...
|
| + generator.GestureScrollSequence(gfx::Point(10, kRootHeight / 2),
|
| + gfx::Point(0, kRootHeight / 2),
|
| + base::TimeDelta::FromMilliseconds(100),
|
| + 1);
|
| + EXPECT_EQ(gfx::Rect(0, 100, 700, kRootHeight - 200).ToString(),
|
| + touch_resize_window_->bounds().ToString());
|
| +}
|
| +
|
| +TEST_F(WorkspaceWindowResizerTest, TouchResizeToEdge_TOP) {
|
| + shelf_layout_manager()->SetAutoHideBehavior(SHELF_AUTO_HIDE_ALWAYS_HIDDEN);
|
| +
|
| + InitTouchResizeWindow(gfx::Rect(100, 100, 600, kRootHeight - 200), HTTOP);
|
| + EXPECT_EQ(gfx::Rect(100, 100, 600, kRootHeight - 200).ToString(),
|
| + touch_resize_window_->bounds().ToString());
|
| +
|
| + aura::test::EventGenerator generator(Shell::GetPrimaryRootWindow(),
|
| + touch_resize_window_.get());
|
| +
|
| + // Drag out of the top border ...
|
| + generator.GestureScrollSequence(gfx::Point(400, 85),
|
| + gfx::Point(400, 10),
|
| + base::TimeDelta::FromMilliseconds(100),
|
| + 1);
|
| + EXPECT_EQ(gfx::Rect(100, 25, 600, kRootHeight - 125).ToString(),
|
| + touch_resize_window_->bounds().ToString());
|
| + // Drag out of the top border ...
|
| + generator.GestureScrollSequence(gfx::Point(400, 10),
|
| + gfx::Point(400, 0),
|
| + base::TimeDelta::FromMilliseconds(100),
|
| + 1);
|
| + EXPECT_EQ(gfx::Rect(100, 0, 600, kRootHeight - 100).ToString(),
|
| + touch_resize_window_->bounds().ToString());
|
| +}
|
| +
|
| +TEST_F(WorkspaceWindowResizerTest, TouchResizeToEdge_BOTTOM) {
|
| + shelf_layout_manager()->SetAutoHideBehavior(SHELF_AUTO_HIDE_ALWAYS_HIDDEN);
|
| +
|
| + InitTouchResizeWindow(gfx::Rect(100, 100, 600, kRootHeight - 200), HTBOTTOM);
|
| + EXPECT_EQ(gfx::Rect(100, 100, 600, kRootHeight - 200).ToString(),
|
| + touch_resize_window_->bounds().ToString());
|
| +
|
| + aura::test::EventGenerator generator(Shell::GetPrimaryRootWindow(),
|
| + touch_resize_window_.get());
|
| +
|
| + // Drag out of the bottom border ...
|
| + generator.GestureScrollSequence(gfx::Point(400, kRootHeight - 85),
|
| + gfx::Point(400, kRootHeight - 10),
|
| + base::TimeDelta::FromMilliseconds(100),
|
| + 1);
|
| + EXPECT_EQ(gfx::Rect(100, 100, 600, kRootHeight - 125).ToString(),
|
| + touch_resize_window_->bounds().ToString());
|
| + // Drag out of the bottom border ...
|
| + generator.GestureScrollSequence(gfx::Point(400, kRootHeight - 10),
|
| + gfx::Point(400, kRootHeight),
|
| + base::TimeDelta::FromMilliseconds(100),
|
| + 1);
|
| + EXPECT_EQ(gfx::Rect(100, 100, 600, kRootHeight - 100).ToString(),
|
| + touch_resize_window_->bounds().ToString());
|
| +}
|
| } // namespace internal
|
| } // namespace ash
|
|
|