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

Side by Side Diff: third_party/WebKit/Source/platform/graphics/paint/PropertyTreeState.h

Issue 2650903002: Ignore scroll node when checking whether a chunk can merge. (Closed)
Patch Set: Created 3 years, 10 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 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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 PropertyTreeState_h 5 #ifndef PropertyTreeState_h
6 #define PropertyTreeState_h 6 #define PropertyTreeState_h
7 7
8 #include "platform/graphics/paint/ClipPaintPropertyNode.h" 8 #include "platform/graphics/paint/ClipPaintPropertyNode.h"
9 #include "platform/graphics/paint/EffectPaintPropertyNode.h" 9 #include "platform/graphics/paint/EffectPaintPropertyNode.h"
10 #include "platform/graphics/paint/ScrollPaintPropertyNode.h" 10 #include "platform/graphics/paint/ScrollPaintPropertyNode.h"
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after
67 } 67 }
68 void setScroll(RefPtr<const ScrollPaintPropertyNode> node) { 68 void setScroll(RefPtr<const ScrollPaintPropertyNode> node) {
69 m_scroll = std::move(node); 69 m_scroll = std::move(node);
70 } 70 }
71 71
72 // Returns the compositor element id, if any, for this property state. If none 72 // Returns the compositor element id, if any, for this property state. If none
73 // of the scroll, effect or transform nodes for this state have a compositor 73 // of the scroll, effect or transform nodes for this state have a compositor
74 // element id then a default instance is returned. 74 // element id then a default instance is returned.
75 const CompositorElementId compositorElementId() const; 75 const CompositorElementId compositorElementId() const;
76 76
77 // Returns equivalence of transform, clip and effect nodes. We explicitly
78 // ignore the scroll node state as it is not relevant for straight geometry
79 // calculation purposes.
80 bool equivalentGeometry(const PropertyTreeState& other) const;
81
77 enum InnermostNode { 82 enum InnermostNode {
78 None, // None means that all nodes are their root values 83 None, // None means that all nodes are their root values
79 Transform, 84 Transform,
80 Clip, 85 Clip,
81 Effect, 86 Effect,
82 }; 87 };
83 88
84 // There is always a well-defined order in which the transform, clip 89 // There is always a well-defined order in which the transform, clip
85 // and effects of a PropertyTreeState apply. This method returns which 90 // and effects of a PropertyTreeState apply. This method returns which
86 // of them applies first to content drawn with this PropertyTreeState. 91 // of them applies first to content drawn with this PropertyTreeState.
(...skipping 104 matching lines...) Expand 10 before | Expand all | Expand 10 after
191 } 196 }
192 197
193 HashMap<const PropertyTreeNode*, String> m_nodeToDebugString; 198 HashMap<const PropertyTreeNode*, String> m_nodeToDebugString;
194 }; 199 };
195 200
196 #endif 201 #endif
197 202
198 } // namespace blink 203 } // namespace blink
199 204
200 #endif // PropertyTreeState_h 205 #endif // PropertyTreeState_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698