Early terminate flings when scrolling impossible
commitd2afa867d9f2451d2dede9b8bd5374441a79a862
authorjdduke@chromium.org <jdduke@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>
Mon, 31 Mar 2014 20:24:42 +0000 (31 20:24 +0000)
committerjdduke@chromium.org <jdduke@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>
Mon, 31 Mar 2014 20:24:42 +0000 (31 20:24 +0000)
tree5cf262a443201d0b21e9f5e3cf8cf7400efbe02e
parent533b464baefc2b0490ea4427a1a22658426bd73d
Early terminate flings when scrolling impossible

Previously, flings were terminated early only if the root layer overscrolled.
Now, flings will terminate if the fling target's |scrollBy()| method returns
false, providing consistency between layer types and saving battery on
sites with scrolling sublayers.

Also move |DidOverscrollParams| into content/ in anticipation of using it
directly in the overscroll IPC message.

Corresponding Blink patch:
https://codereview.chromium.org/139493003/

Review URL: https://codereview.chromium.org/136173004

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@260631 0039d316-1c4b-4281-b951-d872f2087c98
28 files changed:
cc/input/input_handler.h
cc/trees/layer_tree_host_impl.cc
cc/trees/layer_tree_host_impl.h
cc/trees/layer_tree_host_impl_unittest.cc
cc/trees/layer_tree_host_unittest_scroll.cc
content/browser/android/in_process/synchronous_compositor_impl.cc
content/browser/android/in_process/synchronous_compositor_impl.h
content/browser/android/in_process/synchronous_input_event_filter.cc
content/browser/android/in_process/synchronous_input_event_filter.h
content/child/fling_animator_impl_android.cc
content/child/touch_fling_gesture_curve.cc
content/child/touch_fling_gesture_curve_unittest.cc
content/common/input/did_overscroll_params.h [new file with mode: 0644]
content/content_common.gypi
content/renderer/input/input_event_filter.cc
content/renderer/input/input_event_filter.h
content/renderer/input/input_handler_manager.cc
content/renderer/input/input_handler_manager.h
content/renderer/input/input_handler_manager_client.h
content/renderer/input/input_handler_proxy.cc
content/renderer/input/input_handler_proxy.h
content/renderer/input/input_handler_proxy_client.h
content/renderer/input/input_handler_proxy_unittest.cc
content/renderer/input/input_handler_wrapper.cc
content/renderer/input/input_handler_wrapper.h
content/test/web_gesture_curve_mock.cc
ui/gfx/android/scroller.cc
ui/gfx/android/scroller_unittest.cc