| Index: third_party/WebKit/Source/core/paint/PaintPropertyTreePrinter.cpp
|
| diff --git a/third_party/WebKit/Source/core/paint/PaintPropertyTreePrinter.cpp b/third_party/WebKit/Source/core/paint/PaintPropertyTreePrinter.cpp
|
| index ecfa21d905a89406622d2507c7e5bfa4d29594ba..85f43fb7cfe1a5d94a5aecebb7cd6543cb815733 100644
|
| --- a/third_party/WebKit/Source/core/paint/PaintPropertyTreePrinter.cpp
|
| +++ b/third_party/WebKit/Source/core/paint/PaintPropertyTreePrinter.cpp
|
| @@ -192,6 +192,30 @@ public:
|
| }
|
| };
|
|
|
| +template <>
|
| +class PropertyTreePrinterTraits<ScrollPaintPropertyNode> {
|
| +public:
|
| + static void addFrameViewProperties(const FrameView& frameView, PropertyTreePrinter<ScrollPaintPropertyNode>& printer)
|
| + {
|
| + if (const ScrollPaintPropertyNode* rootScroll = frameView.rootScroll())
|
| + printer.addPropertyNode(rootScroll, "RootScroll (FrameView)");
|
| + if (const ScrollPaintPropertyNode* scroll = frameView.scroll())
|
| + printer.addPropertyNode(scroll, "Scroll (FrameView)");
|
| + }
|
| +
|
| + static void addObjectPaintProperties(const LayoutObject& object, const ObjectPaintProperties& paintProperties, PropertyTreePrinter<ScrollPaintPropertyNode>& printer)
|
| + {
|
| + if (const ScrollPaintPropertyNode* scroll = paintProperties.scroll())
|
| + printer.addPropertyNode(scroll, "Scroll (" + object.debugName() + ")");
|
| + }
|
| +
|
| + static void printNodeAsString(const ScrollPaintPropertyNode* node, StringBuilder& stringBuilder)
|
| + {
|
| + // TODO(pdr): Fill this out.
|
| + stringBuilder.append(String::format(" transform=%p ", node->transform()));
|
| + }
|
| +};
|
| +
|
| class PaintPropertyTreeGraphBuilder {
|
| public:
|
| PaintPropertyTreeGraphBuilder() { }
|
| @@ -318,6 +342,11 @@ private:
|
| writeParentEdge(&node, node.parent(), s_effectNodeColor, os);
|
| }
|
|
|
| + void writePaintPropertyNode(const ScrollPaintPropertyNode&, const void*, const char*)
|
| + {
|
| + // TODO(pdr): fill this out.
|
| + }
|
| +
|
| void writeObjectPaintPropertyNodes(const LayoutObject& object)
|
| {
|
| const ObjectPaintProperties* properties = object.objectPaintProperties();
|
| @@ -356,6 +385,9 @@ private:
|
| if (object.isLayoutView() && overflowClip->parent())
|
| writePaintPropertyNode(*overflowClip->parent(), nullptr, "rootClip");
|
| }
|
| + const ScrollPaintPropertyNode* scroll = properties->scroll();
|
| + if (scroll)
|
| + writePaintPropertyNode(*scroll, &object, "scroll");
|
| }
|
|
|
| void writeFrameViewPaintPropertyNodes(const FrameView& frameView)
|
| @@ -378,6 +410,9 @@ private:
|
| ClipPaintPropertyNode* contentClip = frameView.contentClip();
|
| if (contentClip)
|
| writePaintPropertyNode(*contentClip, &frameView, "contentClip");
|
| + ScrollPaintPropertyNode* scroll = frameView.scroll();
|
| + if (scroll)
|
| + writePaintPropertyNode(*scroll, &frameView, "scroll");
|
| }
|
|
|
| void writeLayoutObjectNode(const LayoutObject& object)
|
| @@ -456,6 +491,11 @@ void showEffectPropertyTree(const blink::FrameView& rootFrame)
|
| blink::PropertyTreePrinter<blink::EffectPaintPropertyNode>().showTree(rootFrame);
|
| }
|
|
|
| +void showScrollPropertyTree(const blink::FrameView& rootFrame)
|
| +{
|
| + blink::PropertyTreePrinter<blink::ScrollPaintPropertyNode>().showTree(rootFrame);
|
| +}
|
| +
|
| void showPaintPropertyPath(const blink::TransformPaintPropertyNode* node)
|
| {
|
| blink::PropertyTreePrinter<blink::TransformPaintPropertyNode>().showPath(node);
|
| @@ -471,6 +511,11 @@ void showPaintPropertyPath(const blink::EffectPaintPropertyNode* node)
|
| blink::PropertyTreePrinter<blink::EffectPaintPropertyNode>().showPath(node);
|
| }
|
|
|
| +void showPaintPropertyPath(const blink::ScrollPaintPropertyNode* node)
|
| +{
|
| + blink::PropertyTreePrinter<blink::ScrollPaintPropertyNode>().showPath(node);
|
| +}
|
| +
|
| String paintPropertyTreeGraph(const blink::FrameView& frameView)
|
| {
|
| blink::PaintPropertyTreeGraphBuilder builder;
|
|
|