| Index: cc/layer_tree_host_impl_unittest.cc
|
| diff --git a/cc/layer_tree_host_impl_unittest.cc b/cc/layer_tree_host_impl_unittest.cc
|
| index 278f4676be2d10b3f02d45b483a0165de053de5f..f772155651b711f2fd0cc3e565bb397523fc77c0 100644
|
| --- a/cc/layer_tree_host_impl_unittest.cc
|
| +++ b/cc/layer_tree_host_impl_unittest.cc
|
| @@ -646,7 +646,7 @@ TEST_P(LayerTreeHostImplTest, pinchGesture)
|
| }
|
| }
|
|
|
| - // Two-finger panning
|
| + // Two-finger panning should not happen based on pinch events only
|
| {
|
| m_hostImpl->setPageScaleFactorAndLimits(1, minPageScale, maxPageScale);
|
| scrollLayer->setImplTransform(identityScaleTransform);
|
| @@ -661,6 +661,27 @@ TEST_P(LayerTreeHostImplTest, pinchGesture)
|
|
|
| scoped_ptr<ScrollAndScaleSet> scrollInfo = m_hostImpl->processScrollDeltas();
|
| EXPECT_EQ(scrollInfo->pageScaleDelta, pageScaleDelta);
|
| + EXPECT_TRUE(scrollInfo->scrolls.empty());
|
| + }
|
| +
|
| + // Two-finger panning should work with interleaved scroll events
|
| + {
|
| + m_hostImpl->setPageScaleFactorAndLimits(1, minPageScale, maxPageScale);
|
| + scrollLayer->setImplTransform(identityScaleTransform);
|
| + scrollLayer->setScrollDelta(gfx::Vector2d());
|
| + scrollLayer->setScrollOffset(gfx::Vector2d(20, 20));
|
| +
|
| + float pageScaleDelta = 1;
|
| + m_hostImpl->scrollBegin(gfx::Point(10, 10), InputHandlerClient::Wheel);
|
| + m_hostImpl->pinchGestureBegin();
|
| + m_hostImpl->pinchGestureUpdate(pageScaleDelta, gfx::Point(10, 10));
|
| + m_hostImpl->scrollBy(gfx::Point(10, 10), gfx::Vector2d(-10, -10));
|
| + m_hostImpl->pinchGestureUpdate(pageScaleDelta, gfx::Point(20, 20));
|
| + m_hostImpl->pinchGestureEnd();
|
| + m_hostImpl->scrollEnd();
|
| +
|
| + scoped_ptr<ScrollAndScaleSet> scrollInfo = m_hostImpl->processScrollDeltas();
|
| + EXPECT_EQ(scrollInfo->pageScaleDelta, pageScaleDelta);
|
| expectContains(*scrollInfo, scrollLayer->id(), gfx::Vector2d(-10, -10));
|
| }
|
| }
|
|
|