summaryrefslogtreecommitdiffstats
path: root/dom/svg/SVGFEImageElement.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'dom/svg/SVGFEImageElement.cpp')
-rw-r--r--dom/svg/SVGFEImageElement.cpp17
1 files changed, 17 insertions, 0 deletions
diff --git a/dom/svg/SVGFEImageElement.cpp b/dom/svg/SVGFEImageElement.cpp
index f9c5f96758..826ba82228 100644
--- a/dom/svg/SVGFEImageElement.cpp
+++ b/dom/svg/SVGFEImageElement.cpp
@@ -371,4 +371,21 @@ void SVGFEImageElement::Notify(imgIRequest* aRequest, int32_t aType,
}
}
+void SVGFEImageElement::DidAnimateAttribute(int32_t aNameSpaceID,
+ nsAtom* aAttribute) {
+ if ((aNameSpaceID == kNameSpaceID_None ||
+ aNameSpaceID == kNameSpaceID_XLink) &&
+ aAttribute == nsGkAtoms::href) {
+ bool hrefIsSet =
+ mStringAttributes[SVGFEImageElement::HREF].IsExplicitlySet() ||
+ mStringAttributes[SVGFEImageElement::XLINK_HREF].IsExplicitlySet();
+ if (hrefIsSet) {
+ LoadSVGImage(true, true);
+ } else {
+ CancelImageRequests(true);
+ }
+ }
+ SVGFEImageElementBase::DidAnimateAttribute(aNameSpaceID, aAttribute);
+}
+
} // namespace mozilla::dom