| Index: cc/trees/layer_tree_host_common.cc
|
| diff --git a/cc/trees/layer_tree_host_common.cc b/cc/trees/layer_tree_host_common.cc
|
| index ecd387e1a4d1ccfd2c5aebefe1a9f86e4767c1fa..9d5ae510e2c01920db5398ce98a0b49a7b1f4a95 100644
|
| --- a/cc/trees/layer_tree_host_common.cc
|
| +++ b/cc/trees/layer_tree_host_common.cc
|
| @@ -583,11 +583,19 @@ void CalculateDrawPropertiesInternal(
|
| inputs->elastic_overscroll);
|
| // Similarly, the device viewport and device transform are shared
|
| // by both trees.
|
| - inputs->property_trees->clip_tree.SetViewportClip(
|
| + PropertyTrees* property_trees = inputs->property_trees;
|
| + property_trees->clip_tree.SetViewportClip(
|
| gfx::RectF(gfx::SizeF(inputs->device_viewport_size)));
|
| - inputs->property_trees->transform_tree.SetDeviceTransform(
|
| + float page_scale_factor_for_root =
|
| + inputs->page_scale_layer == inputs->root_layer
|
| + ? inputs->page_scale_factor
|
| + : 1.f;
|
| + property_trees->transform_tree.SetScreenSpaceScale(
|
| + inputs->device_scale_factor, page_scale_factor_for_root,
|
| + inputs->device_transform);
|
| + property_trees->transform_tree.SetDeviceTransform(
|
| inputs->device_transform, inputs->root_layer->position());
|
| - inputs->property_trees->transform_tree.SetDeviceTransformScaleFactor(
|
| + property_trees->transform_tree.SetDeviceTransformScaleFactor(
|
| inputs->device_transform);
|
| draw_property_utils::ComputeVisibleRects(
|
| inputs->root_layer, inputs->property_trees,
|
|
|