Chromium Code Reviews| Index: third_party/WebKit/Source/core/paint/ObjectPaintProperties.h |
| diff --git a/third_party/WebKit/Source/core/paint/ObjectPaintProperties.h b/third_party/WebKit/Source/core/paint/ObjectPaintProperties.h |
| index b989c8bc6a209e9ab1f4ba256926740563f4379e..a519fe5d3210666233f2fce0c1838e20f953df1d 100644 |
| --- a/third_party/WebKit/Source/core/paint/ObjectPaintProperties.h |
| +++ b/third_party/WebKit/Source/core/paint/ObjectPaintProperties.h |
| @@ -11,6 +11,7 @@ |
| #include "platform/graphics/paint/EffectPaintPropertyNode.h" |
| #include "platform/graphics/paint/PaintChunkProperties.h" |
| #include "platform/graphics/paint/PropertyTreeState.h" |
| +#include "platform/graphics/paint/ScrollPaintPropertyNode.h" |
| #include "platform/graphics/paint/TransformPaintPropertyNode.h" |
| #include "wtf/PassRefPtr.h" |
| #include "wtf/PtrUtil.h" |
| @@ -55,6 +56,10 @@ public: |
| const TransformPaintPropertyNode* scrollTranslation() const { return m_scrollTranslation.get(); } |
| const TransformPaintPropertyNode* scrollbarPaintOffset() const { return m_scrollbarPaintOffset.get(); } |
| + // Auxiliary scrolling information for compositor-thread scrolling. Includes information such as the |
|
chrishtr
2016/09/08 20:43:59
Remove compositor-thread reference. It's for scrol
pdr.
2016/09/08 23:16:26
Done.
|
| + // hierarchy of scrollable areas, the extent that can be scrolled, etc. |
| + const ScrollPaintPropertyNode* scroll() const { return m_scroll.get(); } |
|
chrishtr
2016/09/08 20:43:59
Also note that this data corresponds to the scroll
pdr.
2016/09/08 23:16:26
Done.
|
| + |
| const EffectPaintPropertyNode* effect() const { return m_effect.get(); } |
| // The hierarchy of the clip subtree created by a LayoutObject is as follows: |
| @@ -75,7 +80,9 @@ public: |
| // at the right painting step. |
| struct LocalBorderBoxProperties { |
| LayoutPoint paintOffset; |
| + // TODO(pdr): Rename this GeometryPropertyTreeState because it does not contain scroll. |
| PropertyTreeState propertyTreeState; |
| + const ScrollPaintPropertyNode* scroll; |
| }; |
| const LocalBorderBoxProperties* localBorderBoxProperties() const { return m_localBorderBoxProperties.get(); } |
| // ContentsProperties is the PropertyTreeState state that is the same as in localBorderBoxProperties, except that it is inside |
| @@ -92,6 +99,7 @@ public: |
| void clearSvgLocalToBorderBoxTransform() { m_svgLocalToBorderBoxTransform = nullptr; } |
| void clearScrollTranslation() { m_scrollTranslation = nullptr; } |
| void clearScrollbarPaintOffset() { m_scrollbarPaintOffset = nullptr; } |
| + void clearScroll() { m_scroll = nullptr; } |
| template <typename... Args> TransformPaintPropertyNode* createOrUpdatePaintOffsetTranslation(Args&&... args) { return createOrUpdateProperty(m_paintOffsetTranslation, std::forward<Args>(args)...); } |
| template <typename... Args> TransformPaintPropertyNode* createOrUpdateTransform(Args&&... args) { return createOrUpdateProperty(m_transform, std::forward<Args>(args)...); } |
| @@ -107,6 +115,7 @@ public: |
| return createOrUpdateProperty(m_scrollTranslation, std::forward<Args>(args)...); |
| } |
| template <typename... Args> TransformPaintPropertyNode* createOrUpdateScrollbarPaintOffset(Args&&... args) { return createOrUpdateProperty(m_scrollbarPaintOffset, std::forward<Args>(args)...); } |
| + template <typename... Args> ScrollPaintPropertyNode* createOrUpdateScroll(Args&&... args) { return createOrUpdateProperty(m_scroll, std::forward<Args>(args)...); } |
| template <typename... Args> EffectPaintPropertyNode* createOrUpdateEffect(Args&&... args) { return createOrUpdateProperty(m_effect, std::forward<Args>(args)...); } |
| template <typename... Args> ClipPaintPropertyNode* createOrUpdateCssClip(Args&&... args) { return createOrUpdateProperty(m_cssClip, std::forward<Args>(args)...); } |
| template <typename... Args> ClipPaintPropertyNode* createOrUpdateCssClipFixedPosition(Args&&... args) { return createOrUpdateProperty(m_cssClipFixedPosition, std::forward<Args>(args)...); } |
| @@ -138,6 +147,7 @@ private: |
| RefPtr<TransformPaintPropertyNode> m_svgLocalToBorderBoxTransform; |
| RefPtr<TransformPaintPropertyNode> m_scrollTranslation; |
| RefPtr<TransformPaintPropertyNode> m_scrollbarPaintOffset; |
| + RefPtr<ScrollPaintPropertyNode> m_scroll; |
| std::unique_ptr<LocalBorderBoxProperties> m_localBorderBoxProperties; |
| }; |