| Index: cc/trees/layer_tree_host_impl.cc
|
| diff --git a/cc/trees/layer_tree_host_impl.cc b/cc/trees/layer_tree_host_impl.cc
|
| index fbc4a820f982496949dce7d3040f3a0518f703c4..587547f8d6b7299468a707ba7c263e7b4c42f1b4 100644
|
| --- a/cc/trees/layer_tree_host_impl.cc
|
| +++ b/cc/trees/layer_tree_host_impl.cc
|
| @@ -2553,8 +2553,14 @@ void LayerTreeHostImpl::AnimateTopControls(base::TimeTicks time) {
|
| UpdateMaxScrollOffset();
|
| if (RootScrollLayer()->TotalScrollOffset().y() == 0.f)
|
| return;
|
| - RootScrollLayer()->ScrollBy(gfx::ScaleVector2d(
|
| - scroll, 1.f / active_tree_->total_page_scale_factor()));
|
| + if (scroll.IsZero()) {
|
| + // This may happen on the first animation step. Force redraw otherwise
|
| + // the animation would stop because of no new frames.
|
| + SetNeedsRedraw();
|
| + } else {
|
| + RootScrollLayer()->ScrollBy(gfx::ScaleVector2d(
|
| + scroll, 1.f / active_tree_->total_page_scale_factor()));
|
| + }
|
| }
|
|
|
| void LayerTreeHostImpl::AnimateLayers(base::TimeTicks monotonic_time,
|
|
|