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

Side by Side Diff: third_party/WebKit/Source/core/layout/compositing/CompositingInputsUpdater.cpp

Issue 2811803003: Revert of Only create sticky position constraints for constrained sticky position. (Closed)
Patch Set: 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 unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "core/layout/compositing/CompositingInputsUpdater.h" 5 #include "core/layout/compositing/CompositingInputsUpdater.h"
6 6
7 #include "core/dom/Document.h" 7 #include "core/dom/Document.h"
8 #include "core/frame/FrameView.h" 8 #include "core/frame/FrameView.h"
9 #include "core/layout/LayoutBlock.h" 9 #include "core/layout/LayoutBlock.h"
10 #include "core/layout/LayoutView.h" 10 #include "core/layout/LayoutView.h"
(...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after
97 void CompositingInputsUpdater::UpdateRecursive(PaintLayer* layer, 97 void CompositingInputsUpdater::UpdateRecursive(PaintLayer* layer,
98 UpdateType update_type, 98 UpdateType update_type,
99 AncestorInfo info) { 99 AncestorInfo info) {
100 if (!layer->ChildNeedsCompositingInputsUpdate() && 100 if (!layer->ChildNeedsCompositingInputsUpdate() &&
101 update_type != kForceUpdate) 101 update_type != kForceUpdate)
102 return; 102 return;
103 103
104 const PaintLayer* previous_overflow_layer = layer->AncestorOverflowLayer(); 104 const PaintLayer* previous_overflow_layer = layer->AncestorOverflowLayer();
105 layer->UpdateAncestorOverflowLayer(info.last_overflow_clip_layer); 105 layer->UpdateAncestorOverflowLayer(info.last_overflow_clip_layer);
106 if (info.last_overflow_clip_layer && layer->NeedsCompositingInputsUpdate() && 106 if (info.last_overflow_clip_layer && layer->NeedsCompositingInputsUpdate() &&
107 layer->GetLayoutObject().Style()->HasStickyConstrainedPosition()) { 107 layer->GetLayoutObject().Style()->GetPosition() == EPosition::kSticky) {
108 if (!RuntimeEnabledFeatures::rootLayerScrollingEnabled()) { 108 if (!RuntimeEnabledFeatures::rootLayerScrollingEnabled()) {
109 if (info.last_overflow_clip_layer != previous_overflow_layer) { 109 if (info.last_overflow_clip_layer != previous_overflow_layer) {
110 // Old ancestor scroller should no longer have these constraints. 110 // Old ancestor scroller should no longer have these constraints.
111 DCHECK(!previous_overflow_layer || 111 DCHECK(!previous_overflow_layer ||
112 !previous_overflow_layer->GetScrollableArea() 112 !previous_overflow_layer->GetScrollableArea()
113 ->GetStickyConstraintsMap() 113 ->GetStickyConstraintsMap()
114 .Contains(layer)); 114 .Contains(layer));
115 115
116 // If our ancestor scroller has changed and the previous one was the 116 // If our ancestor scroller has changed and the previous one was the
117 // root layer, we are no longer viewport constrained. 117 // root layer, we are no longer viewport constrained.
(...skipping 160 matching lines...) Expand 10 before | Expand all | Expand 10 after
278 DCHECK(!layer->NeedsCompositingInputsUpdate()); 278 DCHECK(!layer->NeedsCompositingInputsUpdate());
279 279
280 for (PaintLayer* child = layer->FirstChild(); child; 280 for (PaintLayer* child = layer->FirstChild(); child;
281 child = child->NextSibling()) 281 child = child->NextSibling())
282 AssertNeedsCompositingInputsUpdateBitsCleared(child); 282 AssertNeedsCompositingInputsUpdateBitsCleared(child);
283 } 283 }
284 284
285 #endif 285 #endif
286 286
287 } // namespace blink 287 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698