| 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 5e97f14437a1d00c8dcfc3789e157dd2ac17f545..0fdcefee8449b91f9b1cd3b06e92070cd4b67713 100644
|
| --- a/cc/trees/layer_tree_host_common.cc
|
| +++ b/cc/trees/layer_tree_host_common.cc
|
| @@ -1128,6 +1128,7 @@ struct SubtreeGlobals {
|
| const LayerType* page_scale_application_layer;
|
| bool can_adjust_raster_scales;
|
| bool can_render_to_separate_surface;
|
| + bool* has_fixed_to_bottom_edge_layer;
|
| };
|
|
|
| template<typename LayerType>
|
| @@ -1426,6 +1427,11 @@ static void CalculateDrawPropertiesInternal(
|
| DCHECK(globals.page_scale_application_layer ||
|
| (globals.page_scale_factor == 1.f));
|
|
|
| + if (globals.has_fixed_to_bottom_edge_layer) {
|
| + *globals.has_fixed_to_bottom_edge_layer |=
|
| + layer->position_constraint().is_fixed_to_bottom_edge();
|
| + }
|
| +
|
| DataForRecursion<LayerType> data_for_children;
|
| typename LayerType::RenderSurfaceType*
|
| nearest_occlusion_immune_ancestor_surface =
|
| @@ -2153,6 +2159,10 @@ void LayerTreeHostCommon::CalculateDrawProperties(
|
| globals.can_render_to_separate_surface =
|
| inputs->can_render_to_separate_surface;
|
| globals.can_adjust_raster_scales = inputs->can_adjust_raster_scales;
|
| + globals.has_fixed_to_bottom_edge_layer =
|
| + inputs->has_fixed_to_bottom_edge_layer;
|
| + if (globals.has_fixed_to_bottom_edge_layer)
|
| + *globals.has_fixed_to_bottom_edge_layer = false;
|
|
|
| DataForRecursion<Layer> data_for_recursion;
|
| data_for_recursion.parent_matrix = scaled_device_transform;
|
| @@ -2211,6 +2221,10 @@ void LayerTreeHostCommon::CalculateDrawProperties(
|
| globals.can_render_to_separate_surface =
|
| inputs->can_render_to_separate_surface;
|
| globals.can_adjust_raster_scales = inputs->can_adjust_raster_scales;
|
| + globals.has_fixed_to_bottom_edge_layer =
|
| + inputs->has_fixed_to_bottom_edge_layer;
|
| + if (globals.has_fixed_to_bottom_edge_layer)
|
| + *globals.has_fixed_to_bottom_edge_layer = false;
|
|
|
| DataForRecursion<LayerImpl> data_for_recursion;
|
| data_for_recursion.parent_matrix = scaled_device_transform;
|
|
|