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

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

Issue 2345403003: Add background attachment fixed main thread scrolling reason [spv2] (Closed)
Patch Set: Update test that was written for PaintArtifactCompositor's reasons update Created 4 years, 3 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 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 29 matching lines...) Expand all
40 // TransformPaintPropertyNode::renderingContextID. 40 // TransformPaintPropertyNode::renderingContextID.
41 unsigned renderingContextID = 0; 41 unsigned renderingContextID = 0;
42 // The clip node describes the accumulated raster clip for the current s ubtree. 42 // The clip node describes the accumulated raster clip for the current s ubtree.
43 // Note that the computed raster region in canvas space for a clip node is independent from 43 // Note that the computed raster region in canvas space for a clip node is independent from
44 // the transform and paint offset above. Also the actual raster region m ay be affected 44 // the transform and paint offset above. Also the actual raster region m ay be affected
45 // by layerization and occlusion tracking. 45 // by layerization and occlusion tracking.
46 const ClipPaintPropertyNode* clip = nullptr; 46 const ClipPaintPropertyNode* clip = nullptr;
47 // The scroll node contains information for scrolling such as the parent scroll space, the 47 // The scroll node contains information for scrolling such as the parent scroll space, the
48 // extent that can be scrolled, etc. Because scroll nodes reference a sc roll offset 48 // extent that can be scrolled, etc. Because scroll nodes reference a sc roll offset
49 // transform, scroll nodes should be updated if the transform tree chang es. 49 // transform, scroll nodes should be updated if the transform tree chang es.
50 const ScrollPaintPropertyNode* scroll = nullptr; 50 ScrollPaintPropertyNode* scroll = nullptr;
51 }; 51 };
52 52
53 ContainingBlockContext current; 53 ContainingBlockContext current;
54 54
55 // Separate context for out-of-flow positioned and fixed positioned elements are needed 55 // Separate context for out-of-flow positioned and fixed positioned elements are needed
56 // because they don't use DOM parent as their containing block. 56 // because they don't use DOM parent as their containing block.
57 // These additional contexts normally pass through untouched, and are only c opied from 57 // These additional contexts normally pass through untouched, and are only c opied from
58 // the main context when the current element serves as the containing block of corresponding 58 // the main context when the current element serves as the containing block of corresponding
59 // positioned descendants. 59 // positioned descendants.
60 // Overflow clips are also inherited by containing block tree instead of DOM tree, thus they 60 // Overflow clips are also inherited by containing block tree instead of DOM tree, thus they
(...skipping 20 matching lines...) Expand all
81 void buildTreeNodesForSelf(const LayoutObject&, PaintPropertyTreeBuilderCont ext&); 81 void buildTreeNodesForSelf(const LayoutObject&, PaintPropertyTreeBuilderCont ext&);
82 void buildTreeNodesForChildren(const LayoutObject&, PaintPropertyTreeBuilder Context&); 82 void buildTreeNodesForChildren(const LayoutObject&, PaintPropertyTreeBuilder Context&);
83 83
84 private: 84 private:
85 static void updatePaintOffsetTranslation(const LayoutObject&, PaintPropertyT reeBuilderContext&); 85 static void updatePaintOffsetTranslation(const LayoutObject&, PaintPropertyT reeBuilderContext&);
86 static void updateTransform(const LayoutObject&, PaintPropertyTreeBuilderCon text&); 86 static void updateTransform(const LayoutObject&, PaintPropertyTreeBuilderCon text&);
87 static void updateEffect(const LayoutObject&, PaintPropertyTreeBuilderContex t&); 87 static void updateEffect(const LayoutObject&, PaintPropertyTreeBuilderContex t&);
88 static void updateCssClip(const LayoutObject&, PaintPropertyTreeBuilderConte xt&); 88 static void updateCssClip(const LayoutObject&, PaintPropertyTreeBuilderConte xt&);
89 static void updateLocalBorderBoxContext(const LayoutObject&, PaintPropertyTr eeBuilderContext&); 89 static void updateLocalBorderBoxContext(const LayoutObject&, PaintPropertyTr eeBuilderContext&);
90 static void updateScrollbarPaintOffset(const LayoutObject&, const PaintPrope rtyTreeBuilderContext&); 90 static void updateScrollbarPaintOffset(const LayoutObject&, const PaintPrope rtyTreeBuilderContext&);
91 static void updateMainThreadScrollingReasons(const LayoutObject&, PaintPrope rtyTreeBuilderContext&);
91 static void updateOverflowClip(const LayoutObject&, PaintPropertyTreeBuilder Context&); 92 static void updateOverflowClip(const LayoutObject&, PaintPropertyTreeBuilder Context&);
92 static void updatePerspective(const LayoutObject&, PaintPropertyTreeBuilderC ontext&); 93 static void updatePerspective(const LayoutObject&, PaintPropertyTreeBuilderC ontext&);
93 static void updateSvgLocalToBorderBoxTransform(const LayoutObject&, PaintPro pertyTreeBuilderContext&); 94 static void updateSvgLocalToBorderBoxTransform(const LayoutObject&, PaintPro pertyTreeBuilderContext&);
94 static void updateScrollAndScrollTranslation(const LayoutObject&, PaintPrope rtyTreeBuilderContext&); 95 static void updateScrollAndScrollTranslation(const LayoutObject&, PaintPrope rtyTreeBuilderContext&);
95 static void updateOutOfFlowContext(const LayoutObject&, PaintPropertyTreeBui lderContext&); 96 static void updateOutOfFlowContext(const LayoutObject&, PaintPropertyTreeBui lderContext&);
96 }; 97 };
97 98
98 } // namespace blink 99 } // namespace blink
99 100
100 #endif // PaintPropertyTreeBuilder_h 101 #endif // PaintPropertyTreeBuilder_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698