Commit Graph

83 Commits

Author SHA1 Message Date
Hiroyuki Ikezoe
6d51bed6a3 Bug 1150808 - Implement Animation.reverse(). r=smaug r=birtles 2015-07-09 22:54:00 +02:00
Brian Birtles
283479d5e6 Bug 1150810 part 16 - Add tests for AnimationTimeline.getAnimations(); r=jwatt 2015-06-15 11:05:43 +09:00
Brian Birtles
17c789de59 Bug 1171817 part 9 - Add override of HasLowerCompositeOrderThan for CSS animations; r=dbaron
This patch also extends the tests for Element.getAnimations(). It doesn't
actually exercise the code added (it's not actually called yet since it doesn't
need to be for Element.getAnimations) but simply provides a useful regression
and interop test.
2015-06-09 11:13:54 +09:00
Brian Birtles
afbefeeb78 Bug 1179111 part 1 - Implement CSSAnimation.animationName; r=smaug, r=jwatt 2015-07-01 12:15:42 +09:00
Brian Birtles
1b15f2809c Bug 1178186 part 2 - Add tests for CSSAnimation and CSSTransition interfaces; r=jwatt 2015-06-30 10:00:56 +09:00
Carsten "Tomcat" Book
76b5b4f700 Backed out changeset 1027311cd1bb (bug 1178186) 2015-07-07 14:21:49 +02:00
Carsten "Tomcat" Book
1e5c63cf06 Backed out changeset 144276fd40a1 (bug 1179111) 2015-07-07 14:21:46 +02:00
Jonathan Watt
f2cf1841c3 Bug 1127380 - Tests for Animation.playbackRate. r=bbirtles 2015-07-06 22:11:00 +02:00
Brian Birtles
3e5eb82d26 Bug 1179111 part 1 - Implement CSSAnimation.animationName; r=smaug, r=jwatt 2015-07-01 12:15:42 +09:00
Brian Birtles
44079bfff9 Bug 1178186 part 2 - Add tests for CSSAnimation and CSSTransition interfaces; r=jwatt 2015-06-30 10:00:56 +09:00
Carsten "Tomcat" Book
24c8670d99 Backed out changeset 04420ed3c036 (bug 1127380) for test failures in test_animation-playbackrate.html 2015-07-06 15:40:14 +02:00
Jonathan Watt
a8d83a0044 Bug 1127380 - Tests for Animation.playbackRate. r=hiro 2015-07-06 00:22:00 +02:00
Brian Birtles
4a5b653291 Bug 1166164 part 8 - Drop a few references to players; r=jwatt 2015-05-19 15:37:39 +09:00
Brian Birtles
e6ebfda46b Bug 1166164 part 6 - Make pausing from idle set the current time; r=jwatt, r=smaug
As proposed:

  https://lists.w3.org/Archives/Public/public-fx/2015AprJun/0013.html (item g)

And agreed upon here:

  https://lists.w3.org/Archives/Public/public-fx/2015AprJun/0031.html
2015-05-19 14:55:26 +09:00
Brian Birtles
e3945987e3 Bug 1166164 part 5 - Make play() throw when it should seek to the end of an infinite effect; r=jwatt, r=smaug 2015-05-19 14:00:48 +09:00
Brian Birtles
a3b71488c1 Bug 1166164 part 4 - Make finished promise not resolve when paused; r=jwatt
As resolved, https://lists.w3.org/Archives/Public/public-fx/2015AprJun/0038.html
item 2.
2015-05-19 08:51:13 +09:00
Brian Birtles
b7b7237192 Bug 1166164 part 3 - Resolve start time on finish(); r=jwatt
We have already resolved to make calling Finish() clear the pause state (see
https://lists.w3.org/Archives/Public/public-fx/2015AprJun/0038.html, item 2).
Doing that involves resolving the start time when the animation is paused.

Furthermore, as a separate change, we resolved to make the finished promise not
resolve when the animation is paused. That suggests making UpdateFinishedState()
only resolve the finished promise when PlayState() == Finished rather than using
IsFinished() which returns true even if the animation is paused.

However, if we compare PlayState() == Finished in UpdateFinishedState() then we
will *not* resolve the finished promise when the animation is play-pending since
PlayState() == Pending in that case (pause-pending is ok since the call to
SetCurrentTime will cause a transition to the Paused state). Furthermore, the
existing call to cancel the pending play task will effectively leave this
animation forever pending. Hence, in this patch we unconditionally fill in the
start time.
2015-05-19 10:08:46 +09:00
Brian Birtles
817f58d048 Bug 1166164 part 1 - Make setting the current time complete a pending pause, not abort it; r=jwatt
The point of making pausing async is to allow time to sync up the current time
with the compositor. Setting the current time manually should simply force it to
the specified time and complete the pause action, not abort it. (We do a similar
thing for a pending play. For a pending play we're waiting to establish
a suitable start time. Manually setting the start time in that case simply
forces the start time to the specified time and completes the play operation.)
2015-05-18 11:41:19 +09:00
Brian Birtles
ec2b66d21a Bug 1161320 - Fix conflict between finishing and aborting a pause; r=jwatt
Animation::ResumeAt contains an assertion that, when we exit the play-pending
state, checks we either have a resolved start time or a resolved hold time.

That's normally true but if we are aborting a pause on animation that is
finished we can end up with a resolved start time (since we don't clear the
start time when we're aborting a pause) and a resolved hold time (either
because the regular finishing behavior set one, or, because play() applied
auto-rewinding behavior and set it).

In that case we should actually respect the hold time and update the start time
when resuming the animation. However, ResumeAt won't update the start time if it
is already set.

This patch fixes that by clearing the start time in DoPlay in the case where we
are aborting a pause and have a hold time.
2015-05-08 16:17:13 +09:00
Boris Zbarsky
83864e6984 Bug 1159743. Stop forcing the dom.animations-api.core.enabled preference on in the test harness. r=birtles 2015-04-30 14:25:03 -04:00
Wes Kocher
143b05ecba Backed out changeset 4d85a02e9c28 (bug 1159743) under suspicion of breaking animation tests CLOSED TREE 2015-04-30 15:25:58 -07:00
Boris Zbarsky
fa14fc0c65 Bug 1159743. Stop forcing the dom.animations-api.core.enabled preference on in the test harness. r=birtles 2015-04-30 14:25:03 -04:00
Brian Birtles
0f85818723 Bug 1150807 part 5 - Tests for Animation.cancel(); r=jwatt 2015-04-27 08:53:19 +09:00
Jonathan Watt
3d303976e2 Bug 1157074 - Fix Web Animations' Web Platform tests to make them use step_func when they should. r=birtles 2015-04-20 14:22:29 +01:00
Jonathan Watt
78b0ae83bc Bug 1150064, part 2 - Add Web Platform tests for the Animation.finish() method. r=birtles 2015-04-16 17:16:01 +01:00
Jonathan Watt
effb929caa Bug 1150054, part 2 - Convert the Web Animations tests to use the new EventWatcher constructor from upstream. r=Ms2ger 2015-04-14 20:54:10 +01:00
Brian Birtles
0279c5e3db Bug 1154615 part 9 - Rename test files; r=jwatt 2015-04-21 10:22:10 +09:00
Brian Birtles
a474c0c6c3 Bug 1153734 part 3 - Rename AnimationPlayer.source to AnimationPlayer.effect; r=smaug
There are still some other references to "source" in AnimationPlayer such as
HasInPlayerSource and UpdateSourceContent. These are renamed in a subsequent
patch (that doesn't require DOM peer review).
2015-04-15 08:48:21 +09:00
Brian Birtles
b23bc79d92 Bug 1153734 part 2 - Rename Animation to KeyframeEffectReadonly; r=smaug
We define KeyframeEffectReadonly in KeyframeEffect.cpp since Web Animations also
defines KeyframeEffect and when we come to implement that I expect we'll define
it in the same class, maybe even using the same object.

This patch also adds a few missing includes in places where
KeyframeEffectReadonly is used so that we're not just cargo-culting it in.
2015-04-15 08:48:21 +09:00
Brian Birtles
f3bbfe1012 Bug 1153734 part 1 - Remove AnimationEffect; r=smaug
Most of this is fairly obvious. However, the addition of 'override' to
ElementPropertyTransition::Name() is not strictly necessary. It was simply added
because while making these changes I accidentally dropped the 'virtual' keyword
from the method in the superclass and the compiler didn't complain. Adding this
will hopefully make it harder to create the same bug in the future.
2015-04-15 08:48:20 +09:00
Jonathan Watt
517a557168 Bug 1149832 - Replace the Web Animations test helper waitForTwoAnimationFrames() with a helper that takes a frame count. r=birtles 2015-03-31 23:27:19 +01:00
Brian Birtles
2ef7d56b79 Bug 1109390 part 28 - Add tests for the AnimationPlayer.startTime when pausing asynchronously; r=jwatt 2015-04-01 12:23:25 +09:00
Brian Birtles
0c54411e56 Bug 1109390 part 27 - Add further test to test_animations-pausing.html for cancelling a pause by setting the current time; r=jwatt 2015-04-01 12:23:25 +09:00
Brian Birtles
8a5357b1d9 Bug 1109390 part 26 - Add further tests for ready promise when pausing; r=jwatt 2015-04-01 12:23:25 +09:00
Brian Birtles
637d476ebd Bug 1109390 part 25 - Make pausing asynchronous
This patch (finally) puts pausing animations in the pending player map so that
they are resolved asynchronously.

Since this changes the pausing behavior this patch updates a number of tests so
that they continue to pass.
2015-04-01 12:23:25 +09:00
Jonathan Watt
c7680aa2e0 Bug 1145246, part 7 - Add more CSS animation tests to check currentTime clamping. r=birtles 2015-03-23 13:23:19 +00:00
Jonathan Watt
1092ee7947 Bug 1145246, part 2 - Update Web Animations code and tests for the rename of Animatable.getAnimationPlayers() to Animatable.getAnimations(). r=birtles 2015-03-20 18:20:37 +00:00
Jonathan Watt
a068759611 Bug 1074630, part 2 - CSS animations tests for Web Animations finishing behavior. r=birtles 2015-03-18 13:21:28 +00:00
Brian Birtles
02f1d42925 Bug 1109390 part 5 - Adjust tests to better handle asynchronous pausing; r=jwatt
A number of animation tests assume that pausing happens instantaneously. This
patch adjust many of those tests so that they will continue to work when
pausing happens asynchronously. In many cases this is possible because we
know the ready promise on AnimationPlayer (soon to be Animation) objects will
be resolved so we can wait on it and it will resolve immediately now, but when
asynchronous pausing is introduced the test the promise won't resolve until
after the pause operation is complete.

There are some tests that can't be so easily adjusted and we will have to fix
these at the same time as we turn on async pausing. However, taking care of
this set of tests now should reduce the size of subsequent patches in this
series.
2015-03-27 15:56:44 +09:00
Brian Birtles
d42d1300e5 Bug 1109390 part 2 - Remove some unneeded startTime tests; r=jwatt
Now that we have separate tests for checking the initial state of startTime we
can remove these checks from tests for setting the startTime.

Also, while we're at it, we needn't check the playState and animationPlayState
since these should be covered by other tests.
2015-03-24 09:21:08 +09:00
Brian Birtles
ac46cd98f0 Bug 1109390 part 1 - Add tests for getting the startTime; r=jwatt 2015-03-24 09:21:07 +09:00
Jonathan Watt
21e29ab59a Bug 1072037, part 2 - Tests for the effect of setting CSS animation's AnimationPlayer.currentTime. r=birtles 2015-03-09 16:50:39 +00:00
Jonathan Watt
1583ee9f79 Bug 1070744 - Backout c482c88b0393 and c5d5202c3d72 for being attributed to this bug instead of bug 1072037. r=me, and faking r=smaug since backout 2015-03-11 15:28:07 +00:00
Jonathan Watt
4f3bdf1793 Bug 1070744, part 2 - Tests for the effect of setting CSS animation's AnimationPlayer.currentTime. r=birtles 2015-03-09 16:50:39 +00:00
Jonathan Watt
b92228f7a4 Bug 1141710, part 14 - Get rid of the checks at 90% through the active duration. r=birtles 2015-03-05 13:07:20 +00:00
Jonathan Watt
477764a146 Bug 1141710, part 13 - Wrap all lines at the 80 column mark. r=birtles 2015-03-05 13:07:19 +00:00
Jonathan Watt
1587da6407 Bug 1141710, part 12 - Check that the hold time is updated when the startTime is set to null. r=birtles 2015-03-11 07:19:44 +00:00
Jonathan Watt
e033d2f111 Bug 1141710, part 11 - Assert that seeking over the before and active phases worked. r=birtles 2015-03-05 13:07:19 +00:00
Jonathan Watt
dfbdf63240 Bug 1141710, part 10 - Update some assertion text and comments. r=birtles 2015-03-05 13:07:19 +00:00
Jonathan Watt
a37a742c11 Bug 1141710, part 9 - Get the timeline from the player instead of from the document. r=dholbert 2015-03-04 02:49:44 +00:00