Commit Graph

943 Commits

Author SHA1 Message Date
Phil Ringnalda
8377010e6a Merge m-c to m-i
MozReview-Commit-ID: Ihd0iacfcIW

--HG--
rename : devtools/.eslintrc => devtools/.eslintrc.js
2016-10-18 19:45:02 -07:00
Phil Ringnalda
6c91017f20 Merge m-i to m-c, a=merge
MozReview-Commit-ID: FA9OZyjP59N
2016-10-18 19:36:18 -07:00
Hiroyuki Ikezoe
a0f9171658 Bug 1310605 - Part 4: Drop gRecordPromiseResolvers. r=boris
MozReview-Commit-ID: 7CrVgGJQjRV

--HG--
extra : rebase_source : 789bb90aa4793fc58f0a4befcac72dc10784aff7
2016-10-18 18:45:35 +09:00
Hiroyuki Ikezoe
fa753fd6ca Bug 1310605 - Part 3: Move test case for pseudo element that can be rewritten to synchronous test. r=boris
tree_ordering test can not be moved because the test waits for animationend
event.

createPseudo() were picked from
testing/web-platform/tests/web-animations/testcommon.js .

MozReview-Commit-ID: EZ2sGEgdMFM

--HG--
extra : rebase_source : 1ebf46dd91f42ba75f5711e781d72e77948e6150
2016-10-18 18:44:53 +09:00
Hiroyuki Ikezoe
9df35ab563 Bug 1310605 - Part 2: Move test cases for CSS animation that can be rewriten to synchronus test. r=boris.
All of cleaning up code were dropped. Also some trivial comments were dropped.

Note that test cases can not be rewritten to synchronous test.
* Waiting for events, e.g. transitionend.
 * single_transition
 * single_animation

* Manipulated by style, e.g. style.animationDuraton = "0.5s".
 * single_transition_cancelled_property
 * single_transition_cancelled_value
 * single_transition_cancelled_noninterpolable
 * single_transition_reversed
 * multiple_transitions
 * single_animation_cancelled_name
 * single_animation_cancelled_duration
 * single_animation_cancelled_delay
 * single_animation_cancelled_fill
 * single_animation_cancelled_iteration_count
 * single_animation_change_XXX
 * coalesce_change_cancel

* Falling into a pending state, e.g. play() or pause().
 * finish_from_pause
 * finish_from_pause_pending
 * play
 * play_filling_forwards
 * play_after_finish
 * pause
 * pause_while_pause_pending
 * aborted_pause

MozReview-Commit-ID: 5bTzO7GtEHF

--HG--
extra : rebase_source : 905f5144706e20c743030b4bcff428ef124abfff
2016-10-18 18:44:42 +09:00
Hiroyuki Ikezoe
5b264f1aac Bug 1310605 - Part 1: Rname test_observers_for_script_animation.html to test_observers_for_sync_api.html. r=boris
MozReview-Commit-ID: K9QJgcdcJu8

--HG--
rename : dom/animation/test/chrome/test_observers_for_script_animation.html => dom/animation/test/chrome/test_observers_for_sync_api.html
extra : rebase_source : 76a7e60e2a60eb307874c6c2b6765977c04405ce
2016-10-18 18:05:41 +09:00
Xidorn Quan
00100a750f Bug 1309109 part 3 - Rename ServoDeclarationBlock to RawServoDeclarationBlock. r=heycam
So that the new subclass of DeclarationBlock could just be
ServoDeclarationBlock.

MozReview-Commit-ID: 55KgfmWmmyU

--HG--
extra : source : 27c55355da341fce112b15d966eb9b2fa2c8834b
2016-10-18 15:29:03 +11:00
Nathan Froyd
d1108c1e52 Bug 1311068 - remove InitializerList.h; r=botond
We needed this polyfill for <initializer_list> when some of our C++
standard libraries did not support said header.  They all do now, so the
polyfill is redundant.
2016-10-19 00:33:14 -04:00
Hiroyuki Ikezoe
9d5b7d6fc9 Bug 1223658 - Part 6: Remove Animation::HasInPlayEffect and AnimationEffectReadOnly::IsInPlay. r=birtles
MozReview-Commit-ID: JQ167ol4Ty9

--HG--
extra : rebase_source : 4a2a5090f1af9d39c3143fd4552f43c1fd3efb03
2016-10-14 19:14:12 +09:00
Hiroyuki Ikezoe
ca0f6e0ff5 Bug 1223658 - Part 5: Send animations to compositor even though it's in delay phase. r=birtles
To send animations to compositor in the delay phase we need to
modify Animation::IsPlaying returning true in the delay phase.

Note about background-position-in-delay.html:
After this patch, background-position animation also creates an active layer
from its delay phase.

Also note about test cases in test_animations_omta.html:
After landing bug 1279071, getOMTAStyle() returns the style value only
specified by animations, also in this patch we don't apply any opacity or
transform values in the delay phase, as a result we can't tell animating
value during delay phase on the compositor.

MozReview-Commit-ID: ILYKig3c08d

--HG--
extra : rebase_source : 5715c1f9ec43da3c8374f08cdca82e2ca29fe474
2016-10-14 19:14:12 +09:00
Hiroyuki Ikezoe
c9f76b2935 Bug 1223658 - Part 4: Add a function to check active duration is zero. r=birtles,dholbert
We are going to pass animations to the compositor in before phase but not to
pass when active duration is zero.  To distinguish this state we need a new
function to check that the active duration is zero.

MozReview-Commit-ID: 2Lckmt4LQcV

--HG--
extra : rebase_source : aa059b8c75bcea4ff4c5788aac98d1e17a4a5d7b
2016-10-14 19:14:11 +09:00
Hiroyuki Ikezoe
d8ec730df8 Bug 1223658 - Part 2: Pass delay property to compositor. r=birtles
The check of negative elapsedDuration is basically no longer valid since
animation delay is not factored into start time any more.  But still we have
somtimes met negative elapsedDuration sice we use a previous vsync time stamp
for async animations to make the animations more sync.  This is not a problem
in most cases but makes two reftests intermitent failure because both of them
used steps(1, start), the steps(1, start) composed different results in the
before phase and in the active phase. To avoid this difference this patch
replace the steps(1, start) with steps(1, end).

Once we incorpolate playbackRate into GetCurrentOrPendingStartTime, we don't
need to call AnimationTimeToTimeStamp for deviding delay by playbackRate since
the time passed to AnimationTimeToTimeStamp does not contain delay any more.

MozReview-Commit-ID: IVE2IFfNgm0

--HG--
extra : rebase_source : 7cb42e57067c21451706bd89284016d996dc8b12
2016-10-14 19:14:01 +09:00
Carsten "Tomcat" Book
b474cb6353 merge mozilla-inbound to mozilla-central a=merge 2016-10-14 11:59:12 +02:00
Hiroyuki Ikezoe
db9f210a8c Bug 1283754 - Part 5: Run tests with subtree:true option. r=boris
We should run basically tests with subtree true or false option.

MozReview-Commit-ID: 8HDAnKh7Xq

--HG--
extra : rebase_source : 13d1551240bf68b776df5111c512cd13e248a0ea
2016-10-14 09:34:37 +09:00
Hiroyuki Ikezoe
5e4865cab0 Bug 1283754 - Part 4: Split test cases for script animations which can be re-written to synchronous test in test_animation_observers.html. r=boris
All of the split out test cases were re-written with synchronous API.
Also, cleanup codes in the end of each test cases, e.g. anim.cancel(), were
dropped because we now create a new MutationObserver and a new element for
each test respectively.

MozReview-Commit-ID: 9Bx0OUOU9On

--HG--
extra : rebase_source : c51b9e850bfdc692344012b9176a17083187ab89
2016-10-14 07:58:32 +09:00
Hiroyuki Ikezoe
16b8fd8f57 Bug 1283754 - Part 3: Add setupSynchronousObserver to write synchronouse tests for MutaionObserver. r=boris
MozReview-Commit-ID: 1sV5QHVeEyw

--HG--
extra : rebase_source : 766a282f486a9b68c53771a7d56de3fe659b57ca
2016-10-14 06:52:11 +09:00
Hiroyuki Ikezoe
4e61e83811 Bug 1283754 - Part 2: Replace await_frame() with waitForFrame(). r=boris
MozReview-Commit-ID: 3PhjL7H5qip

--HG--
extra : rebase_source : 222e405e52e8cab709318680151761bc97534d4f
2016-10-14 06:51:48 +09:00
Hiroyuki Ikezoe
4b0ac89265 Bug 1283754 - Part 1: Drop await_timeout() and await_timeout(). r=boris
No one uses these functions.

MozReview-Commit-ID: DLZXQdOzBZA

--HG--
extra : rebase_source : 8471202815f4baf0d0ea911ceb21e21f59800d50
2016-10-14 06:51:37 +09:00
Hiroyuki Ikezoe
ff84f76fce Bug 1278136 - Part 5: Create a stacking context for opacity/transform animations even if it's in delay phase and even if the property is overridden by !important rules. r=birtles
This patch introduces a new functions named HasEffectiveAnimationOfProperty.
This function checks that a given CSS property is overridden by !important
rules.
On the other hand, now KeyframeEffetReadOnly::HasAnimationOfProperty() does
just check that the effect has a given CSS property.  This is used to create
a stacking context because we should create a stacking context for opacity or
transform animations even if the property is overridden by !important rules.

Note about no-stacking-context-(opacity|transform)-removing-animation-in-delay.html
Before this patch we don't create any stacking context for animations overridden
by !important rules, but after this patch we do create a stacking context for
such animations.  As a result, in the test case we did paint a stacking context
in the first rAF callback and then in the second rAF callback we did clear the
painted stacking context. Unfortunately sometimes the second rAF callback was
called prior to clear the stacking context on the compositor because of
compositor delay. To avoid this situation, we have to wait for MozAfterPaint
instead of rAF callback.

MozReview-Commit-ID: AG1Y0IgoB3U
2016-10-13 16:54:25 +09:00
Hiroyuki Ikezoe
2653be237d Bug 1307295 - Do not request restyle for animations on orphaned element. r=birtles
Also we skip to update the cascade and compose style for orphaned elements if
the animation reqeusted restyle but the target element has been removed from
document before a subsequent tick.

MozReview-Commit-ID: 3I6uyvuSPO5

--HG--
extra : rebase_source : 817b123a4e1b64c89cfbe796073d88410792bf84
2016-10-12 15:58:53 +09:00
Brian Birtles
b813bcffe5 Bug 1302973 - Store timelines on document; r=smaug
MozReview-Commit-ID: KHtAq0VgPZW

--HG--
extra : rebase_source : 7daa2a4202f489308981e9cff02e2d7f3bf92c1e
2016-10-09 22:36:56 +09:00
Hiroyuki Ikezoe
22ccc8580a Bug 1308369 - Use longer duration to avoid intermittent failure. r=birtles
MozReview-Commit-ID: 1PVKWIPm23B

--HG--
extra : rebase_source : a38ca5ec5651842e65ef3866d5f2bfb83c904cf1
2016-10-07 10:48:56 +09:00
Sebastian Hengst
256c9cf9ff Merge mozilla-central to autoland 2016-10-05 17:15:26 +02:00
Brian Birtles
d70d0c2bd5 Bug 1302949 - Skip calling CalculateCumulativeChangeHint; r=heycam
There are a few pieces missing before we can do this with Servo. Since this
only enables an optimization for off-screen animations we should skip this
for now so it doesn't block animations from running.

MozReview-Commit-ID: GecHWQZYxpK

--HG--
extra : rebase_source : c0330b104afb4b970569c0cb650315e633b7e796
extra : histedit_source : db91b37d3370c9b766976b42b0701f6e0ec56159
2016-09-16 11:35:59 +09:00
Brian Birtles
33c4f00dda Bug 1302949 - Compute StyleAnimationValue objects from servo declaration blocks; r=heycam
MozReview-Commit-ID: 6Am1FRC9uV0

--HG--
extra : rebase_source : 570ed28437ecaa22ac7571a9b47388e8abd0cb96
extra : histedit_source : 04443b7b7d89296b8498a5e657b1e7eeb3105dc8
2016-09-16 11:08:44 +09:00
Brian Birtles
620aaf6580 Bug 1302949 - Parse animation values with Servo backend; r=heycam
MozReview-Commit-ID: 4UW1fIIjvdi

--HG--
extra : rebase_source : edeaec568446897c5005640d63390ec5bf3751d2
extra : histedit_source : e7498ae2f573a3766fbf7686f1c6cdcc64ca3280
2016-09-16 10:24:05 +09:00
Brian Birtles
4f94caf471 Bug 1302949 - Skip invalid animation values; r=heycam
For animation values parsed using the Servo backend that are invalid,
we simply end up with an empty declaration block (and we fill in |mValue|
with the string so we can later serialize it).

MozReview-Commit-ID: 6ruwJGVzRla

--HG--
extra : rebase_source : 83e415febf10cf90631fd7a1b447921822a44bc0
2016-09-16 09:58:35 +09:00
Brian Birtles
a803b5ac49 Bug 1302949 - Serialize specified keyframe values; r=heycam
MozReview-Commit-ID: 9BSkci1kqU6

--HG--
extra : rebase_source : b0532e144b3208d79e1e26ce3bff9a20c896abad
2016-09-16 09:26:48 +09:00
Brian Birtles
8de1442b19 Bug 1302949 - Store Servo declaration block in keyframe values; r=heycam
MozReview-Commit-ID: I09XpkU8bT0

--HG--
extra : rebase_source : 2403ee41f8a71261705eca0f6e5fd250dfc5c007
2016-09-15 16:26:07 +09:00
Hiroyuki Ikezoe
8dbb9e3b52 Bug 1304922 - Part 10: Drop non-const version of KeyframeEffectReadOnly::Properties(). r=birtles
We no longer modify AnimationProperty outside KeyframeEffectReadOnly class.

MozReview-Commit-ID: 1YJglDhuS1w

--HG--
extra : rebase_source : 59ac4ff0fb34f93df7f28763bd207615790ec390
2016-10-05 14:54:01 +09:00
Hiroyuki Ikezoe
06298d3994 Bug 1304922 - Part 9: Early return from FindAnimationsForCompositor() if we have neither transitions and animations level effect for a given property. r=birtles
MozReview-Commit-ID: 8BZkKA2Jcs1

--HG--
extra : rebase_source : cc3d2cdb6dd183240c14e953d04e455c9aaf6c2a
2016-10-05 14:53:58 +09:00
Hiroyuki Ikezoe
989299c9fa Bug 1304922 - Part 8: Add a test case to check we don't request restyle for layer when cascading result for the property not running on the compositor is changed r=birtles
Actually this test case does not pass for now, since we don't throttle
animation properties running on the main thread overridden by important
rules.  But after part 6, we don't request restyle layer in the case
when the cascading result of the property which is not running on the
compositor is changed, so this test case is meaningful.

MozReview-Commit-ID: eraPs9WAe9

--HG--
extra : rebase_source : a0d6f6629299fbbad59bcabeae3b8c48b7c7ce1a
2016-10-05 14:53:54 +09:00
Hiroyuki Ikezoe
f5b0e6e0b3 Bug 1304922 - Part 7: Drop mWinsInCascade. r=birtles
MozReview-Commit-ID: 1q4glZenZNa

--HG--
extra : rebase_source : 7855710197758505a195f1cf7063e74cb5493534
2016-10-05 14:48:05 +09:00
Hiroyuki Ikezoe
c354bf91e5 Bug 1304922 - Part 6: Introduce mPropertiesWithImportantRules and mPropertiesForAnimationsLevel and use it to detect conditions that we need to update layers. r=birtles
This patch also makes composite order lowest to highest, as a result we also
need to replace mWinsInCascade checks with the the properties.
The mWinsInCascade membed itself will be removed in a subsequent patch.

Now we call RequestRestyle(Layer) respectively for transition and animation,
so a test case in test_restyles.html works as expected.

And now lower-priority animations are also sent to the compositor so this patch
fixed some tests in test_running_on_compositor.html and
test_animation_performance_warning.html

MozReview-Commit-ID: BchUsJbmatg

--HG--
extra : rebase_source : ff295aecb08bb672ac5f02e26e37a4ea4f3eb7c0
2016-10-05 14:42:56 +09:00
Hiroyuki Ikezoe
6989f07b4c Bug 1304922 - Part 5: AnimValuesStyleRule::AddValue replaces the existence entry's mValue. r=birtles
MozReview-Commit-ID: GqpUsXUZaHy

--HG--
extra : rebase_source : 61607d0e0eb2d5916d959fb65f490e7ec91aefc4
2016-10-05 14:26:44 +09:00
Hiroyuki Ikezoe
d087a2c911 Bug 1304922 - Part 4: Add EffectSet::Count(). r=birtles
MozReview-Commit-ID: HqXNf4938Rb

--HG--
extra : rebase_source : f95a7974c76657acb780d5798106698a934e309f
2016-10-05 14:26:32 +09:00
Hiroyuki Ikezoe
a85f4d14cd Bug 1304922 - Part 2: Sort animation array before sending animations to the compositor. r=birtles
The result animatons of FindAnimationsForCompositor() should be sorted
by composite order because SampleAnimations() on the compositor expects
the animations are sorted by the order.

MozReview-Commit-ID: 4eI4EldFVcu

--HG--
extra : rebase_source : eabbea6aa54d1637b8baba8b6ac4959a1e6025b6
2016-10-05 14:26:25 +09:00
Carsten "Tomcat" Book
5b45193594 merge mozilla-inbound to mozilla-central a=merge 2016-09-29 11:44:58 +02:00
Mantaroh Yoshinaga
32ca318289 Bug 1302038 part 2 - Add DocumentTimelineOptions dictionary. r=birtles,smaug
MozReview-Commit-ID: 6i0PafTmFFo

--HG--
extra : rebase_source : 7c572ed3a94eda250928019b7403ab6b28eafc0b
2016-09-28 16:56:24 +09:00
Mantaroh Yoshinaga
3cccb89f5d Bug 1302007 part 3 - Add test of changing an ancestor's display property. r=hiro
MozReview-Commit-ID: BZHW77ECfrZ
2016-09-28 16:16:12 +09:00
Boris Chiou
cd6c2e6bff Bug 1304805 - Make spacing, iteration composite and effect composite work if the caller is chrome. r=hiro
MozReview-Commit-ID: 30BOUA8QPh8

--HG--
extra : rebase_source : 21af58ad6f27f47404affe2f87fb9a426f01b496
2016-09-23 14:31:34 +08:00
Hiroyuki Ikezoe
7de848f9c8 Bug 1294651 - Don't apply iterationComposite value if the preference for Web Animations API is not enabled. r=boris
MozReview-Commit-ID: 5ckKyDSBv3S

--HG--
extra : rebase_source : 5bf069db17cecac17035bd2c9c925abc4c4e5f2c
2016-09-21 19:17:18 +09:00
Hiroyuki Ikezoe
d41794cec3 Bug 1303793 - Part 2: Run test which uses the Web Animations API in an iframe with the Web Animations API preference. r=birtles
MozReview-Commit-ID: 233vs8Aiw5j

--HG--
rename : dom/animation/test/mozilla/test_set-easing.html => dom/animation/test/mozilla/file_set-easing.html
extra : rebase_source : 13653c93c20c987121773546f71496a30ccd061e
2016-09-20 16:54:09 +09:00
Hiroyuki Ikezoe
e0f666d6eb Bug 1303793 - Part 1: Use testharness.js instead of SimpleTest.js to run the test in an iframe easily. r=birtles
MozReview-Commit-ID: FlT34Npg8uH

--HG--
extra : rebase_source : 6046b27aeb51ca51a965dd5ca990079ab20208a2
2016-09-20 16:53:33 +09:00
Jan de Mooij
a53986bf29 Bug 1302448 part 1 - Rename CycleCollectedJSRuntime to CycleCollectedJSContext. r=mccr8
--HG--
rename : xpcom/base/CycleCollectedJSRuntime.cpp => xpcom/base/CycleCollectedJSContext.cpp
rename : xpcom/base/CycleCollectedJSRuntime.h => xpcom/base/CycleCollectedJSContext.h
extra : rebase_source : 075214b5057f151520926715b6154e99ae80a0b3
2016-09-14 15:47:32 +02:00
Mantaroh Yoshinaga
02a6ea7d52 Bug 1298554 - Remove the animation.id mochitest. r=birtles
MozReview-Commit-ID: 8VTAl9WO7eF

--HG--
extra : rebase_source : b9f7f257a7509ad26d839644e77b2afc7877cd2f
2016-09-12 10:23:10 +09:00
Mantaroh Yoshinaga
01b448239f Bug 1302007 part 2 - Add the test of cancelling the transition when setting display='none'. r=birtles
MozReview-Commit-ID: B6avXxpEpDw

--HG--
extra : rebase_source : 5994b803e7d41e43f53cdc38a473f518ca528ca7
2016-09-13 16:59:52 +09:00
Mantaroh Yoshinaga
4bb206baf4 Bug 1302007 part 1 - Use the promise_test in transition cancel tests. r=birtles
MozReview-Commit-ID: 7cXfwkT7kaH

--HG--
extra : rebase_source : c19372eb265fbc9d0869ac8a9ae41e05f789d5ce
2016-09-12 12:11:15 +09:00
Hiroyuki Ikezoe
5f5f888c4b Bug 1216843 - Part 15: Update styles when current iteration changed. r=birtles
MozReview-Commit-ID: 33JtZplxiAz
2016-09-13 11:48:45 +09:00
Hiroyuki Ikezoe
f98523cf02 Bug 1216843 - Part 2: Implement effect iteration composition. r=birtles, r=smaug
MozReview-Commit-ID: 6u7WtXwL3y3
2016-09-13 11:48:44 +09:00