Index: Source/WebCore/svg/SVGTextPositioningElement.cpp |
=================================================================== |
--- Source/WebCore/svg/SVGTextPositioningElement.cpp (revision 90860) |
+++ Source/WebCore/svg/SVGTextPositioningElement.cpp (working copy) |
@@ -108,30 +108,6 @@ |
ASSERT_NOT_REACHED(); |
} |
-static inline void updatePositioningValuesInRenderer(RenderObject* renderer) |
-{ |
- RenderSVGText* textRenderer = 0; |
- |
- if (renderer->isSVGText()) |
- textRenderer = toRenderSVGText(renderer); |
- else { |
- // Locate RenderSVGText parent renderer. |
- RenderObject* parent = renderer->parent(); |
- while (parent && !parent->isSVGText()) |
- parent = parent->parent(); |
- |
- if (parent) { |
- ASSERT(parent->isSVGText()); |
- textRenderer = toRenderSVGText(parent); |
- } |
- } |
- |
- if (!textRenderer) |
- return; |
- |
- textRenderer->setNeedsPositioningValuesUpdate(); |
-} |
- |
void SVGTextPositioningElement::svgAttributeChanged(const QualifiedName& attrName) |
{ |
if (!isSupportedAttribute(attrName)) { |
@@ -154,7 +130,8 @@ |
return; |
if (updateRelativeLengths || attrName == SVGNames::rotateAttr) { |
- updatePositioningValuesInRenderer(renderer); |
+ if (RenderSVGText* textRenderer = RenderSVGText::locateRenderSVGTextAncestor(renderer)) |
+ textRenderer->setNeedsPositioningValuesUpdate(); |
RenderSVGResource::markForLayoutAndParentResourceInvalidation(renderer); |
return; |
} |
@@ -162,17 +139,6 @@ |
ASSERT_NOT_REACHED(); |
} |
-void SVGTextPositioningElement::childrenChanged(bool changedByParser, Node* beforeChange, Node* afterChange, int childCountDelta) |
-{ |
- SVGTextContentElement::childrenChanged(changedByParser, beforeChange, afterChange, childCountDelta); |
- |
- if (changedByParser) |
- return; |
- |
- if (RenderObject* object = renderer()) |
- updatePositioningValuesInRenderer(object); |
-} |
- |
void SVGTextPositioningElement::synchronizeProperty(const QualifiedName& attrName) |
{ |
if (attrName == anyQName()) { |