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

Side by Side Diff: third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.h

Issue 2495973002: [SPv2] Add filter support in PaintArtifactCompositor (Closed)
Patch Set: rebase Created 4 years 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 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 52 matching lines...) Expand 10 before | Expand all | Expand 10 after
63 ContainingBlockContext absolutePosition; 63 ContainingBlockContext absolutePosition;
64 const LayoutObject* containerForAbsolutePosition = nullptr; 64 const LayoutObject* containerForAbsolutePosition = nullptr;
65 65
66 ContainingBlockContext fixedPosition; 66 ContainingBlockContext fixedPosition;
67 67
68 // The effect hierarchy is applied by the stacking context tree. It is 68 // The effect hierarchy is applied by the stacking context tree. It is
69 // guaranteed that every DOM descendant is also a stacking context descendant. 69 // guaranteed that every DOM descendant is also a stacking context descendant.
70 // Therefore, we don't need extra bookkeeping for effect nodes and can 70 // Therefore, we don't need extra bookkeeping for effect nodes and can
71 // generate the effect tree from a DOM-order traversal. 71 // generate the effect tree from a DOM-order traversal.
72 const EffectPaintPropertyNode* currentEffect = nullptr; 72 const EffectPaintPropertyNode* currentEffect = nullptr;
73 // Some effects are spatial, i.e. may refer to input pixels outside of output
74 // clip. The cull rect for its input shall be derived from its output clip.
75 // This variable represents the input cull of current effect, also serves as
76 // output clip of child effects that don't have a hard clip.
77 const ClipPaintPropertyNode* inputClipOfCurrentEffect = nullptr;
73 78
74 bool isUnderMultiColumnSpanner = false; 79 bool isUnderMultiColumnSpanner = false;
75 }; 80 };
76 81
77 // Creates paint property tree nodes for special things in the layout tree. 82 // Creates paint property tree nodes for special things in the layout tree.
78 // Special things include but not limit to: overflow clip, transform, fixed-pos, 83 // Special things include but not limit to: overflow clip, transform, fixed-pos,
79 // animation, mask, filter, ... etc. 84 // animation, mask, filter, ... etc.
80 // It expects to be invoked for each layout tree node in DOM order during 85 // It expects to be invoked for each layout tree node in DOM order during
81 // InPrePaint phase. 86 // InPrePaint phase.
82 class PaintPropertyTreeBuilder { 87 class PaintPropertyTreeBuilder {
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
121 static void updateScrollAndScrollTranslation( 126 static void updateScrollAndScrollTranslation(
122 const LayoutObject&, 127 const LayoutObject&,
123 PaintPropertyTreeBuilderContext&); 128 PaintPropertyTreeBuilderContext&);
124 static void updateOutOfFlowContext(const LayoutObject&, 129 static void updateOutOfFlowContext(const LayoutObject&,
125 PaintPropertyTreeBuilderContext&); 130 PaintPropertyTreeBuilderContext&);
126 }; 131 };
127 132
128 } // namespace blink 133 } // namespace blink
129 134
130 #endif // PaintPropertyTreeBuilder_h 135 #endif // PaintPropertyTreeBuilder_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698