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 #ifndef PaintPropertyTreeBuilder_h | 5 #ifndef PaintPropertyTreeBuilder_h |
6 #define PaintPropertyTreeBuilder_h | 6 #define PaintPropertyTreeBuilder_h |
7 | 7 |
8 #include "platform/geometry/LayoutPoint.h" | 8 #include "platform/geometry/LayoutPoint.h" |
9 #include "platform/graphics/paint/ClipPaintPropertyNode.h" | 9 #include "platform/graphics/paint/ClipPaintPropertyNode.h" |
10 #include "platform/graphics/paint/EffectPaintPropertyNode.h" | 10 #include "platform/graphics/paint/EffectPaintPropertyNode.h" |
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
74 // guaranteed that every DOM descendant is also a stacking context descendant. | 74 // guaranteed that every DOM descendant is also a stacking context descendant. |
75 // Therefore, we don't need extra bookkeeping for effect nodes and can | 75 // Therefore, we don't need extra bookkeeping for effect nodes and can |
76 // generate the effect tree from a DOM-order traversal. | 76 // generate the effect tree from a DOM-order traversal. |
77 const EffectPaintPropertyNode* currentEffect = nullptr; | 77 const EffectPaintPropertyNode* currentEffect = nullptr; |
78 // Some effects are spatial, i.e. may refer to input pixels outside of output | 78 // Some effects are spatial, i.e. may refer to input pixels outside of output |
79 // clip. The cull rect for its input shall be derived from its output clip. | 79 // clip. The cull rect for its input shall be derived from its output clip. |
80 // This variable represents the input cull of current effect, also serves as | 80 // This variable represents the input cull of current effect, also serves as |
81 // output clip of child effects that don't have a hard clip. | 81 // output clip of child effects that don't have a hard clip. |
82 const ClipPaintPropertyNode* inputClipOfCurrentEffect = nullptr; | 82 const ClipPaintPropertyNode* inputClipOfCurrentEffect = nullptr; |
83 | 83 |
84 bool isUnderMultiColumnSpanner = false; | |
85 | |
86 // True if a change has forced all properties in a subtree to be updated. This | 84 // True if a change has forced all properties in a subtree to be updated. This |
87 // can be set due to paint offset changes or when the structure of the | 85 // can be set due to paint offset changes or when the structure of the |
88 // property tree changes (i.e., a node is added or removed). | 86 // property tree changes (i.e., a node is added or removed). |
89 bool forceSubtreeUpdate = false; | 87 bool forceSubtreeUpdate = false; |
90 }; | 88 }; |
91 | 89 |
92 // Creates paint property tree nodes for special things in the layout tree. | 90 // Creates paint property tree nodes for special things in the layout tree. |
93 // Special things include but not limit to: overflow clip, transform, fixed-pos, | 91 // Special things include but not limit to: overflow clip, transform, fixed-pos, |
94 // animation, mask, filter, ... etc. | 92 // animation, mask, filter, ... etc. |
95 // It expects to be invoked for each layout tree node in DOM order during | 93 // It expects to be invoked for each layout tree node in DOM order during |
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
141 static void updateScrollAndScrollTranslation( | 139 static void updateScrollAndScrollTranslation( |
142 const LayoutObject&, | 140 const LayoutObject&, |
143 PaintPropertyTreeBuilderContext&); | 141 PaintPropertyTreeBuilderContext&); |
144 static void updateOutOfFlowContext(const LayoutObject&, | 142 static void updateOutOfFlowContext(const LayoutObject&, |
145 PaintPropertyTreeBuilderContext&); | 143 PaintPropertyTreeBuilderContext&); |
146 }; | 144 }; |
147 | 145 |
148 } // namespace blink | 146 } // namespace blink |
149 | 147 |
150 #endif // PaintPropertyTreeBuilder_h | 148 #endif // PaintPropertyTreeBuilder_h |
OLD | NEW |