Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(983)

Unified Diff: cc/trees/property_tree_builder.cc

Issue 2840143002: [cc] Change semantics of fixed-pos container layer
Patch Set: add back inner viewport container layer as fixed-pos container Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: cc/trees/property_tree_builder.cc
diff --git a/cc/trees/property_tree_builder.cc b/cc/trees/property_tree_builder.cc
index 73197741d39ad4229075a9492c8e1bb62121eac8..67105391f379ef23d58128de9fade091b037966c 100644
--- a/cc/trees/property_tree_builder.cc
+++ b/cc/trees/property_tree_builder.cc
@@ -393,16 +393,16 @@ bool AddTransformNodeIfNeeded(
if (IsContainerForFixedPositionLayers(layer) || is_root) {
data_for_children->affected_by_inner_viewport_bounds_delta =
- layer == data_from_ancestor.inner_viewport_scroll_layer;
+ layer->id() == (data_from_ancestor.inner_viewport_scroll_layer
+ ? data_from_ancestor.inner_viewport_scroll_layer
+ ->scroll_clip_layer_id()
+ : Layer::INVALID_ID);
data_for_children->affected_by_outer_viewport_bounds_delta =
- layer == data_from_ancestor.outer_viewport_scroll_layer;
- if (is_scrollable) {
- DCHECK(!is_root);
- DCHECK(Transform(layer).IsIdentity());
- data_for_children->transform_fixed_parent = Parent(layer);
- } else {
- data_for_children->transform_fixed_parent = layer;
- }
+ layer->id() == (data_from_ancestor.outer_viewport_scroll_layer
+ ? data_from_ancestor.outer_viewport_scroll_layer
+ ->scroll_clip_layer_id()
+ : Layer::INVALID_ID);
+ data_for_children->transform_fixed_parent = layer;
}
data_for_children->transform_tree_parent = layer;

Powered by Google App Engine
This is Rietveld 408576698