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

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

Issue 2144823006: Reuse existing paint property node is possible (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: - Created 4 years, 5 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 ObjectPaintProperties_h 5 #ifndef ObjectPaintProperties_h
6 #define ObjectPaintProperties_h 6 #define ObjectPaintProperties_h
7 7
8 #include "core/CoreExport.h" 8 #include "core/CoreExport.h"
9 #include "platform/geometry/LayoutPoint.h" 9 #include "platform/geometry/LayoutPoint.h"
10 #include "platform/graphics/paint/ClipPaintPropertyNode.h" 10 #include "platform/graphics/paint/ClipPaintPropertyNode.h"
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after
85 // These setters should only be used by PaintPropertyTreeBuilder. 85 // These setters should only be used by PaintPropertyTreeBuilder.
86 void setPaintOffsetTranslation(PassRefPtr<TransformPaintPropertyNode> paintO ffset) { m_paintOffsetTranslation = paintOffset; } 86 void setPaintOffsetTranslation(PassRefPtr<TransformPaintPropertyNode> paintO ffset) { m_paintOffsetTranslation = paintOffset; }
87 void setTransform(PassRefPtr<TransformPaintPropertyNode> transform) { m_tran sform = transform; } 87 void setTransform(PassRefPtr<TransformPaintPropertyNode> transform) { m_tran sform = transform; }
88 void setEffect(PassRefPtr<EffectPaintPropertyNode> effect) { m_effect = effe ct; } 88 void setEffect(PassRefPtr<EffectPaintPropertyNode> effect) { m_effect = effe ct; }
89 void setCssClip(PassRefPtr<ClipPaintPropertyNode> clip) { m_cssClip = clip; } 89 void setCssClip(PassRefPtr<ClipPaintPropertyNode> clip) { m_cssClip = clip; }
90 void setCssClipFixedPosition(PassRefPtr<ClipPaintPropertyNode> clip) { m_css ClipFixedPosition = clip; } 90 void setCssClipFixedPosition(PassRefPtr<ClipPaintPropertyNode> clip) { m_css ClipFixedPosition = clip; }
91 void setOverflowClip(PassRefPtr<ClipPaintPropertyNode> clip) { m_overflowCli p = clip; } 91 void setOverflowClip(PassRefPtr<ClipPaintPropertyNode> clip) { m_overflowCli p = clip; }
92 void setPerspective(PassRefPtr<TransformPaintPropertyNode> perspective) { m_ perspective = perspective; } 92 void setPerspective(PassRefPtr<TransformPaintPropertyNode> perspective) { m_ perspective = perspective; }
93 void setSvgLocalToBorderBoxTransform(PassRefPtr<TransformPaintPropertyNode> transform) 93 void setSvgLocalToBorderBoxTransform(PassRefPtr<TransformPaintPropertyNode> transform)
94 { 94 {
95 DCHECK(!scrollTranslation()) << "SVG elements cannot scroll so there sho uld never be both a scroll translation and an SVG local to border box transform. "; 95 DCHECK(!scrollTranslation() || !transform) << "SVG elements cannot scrol l so there should never be both a scroll translation and an SVG local to border box transform.";
96 m_svgLocalToBorderBoxTransform = transform; 96 m_svgLocalToBorderBoxTransform = transform;
97 } 97 }
98 void setScrollTranslation(PassRefPtr<TransformPaintPropertyNode> translation ) 98 void setScrollTranslation(PassRefPtr<TransformPaintPropertyNode> translation )
99 { 99 {
100 DCHECK(!svgLocalToBorderBoxTransform()) << "SVG elements cannot scroll s o there should never be both a scroll translation and an SVG local to border box transform."; 100 DCHECK(!svgLocalToBorderBoxTransform() || !translation) << "SVG elements cannot scroll so there should never be both a scroll translation and an SVG loc al to border box transform.";
101 m_scrollTranslation = translation; 101 m_scrollTranslation = translation;
102 } 102 }
103 void setScrollbarPaintOffset(PassRefPtr<TransformPaintPropertyNode> paintOff set) { m_scrollbarPaintOffset = paintOffset; } 103 void setScrollbarPaintOffset(PassRefPtr<TransformPaintPropertyNode> paintOff set) { m_scrollbarPaintOffset = paintOffset; }
104 void setLocalBorderBoxProperties(std::unique_ptr<LocalBorderBoxProperties> p roperties) { m_localBorderBoxProperties = std::move(properties); } 104 void setLocalBorderBoxProperties(std::unique_ptr<LocalBorderBoxProperties> p roperties) { m_localBorderBoxProperties = std::move(properties); }
105 105
106 RefPtr<TransformPaintPropertyNode> m_paintOffsetTranslation; 106 RefPtr<TransformPaintPropertyNode> m_paintOffsetTranslation;
107 RefPtr<TransformPaintPropertyNode> m_transform; 107 RefPtr<TransformPaintPropertyNode> m_transform;
108 RefPtr<EffectPaintPropertyNode> m_effect; 108 RefPtr<EffectPaintPropertyNode> m_effect;
109 RefPtr<ClipPaintPropertyNode> m_cssClip; 109 RefPtr<ClipPaintPropertyNode> m_cssClip;
110 RefPtr<ClipPaintPropertyNode> m_cssClipFixedPosition; 110 RefPtr<ClipPaintPropertyNode> m_cssClipFixedPosition;
111 RefPtr<ClipPaintPropertyNode> m_overflowClip; 111 RefPtr<ClipPaintPropertyNode> m_overflowClip;
112 RefPtr<TransformPaintPropertyNode> m_perspective; 112 RefPtr<TransformPaintPropertyNode> m_perspective;
113 // TODO(pdr): Only LayoutSVGRoot needs this and it should be moved there. 113 // TODO(pdr): Only LayoutSVGRoot needs this and it should be moved there.
114 RefPtr<TransformPaintPropertyNode> m_svgLocalToBorderBoxTransform; 114 RefPtr<TransformPaintPropertyNode> m_svgLocalToBorderBoxTransform;
115 RefPtr<TransformPaintPropertyNode> m_scrollTranslation; 115 RefPtr<TransformPaintPropertyNode> m_scrollTranslation;
116 RefPtr<TransformPaintPropertyNode> m_scrollbarPaintOffset; 116 RefPtr<TransformPaintPropertyNode> m_scrollbarPaintOffset;
117 117
118 std::unique_ptr<LocalBorderBoxProperties> m_localBorderBoxProperties; 118 std::unique_ptr<LocalBorderBoxProperties> m_localBorderBoxProperties;
119 }; 119 };
120 120
121 } // namespace blink 121 } // namespace blink
122 122
123 #endif // ObjectPaintProperties_h 123 #endif // ObjectPaintProperties_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698