summaryrefslogtreecommitdiffstats
path: root/cc/blink/web_layer_impl.h
diff options
context:
space:
mode:
authorymalik <ymalik@chromium.org>2015-12-22 15:17:10 -0800
committerCommit bot <commit-bot@chromium.org>2015-12-22 23:18:23 +0000
commit5534a2b2972534b523014c803e1e0e0541855cc7 (patch)
tree59ad1c2863849ef5bacf96f4eaf5446f5742ece2 /cc/blink/web_layer_impl.h
parent5a080f017c68b6230a6acea6cca89414d12db661 (diff)
downloadchromium_src-5534a2b2972534b523014c803e1e0e0541855cc7.zip
chromium_src-5534a2b2972534b523014c803e1e0e0541855cc7.tar.gz
chromium_src-5534a2b2972534b523014c803e1e0e0541855cc7.tar.bz2
Run smooth scroll animations on the compositor when possible
This CL implements "immediate retargeting" shown in the following diagram: https://docs.google.com/drawings/d/1z76m-GMDgLI-clkfroLJ-5yhsHkmriZr_swP0kn5iw4 This CL does the following - Add a new state to ScrollAnimatorCompositorCoordinator to update the target offset on the compositor - Use the ScrollAnimatorCompositorCoordinator to schedule anim - Add plumbing from the animators to the animation controller to abort animations Sample test pages: yashmalik.com/nested_scroll_mousewheel_listener.html yashmalik.com/nested_scroll_mousewheel_listener_15ms_janky.html (tight loop in RAF) BUG=552556 CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel Review URL: https://codereview.chromium.org/1534813004 Cr-Commit-Position: refs/heads/master@{#366685}
Diffstat (limited to 'cc/blink/web_layer_impl.h')
-rw-r--r--cc/blink/web_layer_impl.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/cc/blink/web_layer_impl.h b/cc/blink/web_layer_impl.h
index a1b762b..3fd0bcc 100644
--- a/cc/blink/web_layer_impl.h
+++ b/cc/blink/web_layer_impl.h
@@ -113,6 +113,7 @@ class WebLayerImpl : public blink::WebLayer {
void removeAnimation(int animation_id,
blink::WebCompositorAnimation::TargetProperty) override;
void pauseAnimation(int animation_id, double time_offset) override;
+ void abortAnimation(int animation_id) override;
bool hasActiveAnimation() override;
void setForceRenderSurface(bool force) override;
void setScrollPositionDouble(blink::WebDoublePoint position) override;