Граф коммитов

1000 Коммитов

Автор SHA1 Сообщение Дата
Boris Zbarsky 59f74104a6 Bug 1321879 part 2. Stop using IsCallerChrome() in animations API. r=birtles 2016-12-06 23:47:23 -10:00
Brian Birtles 28b0b81256 Bug 1301305 - Add tests for transform animations synchronized with geometric animations: r=hiro
MozReview-Commit-ID: Ay7xqfyW0N2

--HG--
extra : rebase_source : ec757beec11a107272e69ab40323fac4e3980911
extra : histedit_source : 05086a0b20003d28a689c5f7be040e3b9cd569f8
2016-12-05 21:56:05 -10:00
Brian Birtles 3dba0a16a9 Bug 1301305 - Notify animations when they should synchronize with geometric animations; r=hiro
MozReview-Commit-ID: 9Ploi5UwseA

--HG--
extra : rebase_source : 64322a0166d97b85ba3e4d7f752c8501774b77ef
extra : histedit_source : ba6eea45f2e975fad8ab98e73cf1d42499567cbf
2016-12-02 10:21:11 +09:00
Brian Birtles 823fa40439 Bug 1301305 - Extend PendingAnimationTracker to mark play-pending animations if there are geometric animations starting at the same time; r=hiro
The approach here is to lazily check if we have such animations. This allows
animations to be modified after being added to the pending animation tracker
(but not after HasPlayPendingGeometricAnimations is called since we cache the
result at that point) and avoids poor performance when calling
RemovePlayPending.

MozReview-Commit-ID: LRLpCRnzvw

--HG--
extra : rebase_source : 59d2fea0458f833a97a3b32413930f9970c7eddb
extra : histedit_source : afbdb4148c21638160c3d2a3d57db71b07180862
2016-12-02 10:10:44 +09:00
Brian Birtles ca512d3518 Bug 1301305 - Add a member to track if an animation needs to be synchronized with geometric animations or not; r=hiro
Note that in this patch, the mSyncWithGeometricAnimations member is never set
to true since no one calls NotifyGeometricAnimationsStartingThisFrame yet.

MozReview-Commit-ID: GSTQmfkSdoy

--HG--
extra : rebase_source : 1304cdf678095f2eeaa32588b92c0531e8c64fcd
extra : histedit_source : bc25fc10a2451121a2b9fec247db3f92965e9b5b
2016-12-02 10:19:10 +09:00
Brian Birtles fab887e2db Bug 1301305 - Factor out check for main-thread synchronization to a method on Animation; r=hiro
This should be easier to read and provide us a convenient place to check for
other cases where we need to synchronize with the main thread (such as the
change introduced in this bug where we synchronize with other animations
started at the same time).

MozReview-Commit-ID: 8iuA7P4ycwM

--HG--
extra : rebase_source : 60a706d51897a0522794cd140734ad7158f4ccd6
extra : histedit_source : cbd0849fcb9077afaf3d2cd3f168201ddb2bf7a4
2016-12-02 10:13:06 +09:00
Brian Birtles 33786b40e1 Bug 1301305 - Add AnimationEffectReadOnly::AffectsGeometry() helper to identify effects that animate geometric properties; r=hiro
MozReview-Commit-ID: 7Q6wvm7ddxy

--HG--
extra : rebase_source : 6b2a719c0c9d744d6204b8cff50efe21f5940e2d
extra : histedit_source : 1cfbe1585c76aa500f8066b99c0d1d438018d400
2016-12-02 10:04:08 +09:00
Brian Birtles b34ecd0f35 Bug 1301305 - Add a performance warning type for transform animations that should be synchronized with geometric animations; r=hiro, r=flod
This patch adds a new performance warning type for the case when we start
a transform animation at the same time as an animation that includes a
geometric property. In that case we run the transform animation on the main
thread so that it is synchronized with the geometric animation (which we can
only run on the main thread).

This differs from CompositorAnimationWarningTransformWithGeometricProperties
in that this applies across different elements whilst the existing warning
only covers the case when the same animation animates both transform and
geometric properties.

MozReview-Commit-ID: EcOMo4VDAYY

--HG--
extra : rebase_source : b4bbc3e4ffa69d0d741fe6d67aba0349b9325b3e
extra : histedit_source : 9fd1b33e8776e270241cde40f1905e74fdfcb630
2016-12-02 10:00:51 +09:00
Brian Birtles 005433850d Bug 1301305 - Expand the set of geometric properties to include margin and padding properties; r=hiro
If margin or padding is being animated then we should synchronize with transform
animations.

Originally I included the border-*-width properties in this set. However
I removed them because:

1. Generally animations of border-width are more subtle and it won't be
   noticeable if they are not synchronized with transform animations.

2. If authors animate the border shorthand (e.g. border: 1px blue -> 1px black)
   we will end up interpolating each of the longhands (including the widths
   despite there being no change) and yet such an animation does not really need
   to be synchronized with transform animations. Until we add code to workaround
   that it seems best to ignore border properties.

I have verified that the tests added in this patch fail without the code changes
in this patch.

MozReview-Commit-ID: AJiDAvTpFuN

--HG--
extra : rebase_source : 58462ab48acc0b1298915d0d3572915b6973ac82
extra : histedit_source : d293cfc68ff59483b4f9543a7a63b140d627a4fa
2016-12-02 09:00:05 +09:00
Brian Birtles 2a87280203 Bug 1301305 - Move propertyToIDL to testcommon.js; r=hiro
We would like to use this method in the next patch.

MozReview-Commit-ID: CSdwlVInyds

--HG--
extra : rebase_source : 5e9af4f0ffacaaf08ecee4e6018bed1ee4a74047
extra : histedit_source : b73144f07097982236038c3efb391f6b7d00e5ed
2016-12-02 08:58:19 +09:00
Brian Birtles 6b50df2d34 Bug 1301305 - Rename assert_property_state_on_compositor to assert_all_properties_running_on_compositor; r=hiro
Currently we have:

  assert_animation_property_state_equals
  assert_animation_property_state_on_compositor

and it's not clear what the difference is. This patch renames the latter to make
it clear it is testing that all properties are running on the compositor.

MozReview-Commit-ID: 3PRm8fse9UI

--HG--
extra : rebase_source : ff89d0e6a5f9e59990ead431200726b492f71e81
extra : histedit_source : c003d1806baf2a97252a734506ac2934e01a4839
2016-12-02 08:56:42 +09:00
Brian Birtles 5187ea4de8 Bug 1301305 - Move test data alongside the test function; r=hiro
Currently these tests are hard to read because the test data is separated from
the test function so it's not clear what each of the fields mean or how to use
it. This patch just brings the test data and test functions alongside
one-another so they are easier to read.

MozReview-Commit-ID: EzFLDG4YiXh

--HG--
extra : rebase_source : 9a6745e908e1794dd92c8d264acc6c61923f4242
extra : histedit_source : 1961454b749bc9cf74d5ae9eef4ac9e4d827179c
2016-12-02 08:56:29 +09:00
Hiroyuki Ikezoe 8f3df3819f Bug 1291468 - Part 3: Implement effect composite(accumulate). r=birtles
MozReview-Commit-ID: GHowVrDZxvh

--HG--
extra : rebase_source : 26146ddd38f397d14545402b5d347e53a488ce19
2016-12-04 08:07:41 +09:00
Hiroyuki Ikezoe 869c4ead65 Bug 1291468 - Part 2: Implement keyframe composite(accumulate). r=birtles
Test cases in file_composite.html are matching pair of tests in
web-platform-tests.

MozReview-Commit-ID: ApuvVCHKQ8Y

--HG--
extra : rebase_source : 58342389a3eb1ed2a3c1889b5ce974dbde19c32f
2016-12-04 08:07:41 +09:00
Hiroyuki Ikezoe d2f7b668f9 Bug 1305325 - Part 15: Tests composed style for missing keyframe for properties runnning on the compositor. r=birtles
The error value, 0.01, used in this test is the same as we used in
test_animation_omta.html.

MozReview-Commit-ID: 50g3k43yAgu
2016-12-04 08:07:40 +09:00
Hiroyuki Ikezoe b98aba8d33 Bug 1305325 - Part 14: Compose base values on the compositor. r=birtles
MozReview-Commit-ID: EWumBqQ82RT
2016-12-04 08:07:40 +09:00
Hiroyuki Ikezoe a9ad7c4490 Bug 1305325 - Part 11: Cache non-animated base values. r=birtles
This patch adds a hashtable to store the non-animated base style of each
property in EffectSet class if the following conditions are met.

1) the effect is the lowest priority of the effect
2) the effect is additive or accumulative

The styles are stored as StyleAnimationValue objects since it's handy class to
store a CSS value for different properties.

MozReview-Commit-ID: 1MZV7MnqzfI
2016-12-04 08:07:40 +09:00
Hiroyuki Ikezoe aa35d16aa2 Bug 1305325 - Part 9: Send animations even if it's paused, finished or zero playback rate. r=birtles.
If all of animations on an element are paused, finished or zero playback rate,
we don't send those animations to the compositor.
Also in this change, we send zero active duration animations to the compositor
in the same way as normail animations.

MozReview-Commit-ID: CHjv6Buy5fa
2016-12-02 15:34:13 +09:00
Hiroyuki Ikezoe 401e2cd152 Bug 1305325 - Part 8: Tests composed style for missing keyframe for properties running on the main thread. r=birtles
MozReview-Commit-ID: 7QuksI30bwY
2016-12-04 08:07:40 +09:00
Hiroyuki Ikezoe 1f8b99b847 Bug 1305325 - Part 6: Handle missing keyframe whose offset 0 or 1 on the main thread. r=birtles
MozReview-Commit-ID: 5WMiTJQKfZd

--HG--
rename : dom/animation/test/chrome/test_animation_properties.html => dom/animation/test/chrome/test_simulate_compute_values_failure.html
2016-12-04 08:07:40 +09:00
Hiroyuki Ikezoe aa1cc722cf Bug 1305325 - Part 5: Add AnimationUtils::IsCoreAPIEnabled. r=birtles
To check simulateComputeValuesFailure flag in chrome privilege, we will need
to know the core Web Animations API preference is enabled in chrome privilege.

MozReview-Commit-ID: GYRMc9Od4Bm
2016-12-04 08:07:40 +09:00
Hiroyuki Ikezoe 0f16539110 Bug 1305325 - Part 4: Add a function that returns the resolved base style on an element for a given property with nsStyleContext. r=birtles
MozReview-Commit-ID: FPzyX9fxxx3
2016-11-16 06:30:57 +09:00
Hiroyuki Ikezoe 20bc31d6c8 Bug 1305325 - Part 3: Make AnimationPropertyValueDetails::mValue optional. r=birtles,smaug
MozReview-Commit-ID: H2fhRfC0Uoh
2016-12-04 08:07:39 +09:00
Hiroyuki Ikezoe d4826bcff3 Bug 1305325 - Part 2: Add AnimValuesStyleRule::GetValue and HasValue to get the last composed style. r=birtles
HasValue() will be used to check that we have already composed style
for a given property or not.

MozReview-Commit-ID: L8lezGyON5o
2016-12-04 08:07:39 +09:00
Hiroyuki Ikezoe abe0821c03 Bug 1305325 - Part 1: Move test cases in file_partial_keyframes.html into file_disable_animations_api_core.html. r=boris
Missing keyframe will be handled only if the Web Animatins API is enabled.
Test cases in file_partial_keyframes.html will not throw any exceptions once
we handle missing keyframe because they are run with the Animations API pref,
but still we should run the test cases with disabled the pref. So we are now
going to move the test cases into file_disable_animations_api_code.html.

We can't use KeyframeEffectReadOnly contructor in a new test file since the
constructor is also behind the Web Animations API pref.

MozReview-Commit-ID: 9ApVxJebBUj
2016-12-04 08:07:39 +09:00
Hiroyuki Ikezoe 7e96375f18 Bug 1318697 - Part 1: Skip composing styles for properties depending on cascade level. r=birtles
When we are composing style for the Animations level of the cascade,
if we have transitions-level animations, we *also* need to compose them if we
have animations-level animations that build on top of them using additive or
accumulative composite modes.

However, we should not build those transitions-level animations unless they will
be built on or overridden by a regular animations-level animation. Otherwise
we will end up with transitions-level animations in the animations-level and
while transitions-level will override the animations-level in the cascade,
once the transition finishes there will be nothing to remove the cached
animations-level animation rule.

MozReview-Commit-ID: LaRabzDSsO5

--HG--
extra : rebase_source : 256efb5779a8cbcc8ae906295b40b160a55641c9
2016-11-29 15:04:17 +09:00
Carsten "Tomcat" Book 61849e269d merge mozilla-inbound to mozilla-central a=merge 2016-11-24 16:41:59 +01:00
Cameron McCormack 5cd7f5c288 Bug 1319336 - Add some assertions and early returns to animation code to make stylo tests progress further. r=birtles
MozReview-Commit-ID: 14rghu0zYG1
2016-11-24 12:45:51 +08:00
Boris Chiou f045a91867 Bug 1317178 - Pass the property name to Servo_DeclarationBlock_SerializeOneValue. r=birtles
In order to use single_value_to_css() in
Servo_DeclarationBlock_SerializeOneValue(), we need to pass the property name
and a flag for custom properties.

MozReview-Commit-ID: 5HfI2qOmPwP

--HG--
extra : rebase_source : 968468b3c9313c4ec3007ee9883075c8fc4ab769
2016-11-22 19:18:18 +08:00
Boris Chiou 367d3ab4dd Bug 1286151 - Part 6: Move tests of spacing on transform into wpt. r=hiro
Only replace addDiv with createDiv in spacing-keyframes-transform.html.
Others are the same.

MozReview-Commit-ID: JNSpyc6WNtP

--HG--
extra : rebase_source : 05af4176e85234e1d89023f1e74012d0e1481230
2016-11-15 16:50:47 +08:00
Andrea Marchesini 2f974ccbce Bug 1318273 - Improve the use of SpecialPowers.pushPrefEnv() - part 1, r=qdot 2016-11-18 09:33:33 +01:00
Sebastian Hengst 7110a88674 Backed out changeset d43b778d95c6 (bug 1318273) for failing mochitest fetch/test_formdataparsing.html. r=backout on a CLOSED TREE 2016-11-17 20:58:38 +01:00
Andrea Marchesini cf2ad8072f Bug 1318273 - Improve the use of SpecialPowers.pushPrefEnv() - part 1, r=qdot 2016-11-17 19:36:01 +01:00
Hiroyuki Ikezoe ae9b44e039 Bug 1304886 - Part 1: Make StyleAnimationValue::Accumulate() infallible. r=birtles
MozReview-Commit-ID: 9ve3k6a3eAg

--HG--
extra : rebase_source : af536ae0bf9dc7ad26003422d971c3cbdb30e390
2016-11-16 20:32:26 +09:00
Daisuke Akatsuka b3ef492bb9 Bug 1064937 - Part 2: Add tests. r=birtles
MozReview-Commit-ID: GnFktARb4Z7

--HG--
extra : rebase_source : 17971643d95d299d1eba70c8ada341dccac34457
2016-11-11 16:40:53 +09:00
Daisuke Akatsuka b0388916e5 Bug 1064937 - Part 1: CSS Animations and Transitions should support transitions/animations of non-interpolable properties. r=birtles,pbro
MozReview-Commit-ID: 4kMytRCKK79

--HG--
extra : rebase_source : 864b568a96b399231a1cb75742d8c428f5ee2c5c
2016-11-11 16:40:38 +09:00
Boris Chiou da317fa21e Bug 1273784 - Part 6: Factor out BuildProperties. r=hiro
Factor out BuildProperties to have a better readability of UpdateProperties.

MozReview-Commit-ID: A3cIS65STAx

--HG--
extra : rebase_source : a09d935d6ced8f4a6c7311e69e3840e195c575a1
2016-11-07 17:01:39 +08:00
Boris Chiou 1225c6b3fa Bug 1273784 - Part 5: Avoid re-building the animation properties and re-calculating computed offsets. r=hiro
We don't need to rebuild the animation properties and recalculate the
computed offsets of Keyframes while copy-constructing a new
KeyframeEffect(ReadOnly) object, so avoid calling SetKeyframes()
directly. And we also need a customized copy constructor for AnimationProperty
to avoid copy mIsRunningOnCompositor.

MozReview-Commit-ID: CIF3Ibgc1tM

--HG--
extra : rebase_source : 7bbc8c1666451435982651f11af9c00f37708807
2016-11-03 11:36:28 +08:00
Boris Chiou 4560622114 Bug 1273784 - Part 3: Implement KeyframeEffect(ReadOnly) copy constructor API. r=hiro
MozReview-Commit-ID: 9ju9jeJ8cvq

--HG--
extra : rebase_source : eb3aad753c3e4251f8a46db22ec067abd4f259bf
2016-11-01 18:39:06 +08:00
Boris Chiou feefe8bb14 Bug 1273784 - Part 2: Overload ConstructKeyframeEffect for copy constructor. r=hiro
The copy constructors of KeyframeEffectReadOnly and KeyframeEffect are
similar, so we overload ConstructKeyframeEffect<...>(...) for copy
constructors.

MozReview-Commit-ID: 37hClpn9ZUG

--HG--
extra : rebase_source : 48de18c190dd8cbc61e0363e999960f2e823f2ea
2016-11-01 17:38:15 +08:00
Boris Chiou ab45c606ea Bug 1273784 - Part 1: Add the copy constructor of KeyframeEffect(ReadOnly) in webidl. r=smaug
MozReview-Commit-ID: Fkddf8axUrU

--HG--
extra : rebase_source : 85e78c8a7fcebfbd5feb75950d5da34c2c05d255
2016-10-28 15:41:08 +08:00
Phil Ringnalda a7c78ec0c6 Merge m-c to m-i
MozReview-Commit-ID: 4eFH8589fbx
2016-11-05 14:13:18 -07:00
Nathan Froyd c8d4517ee9 Bug 1315004 - rename Range::start to Range::begin to match C++ conventions; r=botond
Among other things, this change means that you can use ranged-for syntax
with Range, which is more fitting and pleasant than the alternative.
2016-11-05 21:13:38 -04:00
Sebastian Hengst fe025a98a6 Bug 1310297 - Remove test annotations using b2g, mulet or gonk: dom/animation. r=RyanVM
MozReview-Commit-ID: 5frkrwDMxC6

--HG--
extra : rebase_source : 9f3174102bf11ee739b4cab888ec3d4b04798d86
2016-11-05 11:29:14 +01:00
Hiroyuki Ikezoe 96717d63c9 Bug 1168759 - Part 2: Use waitForAllPaints() instead of animation.ready. r=boris
MozReview-Commit-ID: Hekj71Een7s

--HG--
extra : rebase_source : 03cc6f00bc7c71974431cfc45f96332bbcb4c927
2016-10-27 16:34:04 +09:00
Hiroyuki Ikezoe c2709510e0 Bug 1168759 - Part 1: Rewrite async_test with promise_test. r=boris
MozReview-Commit-ID: 79Jkr83vA1z

--HG--
extra : rebase_source : fca498ffb73f1539fdb07f5bc6bc80545ddbd9f9
2016-10-27 16:33:32 +09:00
Hiroyuki Ikezoe 5c99fb8b87 Bug 1311196 - Part 2: Test that transition keeps the final style while the main thread is busy even if the transition finished on the compositor. r=birtles
This test is skipped on Android, since on Android it takes too long to send
the transition to the compositor.  On an Android emulator, it took 5s!
For this test case, 5s duration transition needs busyness on the main thread
more than 5s, it's undesirable.

MozReview-Commit-ID: DIqcwsnLttV

--HG--
extra : rebase_source : 256978c2a58fb483da4c0acac1db0e51fcf45ccd
2016-10-26 17:19:37 +09:00
Hiroyuki Ikezoe d51fb9dbcc Bug 1311196 - Part 1: Add isOMTAEnabled() in testcommon.js. r=boris
MozReview-Commit-ID: FtJTXlsTACn

--HG--
extra : rebase_source : fe2a1df9c8edf3315d77b1f4070852234f2df070
2016-10-26 17:19:37 +09:00
Mantaroh Yoshinaga e04fc55c09 Bug 1287983 part 7 - Add negative delay tests for CSS-Transitions event. r=birtles
MozReview-Commit-ID: KOVljOtRqFt

--HG--
extra : rebase_source : 324e0075339a99e7abadb82f3033ec7e4e7175e8
2016-10-21 11:37:53 +09:00
Mantaroh Yoshinaga cf59836bae Bug 1287983 part 6 - Integrate ElapsedTimeToTimeStamp function to the Animation class. r=birtles
MozReview-Commit-ID: 43AGaTYQoqn

--HG--
extra : rebase_source : 728380db2c6f3e035d05b6c746d2c0f08a1369b7
2016-10-19 15:16:52 +09:00