REGRESSION (r243121): Load event should not be fired while animating the 'externalRes...
authorsaid@apple.com <said@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 6 Jun 2019 21:56:55 +0000 (21:56 +0000)
committersaid@apple.com <said@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 6 Jun 2019 21:56:55 +0000 (21:56 +0000)
commite47c511c786705e05c6032941549e8fd8dd3a06b
tree7ad9230026fea8221a5e6e53acfafe31f545cb1a
parent030bb86d16165e6fcc1d80c1e40e599064b3c1b8
REGRESSION (r243121): Load event should not be fired while animating the 'externalResourcesRequired' attribute
https://bugs.webkit.org/show_bug.cgi?id=198576

Reviewed by Simon Fraser.

Source/WebCore:

Firing the load event should only happen when dynamic update changes the
attribute 'externalResourcesRequired'. Animating this attribute should
not fire the load event.

When stopping the animations, applyAnimatedPropertyChange() should be
called first then stopAnimation() is called second. The target element
should know that its svgAttributeChanged() is called because of animating
the attribute. So it can differentiate this case from the dynamic update.

Test: svg/animations/animate-externalResourcesRequired-no-load-event.html

* svg/SVGExternalResourcesRequired.cpp:
(WebCore::SVGExternalResourcesRequired::svgAttributeChanged):
* svg/properties/SVGAnimatedPropertyAnimator.h:

LayoutTests:

* svg/animations/animate-externalResourcesRequired-no-load-event-expected.txt: Added.
* svg/animations/animate-externalResourcesRequired-no-load-event.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@246170 268f45cc-cd09-0410-ab3c-d52691b4dbfc
LayoutTests/ChangeLog
LayoutTests/svg/animations/animate-externalResourcesRequired-no-load-event-expected.txt [new file with mode: 0644]
LayoutTests/svg/animations/animate-externalResourcesRequired-no-load-event.html [new file with mode: 0644]
Source/WebCore/ChangeLog
Source/WebCore/svg/SVGExternalResourcesRequired.cpp
Source/WebCore/svg/properties/SVGAnimatedPropertyAnimator.h