[chromium] Add three small zoom gesture features
authorcommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 22 Feb 2012 05:29:06 +0000 (05:29 +0000)
committercommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 22 Feb 2012 05:29:06 +0000 (05:29 +0000)
commitebf4e857557c859212ae7386b83c5632b8190364
tree6d897e46bb2ba55fab12e191abb14fde516748df
parent7bbcaab7d26e509fccd9ddc77273987bc80b2c31
[chromium] Add three small zoom gesture features
https://bugs.webkit.org/show_bug.cgi?id=74216

Patch by Alexandre Elias <aelias@google.com> on 2012-02-21
Reviewed by James Robinson.

1. Support panning around with two fingers.
2. When double-tap zooming, issue the commit at final/scroll scale as
early as possible.
3. When pinch zooming out, issue a commit at minimum scale to avoid
showing checkerboard.

Added test for panning to CCLayerTreeHostImplTest::pinchGesture.
(The other features are heuristics whose exact behavior we don't need
to lock in with a test.)

* platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
(WebCore::CCLayerTreeHostImpl::startPageScaleAnimation):
(WebCore::CCLayerTreeHostImpl::pinchGestureBegin):
(WebCore::CCLayerTreeHostImpl::pinchGestureUpdate):
(WebCore::CCLayerTreeHostImpl::computeDoubleTapZoomDeltas):
(WebCore::CCLayerTreeHostImpl::computePinchZoomDeltas):
(WebCore::CCLayerTreeHostImpl::makeScrollAndScaleSet):
(WebCore::CCLayerTreeHostImpl::processScrollDeltas):
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@108445 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Source/WebCore/ChangeLog
Source/WebCore/platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp
Source/WebCore/platform/graphics/chromium/cc/CCLayerTreeHostImpl.h
Source/WebKit/chromium/tests/CCLayerTreeHostImplTest.cpp