Index: cc/trees/layer_tree_impl.cc |
diff --git a/cc/trees/layer_tree_impl.cc b/cc/trees/layer_tree_impl.cc |
index 9da16b4deddc42ca38b89da28d19a2835f01dbb5..4d1d6a4921bff87546c3b7e88f398882b85467bc 100644 |
--- a/cc/trees/layer_tree_impl.cc |
+++ b/cc/trees/layer_tree_impl.cc |
@@ -231,6 +231,24 @@ void LayerTreeImpl::UpdateMaxScrollOffset() { |
root_scroll_layer_->SetMaxScrollOffset(gfx::ToFlooredVector2d(max_scroll)); |
} |
+static void ApplySentScrollDeltasOn(LayerImpl* layer) { |
+ layer->ApplySentScrollDeltas(); |
+} |
+ |
+void LayerTreeImpl::ApplySentScrollAndScaleDeltas() { |
+ DCHECK(IsActiveTree()); |
+ |
+ page_scale_factor_ *= sent_page_scale_delta_; |
+ page_scale_delta_ /= sent_page_scale_delta_; |
+ sent_page_scale_delta_ = 1.f; |
+ |
+ if (!root_layer()) |
+ return; |
+ |
+ LayerTreeHostCommon::CallFunctionForSubtree( |
+ root_layer(), base::Bind(&ApplySentScrollDeltasOn)); |
+} |
+ |
void LayerTreeImpl::UpdateSolidColorScrollbars() { |
DCHECK(settings().solid_color_scrollbars); |