| Index: Source/core/svg/SVGRectElement.cpp
|
| diff --git a/Source/core/svg/SVGRectElement.cpp b/Source/core/svg/SVGRectElement.cpp
|
| index aabdb2312ce3a1d7a9cf007683afcf55fe1cb9c5..93892a525bcc182ab938168a8f95c86282140886 100644
|
| --- a/Source/core/svg/SVGRectElement.cpp
|
| +++ b/Source/core/svg/SVGRectElement.cpp
|
| @@ -77,14 +77,16 @@ void SVGRectElement::parseAttribute(const QualifiedName& name, const AtomicStrin
|
|
|
| bool SVGRectElement::isPresentationAttribute(const QualifiedName& attrName) const
|
| {
|
| - if (attrName == SVGNames::xAttr || attrName == SVGNames::yAttr)
|
| + if (attrName == SVGNames::xAttr || attrName == SVGNames::yAttr
|
| + || attrName == SVGNames::rxAttr || attrName == SVGNames::ryAttr)
|
| return true;
|
| return SVGGeometryElement::isPresentationAttribute(attrName);
|
| }
|
|
|
| bool SVGRectElement::isPresentationAttributeWithSVGDOM(const QualifiedName& attrName) const
|
| {
|
| - if (attrName == SVGNames::xAttr || attrName == SVGNames::yAttr)
|
| + if (attrName == SVGNames::xAttr || attrName == SVGNames::yAttr
|
| + || attrName == SVGNames::rxAttr || attrName == SVGNames::ryAttr)
|
| return true;
|
| return SVGGeometryElement::isPresentationAttributeWithSVGDOM(attrName);
|
| }
|
| @@ -96,6 +98,10 @@ void SVGRectElement::collectStyleForPresentationAttribute(const QualifiedName& n
|
| addSVGLengthPropertyToPresentationAttributeStyle(style, CSSPropertyX, *m_x->currentValue());
|
| else if (property == m_y)
|
| addSVGLengthPropertyToPresentationAttributeStyle(style, CSSPropertyY, *m_y->currentValue());
|
| + else if (property == m_rx)
|
| + addSVGLengthPropertyToPresentationAttributeStyle(style, CSSPropertyRx, *m_rx->currentValue());
|
| + else if (property == m_ry)
|
| + addSVGLengthPropertyToPresentationAttributeStyle(style, CSSPropertyRy, *m_ry->currentValue());
|
| else
|
| SVGGeometryElement::collectStyleForPresentationAttribute(name, value, style);
|
| }
|
| @@ -109,20 +115,20 @@ void SVGRectElement::svgAttributeChanged(const QualifiedName& attrName)
|
|
|
| SVGElement::InvalidationGuard invalidationGuard(this);
|
|
|
| - bool isLengthAttributeXY =
|
| + bool isPresentationLengthAttribute =
|
| attrName == SVGNames::xAttr
|
| - || attrName == SVGNames::yAttr;
|
| - if (isLengthAttributeXY) {
|
| + || attrName == SVGNames::yAttr
|
| + || attrName == SVGNames::rxAttr
|
| + || attrName == SVGNames::ryAttr;
|
| + if (isPresentationLengthAttribute) {
|
| invalidateSVGPresentationAttributeStyle();
|
| setNeedsStyleRecalc(LocalStyleChange,
|
| StyleChangeReasonForTracing::fromAttribute(attrName));
|
| }
|
|
|
| - bool isLengthAttribute = isLengthAttributeXY
|
| - || attrName == SVGNames::widthAttr
|
| - || attrName == SVGNames::heightAttr
|
| - || attrName == SVGNames::rxAttr
|
| - || attrName == SVGNames::ryAttr;
|
| + bool isLengthAttribute = isPresentationLengthAttribute
|
| + || attrName == SVGNames::widthAttr
|
| + || attrName == SVGNames::heightAttr;
|
|
|
| if (isLengthAttribute)
|
| updateRelativeLengthsInformation();
|
|
|