Title: [233584] trunk
- Revision
- 233584
- Author
- [email protected]
- Date
- 2018-07-06 11:37:21 -0700 (Fri, 06 Jul 2018)
Log Message
[Web Animations] Make WPT test at interfaces/Animation/finished.html pass reliably
https://bugs.webkit.org/show_bug.cgi?id=186497
<rdar://problem/41000193>
Reviewed by Dean Jackson.
LayoutTests/imported/w3c:
Mark WPT progression.
* web-platform-tests/web-animations/interfaces/Animation/finished-expected.txt:
Source/WebCore:
We need to ensure the finished state is updated as a result of any timing property changing.
* animation/AnimationEffectReadOnly.cpp:
(WebCore::AnimationEffectReadOnly::timingDidChange):
* animation/WebAnimation.cpp:
(WebCore::WebAnimation::effectTimingPropertiesDidChange):
* animation/WebAnimation.h:
Modified Paths
Diff
Modified: trunk/LayoutTests/imported/w3c/ChangeLog (233583 => 233584)
--- trunk/LayoutTests/imported/w3c/ChangeLog 2018-07-06 18:31:12 UTC (rev 233583)
+++ trunk/LayoutTests/imported/w3c/ChangeLog 2018-07-06 18:37:21 UTC (rev 233584)
@@ -1,5 +1,17 @@
2018-07-05 Antoine Quint <[email protected]>
+ [Web Animations] Make WPT test at interfaces/Animation/finished.html pass reliably
+ https://bugs.webkit.org/show_bug.cgi?id=186497
+ <rdar://problem/41000193>
+
+ Reviewed by Dean Jackson.
+
+ Mark WPT progression.
+
+ * web-platform-tests/web-animations/interfaces/Animation/finished-expected.txt:
+
+2018-07-05 Antoine Quint <[email protected]>
+
[Web Animations] The ready promise should initially be resolved
https://bugs.webkit.org/show_bug.cgi?id=187341
<rdar://problem/41844711>
Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/interfaces/Animation/finished-expected.txt (233583 => 233584)
--- trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/interfaces/Animation/finished-expected.txt 2018-07-06 18:31:12 UTC (rev 233583)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/interfaces/Animation/finished-expected.txt 2018-07-06 18:37:21 UTC (rev 233584)
@@ -8,7 +8,7 @@
PASS The finished promise is fulfilled with its Animation
PASS finished promise is rejected when an animation is canceled by calling cancel()
PASS canceling an already-finished animation replaces the finished promise
-FAIL Test finished promise changes for animation duration changes assert_false: shortening of the animation duration should resolve the finished promise expected false got true
+PASS Test finished promise changes for animation duration changes
PASS Test finished promise changes when playbackRate == 0
PASS Test finished promise resolves when reaching to the natural boundary.
PASS Test finished promise changes when a prior finished promise resolved and the animation falls out finished state
Modified: trunk/Source/WebCore/ChangeLog (233583 => 233584)
--- trunk/Source/WebCore/ChangeLog 2018-07-06 18:31:12 UTC (rev 233583)
+++ trunk/Source/WebCore/ChangeLog 2018-07-06 18:37:21 UTC (rev 233584)
@@ -1,3 +1,19 @@
+2018-07-05 Antoine Quint <[email protected]>
+
+ [Web Animations] Make WPT test at interfaces/Animation/finished.html pass reliably
+ https://bugs.webkit.org/show_bug.cgi?id=186497
+ <rdar://problem/41000193>
+
+ Reviewed by Dean Jackson.
+
+ We need to ensure the finished state is updated as a result of any timing property changing.
+
+ * animation/AnimationEffectReadOnly.cpp:
+ (WebCore::AnimationEffectReadOnly::timingDidChange):
+ * animation/WebAnimation.cpp:
+ (WebCore::WebAnimation::effectTimingPropertiesDidChange):
+ * animation/WebAnimation.h:
+
2018-07-06 Antoine Quint <[email protected]>
[Web Animations] Using a Web Animation leaks the Document
Modified: trunk/Source/WebCore/animation/AnimationEffectReadOnly.cpp (233583 => 233584)
--- trunk/Source/WebCore/animation/AnimationEffectReadOnly.cpp 2018-07-06 18:31:12 UTC (rev 233583)
+++ trunk/Source/WebCore/animation/AnimationEffectReadOnly.cpp 2018-07-06 18:37:21 UTC (rev 233584)
@@ -48,7 +48,7 @@
void AnimationEffectReadOnly::timingDidChange()
{
if (m_animation)
- m_animation->timingModelDidChange();
+ m_animation->effectTimingPropertiesDidChange();
}
std::optional<Seconds> AnimationEffectReadOnly::localTime() const
Modified: trunk/Source/WebCore/animation/WebAnimation.cpp (233583 => 233584)
--- trunk/Source/WebCore/animation/WebAnimation.cpp 2018-07-06 18:31:12 UTC (rev 233583)
+++ trunk/Source/WebCore/animation/WebAnimation.cpp 2018-07-06 18:37:21 UTC (rev 233584)
@@ -90,6 +90,12 @@
--m_suspendCount;
}
+void WebAnimation::effectTimingPropertiesDidChange()
+{
+ updateFinishedState(DidSeek::No, SynchronouslyNotify::Yes);
+ timingModelDidChange();
+}
+
void WebAnimation::timingModelDidChange()
{
if (!isEffectInvalidationSuspended() && m_effect)
Modified: trunk/Source/WebCore/animation/WebAnimation.h (233583 => 233584)
--- trunk/Source/WebCore/animation/WebAnimation.h 2018-07-06 18:31:12 UTC (rev 233583)
+++ trunk/Source/WebCore/animation/WebAnimation.h 2018-07-06 18:37:21 UTC (rev 233584)
@@ -112,6 +112,7 @@
void applyPendingAcceleratedActions();
void timingModelDidChange();
+ void effectTimingPropertiesDidChange();
void suspendEffectInvalidation();
void unsuspendEffectInvalidation();
void setSuspended(bool);
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes