| Index: Source/core/svg/SVGMaskElement.cpp
|
| diff --git a/Source/core/svg/SVGMaskElement.cpp b/Source/core/svg/SVGMaskElement.cpp
|
| index fbf18fa40003482ac63e5907cc5cad548a5a4448..7cb521308810de1a94a2d2f66764d25411b56e05 100644
|
| --- a/Source/core/svg/SVGMaskElement.cpp
|
| +++ b/Source/core/svg/SVGMaskElement.cpp
|
| @@ -87,14 +87,16 @@ bool SVGMaskElement::isSupportedAttribute(const QualifiedName& attrName)
|
|
|
| bool SVGMaskElement::isPresentationAttribute(const QualifiedName& attrName) const
|
| {
|
| - if (attrName == SVGNames::xAttr || attrName == SVGNames::yAttr)
|
| + if (attrName == SVGNames::xAttr || attrName == SVGNames::yAttr
|
| + || attrName == SVGNames::widthAttr || attrName == SVGNames::heightAttr)
|
| return true;
|
| return SVGElement::isPresentationAttribute(attrName);
|
| }
|
|
|
| bool SVGMaskElement::isPresentationAttributeWithSVGDOM(const QualifiedName& attrName) const
|
| {
|
| - if (attrName == SVGNames::xAttr || attrName == SVGNames::yAttr)
|
| + if (attrName == SVGNames::xAttr || attrName == SVGNames::yAttr
|
| + || attrName == SVGNames::widthAttr || attrName == SVGNames::heightAttr)
|
| return true;
|
| return SVGElement::isPresentationAttributeWithSVGDOM(attrName);
|
| }
|
| @@ -106,6 +108,10 @@ void SVGMaskElement::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_width)
|
| + addSVGLengthPropertyToPresentationAttributeStyle(style, CSSPropertyWidth, *m_width->currentValue());
|
| + else if (property == m_height)
|
| + addSVGLengthPropertyToPresentationAttributeStyle(style, CSSPropertyHeight, *m_height->currentValue());
|
| else
|
| SVGElement::collectStyleForPresentationAttribute(name, value, style);
|
| }
|
| @@ -125,17 +131,14 @@ void SVGMaskElement::svgAttributeChanged(const QualifiedName& attrName)
|
| SVGElement::InvalidationGuard invalidationGuard(this);
|
|
|
| if (attrName == SVGNames::xAttr
|
| - || attrName == SVGNames::yAttr) {
|
| + || attrName == SVGNames::yAttr
|
| + || attrName == SVGNames::widthAttr
|
| + || attrName == SVGNames::heightAttr) {
|
| invalidateSVGPresentationAttributeStyle();
|
| setNeedsStyleRecalc(LocalStyleChange,
|
| StyleChangeReasonForTracing::fromAttribute(attrName));
|
| - }
|
| -
|
| - if (attrName == SVGNames::xAttr
|
| - || attrName == SVGNames::yAttr
|
| - || attrName == SVGNames::widthAttr
|
| - || attrName == SVGNames::heightAttr)
|
| updateRelativeLengthsInformation();
|
| + }
|
|
|
| LayoutSVGResourceContainer* renderer = toLayoutSVGResourceContainer(this->layoutObject());
|
| if (renderer)
|
|
|