diff options
Diffstat (limited to 'Source/WebCore/rendering/RenderTreeAsText.cpp')
-rw-r--r-- | Source/WebCore/rendering/RenderTreeAsText.cpp | 64 |
1 files changed, 34 insertions, 30 deletions
diff --git a/Source/WebCore/rendering/RenderTreeAsText.cpp b/Source/WebCore/rendering/RenderTreeAsText.cpp index 8af6a2765..276366c0b 100644 --- a/Source/WebCore/rendering/RenderTreeAsText.cpp +++ b/Source/WebCore/rendering/RenderTreeAsText.cpp @@ -315,19 +315,16 @@ void RenderTreeAsText::writeRenderObject(TextStream& ts, const RenderObject& o, if (box.borderTop() || box.borderRight() || box.borderBottom() || box.borderLeft()) { ts << " [border:"; - BorderValue prevBorder; - if (o.style()->borderTop() != prevBorder) { - prevBorder = o.style()->borderTop(); - if (!box.borderTop()) - ts << " none"; - else { - ts << " (" << box.borderTop() << "px "; - printBorderStyle(ts, o.style()->borderTopStyle()); - Color col = o.style()->borderTopColor(); - if (!col.isValid()) - col = o.style()->color(); - ts << col.nameForRenderTreeAsText() << ")"; - } + BorderValue prevBorder = o.style()->borderTop(); + if (!box.borderTop()) + ts << " none"; + else { + ts << " (" << box.borderTop() << "px "; + printBorderStyle(ts, o.style()->borderTopStyle()); + Color col = o.style()->borderTopColor(); + if (!col.isValid()) + col = o.style()->color(); + ts << col.nameForRenderTreeAsText() << ")"; } if (o.style()->borderRight() != prevBorder) { @@ -448,14 +445,14 @@ void RenderTreeAsText::writeRenderObject(TextStream& ts, const RenderObject& o, ts << " id=\"" + static_cast<Element*>(node)->getIdAttribute() + "\""; if (node->hasClass()) { + ts << " class=\""; StyledElement* styledElement = static_cast<StyledElement*>(node); - String classes; for (size_t i = 0; i < styledElement->classNames().size(); ++i) { if (i > 0) - classes += " "; - classes += styledElement->classNames()[i]; + ts << " "; + ts << styledElement->classNames()[i]; } - ts << " class=\"" + classes + "\""; + ts << "\""; } } } @@ -702,12 +699,12 @@ static void writeRenderNamedFlowThreads(TextStream& ts, RenderView* renderView, RenderRegion* renderRegion = *itRR; writeIndent(ts, indent + 2); ts << "RenderRegion"; - if (renderRegion->node()) { - String tagName = getTagName(renderRegion->node()); + if (renderRegion->generatingNode()) { + String tagName = getTagName(renderRegion->generatingNode()); if (!tagName.isEmpty()) ts << " {" << tagName << "}"; - if (renderRegion->node()->isElementNode() && renderRegion->node()->hasID()) { - Element* element = static_cast<Element*>(renderRegion->node()); + if (renderRegion->generatingNode()->isElementNode() && renderRegion->generatingNode()->hasID()) { + Element* element = static_cast<Element*>(renderRegion->generatingNode()); ts << " #" << element->idForStyleResolution(); } if (renderRegion->hasCustomRegionStyle()) @@ -792,29 +789,36 @@ static void writeLayers(TextStream& ts, const RenderLayer* rootLayer, RenderLaye static String nodePosition(Node* node) { - String result; + StringBuilder result; Element* body = node->document()->body(); Node* parent; for (Node* n = node; n; n = parent) { parent = n->parentOrHostNode(); if (n != node) - result += " of "; + result.appendLiteral(" of "); if (parent) { if (body && n == body) { // We don't care what offset body may be in the document. - result += "body"; + result.appendLiteral("body"); break; } - if (n->isShadowRoot()) - result += "{" + getTagName(n) + "}"; - else - result += "child " + String::number(n->nodeIndex()) + " {" + getTagName(n) + "}"; + if (n->isShadowRoot()) { + result.append('{'); + result.append(getTagName(n)); + result.append('}'); + } else { + result.appendLiteral("child "); + result.appendNumber(n->nodeIndex()); + result.appendLiteral(" {"); + result.append(getTagName(n)); + result.append('}'); + } } else - result += "document"; + result.appendLiteral("document"); } - return result; + return result.toString(); } static void writeSelection(TextStream& ts, const RenderObject* o) |