Index: android_webview/browser/browser_view_renderer.h |
diff --git a/android_webview/browser/browser_view_renderer.h b/android_webview/browser/browser_view_renderer.h |
index 477a039cecc344617fb77a5424e38c8310d498e0..83955ee1552e54887a9e75287b31afda3ea901fb 100644 |
--- a/android_webview/browser/browser_view_renderer.h |
+++ b/android_webview/browser/browser_view_renderer.h |
@@ -74,6 +74,7 @@ class BrowserViewRenderer : public content::SynchronousCompositorClient { |
void OnSizeChanged(int width, int height); |
void OnAttachedToWindow(int width, int height); |
void OnDetachedFromWindow(); |
+ void OnComputeScroll(base::TimeTicks animation_time); |
// Sets the scale for logical<->physical pixel conversions. |
void SetDipScale(float dip_scale); |
@@ -106,7 +107,9 @@ class BrowserViewRenderer : public content::SynchronousCompositorClient { |
float page_scale_factor, |
float min_page_scale_factor, |
float max_page_scale_factor) override; |
- bool IsExternalFlingActive() const override; |
+ bool IsExternalScrollActive() const override; |
+ void SetNeedsAnimateScroll( |
+ const AnimationCallback& scroll_animation) override; |
void DidOverscroll(gfx::Vector2dF accumulated_overscroll, |
gfx::Vector2dF latest_overscroll_delta, |
gfx::Vector2dF current_fling_velocity) override; |
@@ -179,6 +182,11 @@ class BrowserViewRenderer : public content::SynchronousCompositorClient { |
gfx::Size size_; |
+ // Used to drive a fling animation as requested by the compositor. This acts |
+ // as a single-shot animation; the compositor will continually post an |
+ // animation callback as long as they're required. |
+ AnimationCallback pending_fling_animation_; |
+ |
// Current scroll offset in CSS pixels. |
gfx::Vector2dF scroll_offset_dip_; |