OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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/paint/PrePaintTreeWalk.h" | 5 #include "core/paint/PrePaintTreeWalk.h" |
6 | 6 |
7 #include "core/dom/DocumentLifecycle.h" | 7 #include "core/dom/DocumentLifecycle.h" |
8 #include "core/frame/FrameView.h" | 8 #include "core/frame/FrameView.h" |
9 #include "core/frame/LocalFrame.h" | 9 #include "core/frame/LocalFrame.h" |
10 #include "core/layout/LayoutMultiColumnSpannerPlaceholder.h" | 10 #include "core/layout/LayoutMultiColumnSpannerPlaceholder.h" |
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
63 #if DCHECK_IS_ON() | 63 #if DCHECK_IS_ON() |
64 frameView.layoutView()->assertSubtreeClearedPaintInvalidationFlags(); | 64 frameView.layoutView()->assertSubtreeClearedPaintInvalidationFlags(); |
65 #endif | 65 #endif |
66 // If descendants were not fully updated, do not clear flags. During the | 66 // If descendants were not fully updated, do not clear flags. During the |
67 // next PrePaintTreeWalk, these flags will be used again. | 67 // next PrePaintTreeWalk, these flags will be used again. |
68 frameView.clearNeedsPaintPropertyUpdate(); | 68 frameView.clearNeedsPaintPropertyUpdate(); |
69 } | 69 } |
70 return descendantsFullyUpdated; | 70 return descendantsFullyUpdated; |
71 } | 71 } |
72 | 72 |
73 static void updateAuxiliaryObjectProperties(const LayoutObject& object, | 73 static inline void updateAuxiliaryObjectProperties( |
74 PrePaintTreeWalkContext& context) { | 74 const LayoutObject& object, |
| 75 PrePaintTreeWalkContext& context) { |
75 PaintLayer* paintLayer = nullptr; | 76 PaintLayer* paintLayer = nullptr; |
76 | 77 |
77 if (object.isBoxModelObject() && object.hasLayer()) | 78 if (object.isBoxModelObject() && object.hasLayer()) |
78 paintLayer = object.enclosingLayer(); | 79 paintLayer = object.enclosingLayer(); |
79 | 80 |
80 if (paintLayer) { | 81 if (paintLayer) { |
81 paintLayer->updateAncestorOverflowLayer(context.ancestorOverflowPaintLayer); | 82 paintLayer->updateAncestorOverflowLayer(context.ancestorOverflowPaintLayer); |
82 } | 83 } |
83 | 84 |
84 if (object.styleRef().position() == StickyPosition && paintLayer) { | 85 if (object.styleRef().position() == StickyPosition && paintLayer) { |
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
162 | 163 |
163 if (descendantsFullyUpdated) { | 164 if (descendantsFullyUpdated) { |
164 // If descendants were not updated, do not clear flags. During the next | 165 // If descendants were not updated, do not clear flags. During the next |
165 // PrePaintTreeWalk, these flags will be used again. | 166 // PrePaintTreeWalk, these flags will be used again. |
166 object.getMutableForPainting().clearPaintFlags(); | 167 object.getMutableForPainting().clearPaintFlags(); |
167 } | 168 } |
168 return descendantsFullyUpdated; | 169 return descendantsFullyUpdated; |
169 } | 170 } |
170 | 171 |
171 } // namespace blink | 172 } // namespace blink |
OLD | NEW |