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

1498 Коммитов

Автор SHA1 Сообщение Дата
Boris Chiou 6fb9815e98 Bug 1375812 - Test the result of interpolation from interpolatematrix to none. r=birtles
MozReview-Commit-ID: 3oiSVo2WCWE

--HG--
extra : rebase_source : 1f4940332e0c03a572a16ab210e8673e2c836f6c
2017-06-28 10:57:50 -07:00
Mantaroh Yoshinaga f6bb5b5b40 Bug 1376513 - Fix expected value for serizalization value for text-shadow of mochitest and skip this test case on gecko. r=hiro
MozReview-Commit-ID: CTOGgCiYTeD

--HG--
extra : rebase_source : 65eaab1e5f1daba5ac25048ef63d2c63ef2f1698
2017-06-27 13:47:45 -07:00
Carsten "Tomcat" Book 4e00eff077 merge mozilla-inbound to mozilla-central a=merge 2017-06-27 10:56:41 +02:00
Hiroyuki Ikezoe 260c76375c Bug 1376247 - Set content property to generate ::before and ::after element for animations. r=birtles
For this test case, we can't use global '::before' and '::after' selectors
since it changes visiting order for the pseudo elements on updating styles
and leads to different results of observed records.

MozReview-Commit-ID: 4e4eZTmr0gJ

--HG--
extra : rebase_source : f966aef3145e317a81262eaf67f402a80af3a90c
2017-06-26 16:26:05 +09:00
Bill McCloskey f115503a0b Bug 1372405 - Provide names for all runnables in the tree (r=froydnj)
MozReview-Commit-ID: DKR6ROiHRS7
2017-06-26 14:19:58 -07:00
Florian Quèze 66f6d259bc Bug 1374282 - script generated patch to remove Task.jsm calls, r=Mossop. 2017-06-22 12:51:42 +02:00
Hiroyuki Ikezoe 8ffb31fc0b Bug 1374882 - Insert 'Timing' word into the names for setter/getter for timing function. r=birtles
MozReview-Commit-ID: 7h0VcoT4lmb

--HG--
extra : rebase_source : 41fb8f1d0ae4ebb6f5744389c7cccd4baaa5cbe3
2017-06-22 12:12:43 +09:00
Hiroyuki Ikezoe d3f51b0d7b Bug 1374882 - Precompute active duration and end time. r=birtles
MozReview-Commit-ID: ClFHaXkpGXX

--HG--
extra : rebase_source : a50cd9a5767b4795b04c84fde7c296684c06541e
2017-06-22 12:12:43 +09:00
Hiroyuki Ikezoe 26a9f87593 Bug 1374882 - Encapsulate TimingParams's member variables. r=birtles
MozReview-Commit-ID: 1KhEdCSwpES

--HG--
extra : rebase_source : 18d1aab946922a10cdd6609f4216e4863fd0ad89
2017-06-22 12:12:43 +09:00
Hiroyuki Ikezoe 8894ec184b Bug 1374882 - Add a TimingParams ctor on the compositor. r=birtles
MozReview-Commit-ID: BFiwrphRND0

--HG--
extra : rebase_source : 79bb7aed8ec25f9b10a34276dec78577c3af7b86
2017-06-22 12:12:42 +09:00
Hiroyuki Ikezoe 2f471b7a63 Bug 1374882 - Add a TimingParams ctor for CSS animations/transitions. r=birtles
MozReview-Commit-ID: CZbrAJlqNJ1

--HG--
extra : rebase_source : 9360731a79e8416e429f1d2b008ac5f85d6061c3
2017-06-22 12:12:42 +09:00
Hiroyuki Ikezoe 1b7fbc4368 Bug 1374882 - Make TimingParamsFromOptionsUnion member function. r=birtles
MozReview-Commit-ID: 7AQKrHPdzeD

--HG--
extra : rebase_source : b37ca2bb66b49ceb0a7bfd641d930fd686da1ac5
2017-06-22 12:12:42 +09:00
Boris Chiou 05df187ede Bug 1373712 - Part 2: Add a crashtest with large color value. r=birtles
MozReview-Commit-ID: 4pAIvv2hNTD

--HG--
extra : rebase_source : 0625ddd8c4925054a5df742b31081306a452f3fc
2017-06-21 13:53:27 +08:00
Brian Birtles 52e868b638 Bug 1370019 - Rename UpadataEffectSet to UpdateEffectSet; r=cjku
MozReview-Commit-ID: DbGvHjpr7xx

--HG--
extra : rebase_source : 8288da5110aec5e8494bf4e6e29d443a1d1437d5
2017-06-20 15:42:26 +09:00
Ethan Lin 84176294e0 Bug 1367994 - Remove skip-if for 1272475-1.html since the issue is fixed in webrender. r=kats 2017-06-20 10:08:23 +08:00
Mats Palmgren cddeb03b03 Bug 1374126 - Use LookupForAdd instead of Contains+Put to avoid unnecessary hashtable lookups. r=froydnj
MozReview-Commit-ID: EI6vKlMqG5i
2017-06-19 18:19:14 +02:00
Mats Palmgren 882d4be4d7 Bug 1374125 - Use EnsureInserted instead of Contains+PutEntry to avoid unnecessary hashtable lookups. r=froydnj
MozReview-Commit-ID: DYad7czMWBu
2017-06-19 18:19:14 +02:00
Manish Goregaokar 3188b9bfd6 Bug 1373018 - Part 10: stylo: Remove StyleSource; r=bholley
MozReview-Commit-ID: 4IcROeDNoBA

--HG--
extra : rebase_source : e2f65c316be2c5640150eb5ff5628505ce446535
2017-06-10 22:27:45 -07:00
Manish Goregaokar 02ab46c24d Bug 1373018 - Part 8: stylo: Move nsStyleContext::SetStyle to GeckoStyleContext; r=bholley
MozReview-Commit-ID: ycXu95whnG

--HG--
extra : rebase_source : 852051aa074cc8ed8f11f0d68c26fe4f0a6962b6
2017-06-10 22:27:45 -07:00
Boris Chiou ebc59facdc Bug 1339690 - Part 8: Produce an appropriate warning highlighting the invalid property value. r=birtles,flod
MozReview-Commit-ID: 1KoFMxOo78L

--HG--
extra : rebase_source : b37e83358d8ff0c77172246d72ddb11fbcd7954c
2017-06-14 14:18:25 +08:00
Boris Chiou ccd05b9231 Bug 1339690 - Part 7: Stop storing invalid property value. r=birtles
MozReview-Commit-ID: H3aRcJIk7CV

--HG--
extra : rebase_source : 774c1596364dd8e3eacf8a6bab093e9e1abf6e18
2017-06-14 11:43:47 +08:00
Boris Chiou 855f40d72b Bug 1339690 - Part 6: Move GetComputedKeyframeValues into local static. r=birtles
MozReview-Commit-ID: Ay3i9fDSbVg

--HG--
extra : rebase_source : 9d1de95cf15a0882fd50feb55878758c419d66ae
2017-06-14 12:51:27 +08:00
Boris Chiou d3495b8861 Bug 1339690 - Part 5: Merge two DistributeRange functions. r=birtles
MozReview-Commit-ID: 3QT09Qmy3Lg

--HG--
extra : rebase_source : 5590d5df20af5c7e0cc63fef97e203cdda202967
2017-06-15 10:54:36 +08:00
Boris Chiou 02bf8062fe Bug 1339690 - Part 4: Rename ApplyDistributeSpacing to DistributeKeyframes. r=birtles
There is no spacing mode any more, so rename this function.

MozReview-Commit-ID: 9DIqKmQnuJo

--HG--
extra : rebase_source : 3600be87a699a1a5fe237f8ed75baf03f0b5ae84
2017-06-15 10:47:32 +08:00
Boris Chiou f8dbd6bb32 Bug 1339690 - Part 3: Drop spacing mode. r=birtles,smaug
MozReview-Commit-ID: 1c7jpzWQjVP

--HG--
extra : rebase_source : 7850e290abb5fd87684c99710666c881eb777eb4
2017-06-13 15:09:19 +08:00
Boris Chiou 0946a7bd73 Bug 1339690 - Part 2: Drop tests of paced timing in dom/animation/test. r=birtles
MozReview-Commit-ID: BbfXB5MmMgE

--HG--
extra : rebase_source : 14677cb9edd9fdf706b79e3f6e2d0e7e1f0f6bdf
2017-06-13 13:30:58 +08:00
Brian Birtles 22d0b7d971 Bug 1371518 - Make KeyframeUtils::IsAnimatable consult the Servo backend; r=hiro
When styling with the Servo backend, we should also use the Servo backend to
determine if a property is animatable or not. However, if we do this,
Servo_Property_IsAnimatable will start returning true for the 'display' property
once we mark that as animatable in Servo (for SMIL).

Even if we later fail to actually animate 'display' (due checks added to Servo
in the next patch) we still need to treat 'display' as un-animatable in
KeyframeUtils so that we don't *read* the 'display' property of Keyframe objects
passed to the Animations API, since that is observable.

This patch makes us consult Servo_Property_IsAnimatable when using the Servo
backend and also explicitly treat the 'display' property as not animatable.

MozReview-Commit-ID: 1JllbeJisAS

--HG--
extra : rebase_source : d73b7d9ee0da03bfed68e574b67e10b342c1868d
2017-06-14 15:23:45 +09:00
Mantaroh Yoshinaga df6a321bc6 Bug 1353987 - Clear ready promise when animation is canceled. r=birtles
According to the spec, when we cancel an animation we should "reset an
animation's pending tasks"[1] which has following step:

...
4. Reject animation’s current ready promise with a DOMException named "AbortError".
5. Let animation’s current ready promise be the result of creating a new resolved Promise object.

Since we create the ready promise and, if need resolve it when we create it
(see Animation::GetReady), this patch simply clear the ready promise
when an animation is canceled.

[1] https://w3c.github.io/web-animations/#reset-an-animations-pending-tasks

MozReview-Commit-ID: JxoqeA5dXCO

--HG--
extra : rebase_source : 1c51724f236b3ed464eb6af3c20ccc9aaf5aa3e6
2017-06-12 10:45:48 +09:00
Daisuke Akatsuka 0100db259a Bug 1368610 - Part 6: Add tests for valid inherit value during animation. r=hiro
This tests are to confirm either we could get valid value of 'inherit' of
keyframe.
Also, this tests are for clone_XX methods of stylo as well.

MozReview-Commit-ID: J6HZBRZB5am

--HG--
extra : rebase_source : c8c282f3204d94931112fa9811bb5c51b8fe6992
2017-06-12 10:17:25 +09:00
Brian Birtles 7cb2663abe Bug 1367307 - Add content property to create pseudo element in web-platform-tests and devtools tests too; r=hiro
MozReview-Commit-ID: 35F2Cu1w0N7
2017-06-09 11:30:04 +09:00
Hiroyuki Ikezoe 34985a8f63 Bug 1367307 - Add content property to generate pseudo element. r=birtles
MozReview-Commit-ID: 2gvHexQUJKa

--HG--
extra : rebase_source : da6cde40edbbb0e5432c88b3949a9995b9ca6d87
2017-06-08 10:28:19 +09:00
Hiroyuki Ikezoe cdde6f6108 Bug 1368889 - Post animation restyle hint againt pseudo element instead of its parent. r=birtles
To traverse pseudo elements in animation-only restyle, the pseudo element
itself needs the animation-only dirty bit.

MozReview-Commit-ID: 11RfVqnPXfJ

--HG--
extra : rebase_source : d048c9a053c03bf3fef46fcbfd9cbd5f60204e1d
2017-06-08 10:22:25 +09:00
Boris Chiou 821f92d417 Bug 1335998 - Part 3: Add a crashtest for mismatched transform lists. r=hiro
Add this crashtest for interpolation/accumulation on mismatched transform lists
to make sure it doesn't crash and there is no leak because we use
nsCSSValueSharedList, instead of nsCSSValueList_heap, for Servo backend.

MozReview-Commit-ID: 2VdKSQcK7pj

--HG--
extra : rebase_source : f497e442a34f29fb0aa936c012ad7bc14cac2e7a
2017-06-03 16:56:03 +08:00
Jared Wein 8e35a61454 Bug 1370528 - Remove gramatically incorrect 'size' from CompositorAnimationWarningContentTooLargeArea string. r=flod
MozReview-Commit-ID: CufsKyWezU8

--HG--
extra : rebase_source : 99f68432905e483f786994d00983c505bcb58928
2017-06-06 09:49:56 -04:00
Jared Wein 6e57031fc1 Bug 1364221 - Allow frames to be prerendered as long as the area of the frame is less than the area of the relative limit and the dimensions are less than the absolute limit. r=mattwoodrow,mstange
MozReview-Commit-ID: C3QLjaCRbzE

--HG--
extra : rebase_source : 1c9ad6b7c04d65b8b71f5112b7f4c91415aa70d9
2017-06-05 17:01:19 -04:00
Carsten "Tomcat" Book c63e6d4789 Merge mozilla-central to mozilla-inbound 2017-06-02 14:32:35 +02:00
Ethan Lin ba7509a7c8 Bug 1358055 - Add reftest flags for background color layer to make try passed. r=kats 2017-06-02 18:21:07 +08:00
Hiroyuki Ikezoe 9a6ff6c63d Bug 1367293 - Drop ServoComputedValuesWithParent entirely. r=birtles
MozReview-Commit-ID: DGWNHiXoOlH

--HG--
extra : rebase_source : cc0fbb2c46479e4e99578d51ad7e0cd889dfe64e
2017-06-02 09:39:00 +09:00
Hiroyuki Ikezoe 14e0273b91 Bug 1367293 - Don't get parent style for GetComputedKeyframeValuesFor. r=birtles
MozReview-Commit-ID: 7WjsO7P2QGz

--HG--
extra : rebase_source : b9d2d672dd670f54174a5811c7d28efe268c0c4d
2017-06-02 09:38:54 +09:00
Hiroyuki Ikezoe b80937e1e4 Bug 1367293 - Explicitly cast nsStyleContext* to nullptr. r=birtles
In subsequent patches, the servo version of KeyframeUtils::ApplySpacing()
changes fifth argument to const ServoComputedValues*. If we still use nullptr
for the fifth argument in caller side, compilers can't determine whether
nsStyleContext* or const ServoComputedValues* should be used.

MozReview-Commit-ID: 1bE2cA7gRdi

--HG--
extra : rebase_source : 230b9b94bbfdcacf1b35a6c8eb1186e22b331047
2017-06-02 09:37:55 +09:00
Fernando Jimenez Moreno e85ff5cb1b Bug 1365674 - stylo: Simulate compute value failure for dom/animation mochitests. r=hiro
MozReview-Commit-ID: 8flMLuW2vZP

--HG--
extra : rebase_source : 572ddece88644de63930468f532c31d37167f017
2017-05-30 10:24:08 +02:00
Xidorn Quan e11cf006d5 Bug 1367028 part 1 - Simplify serialization of specified rect values in border-image props when possible. r=dholbert
MozReview-Commit-ID: C4mNCHqeIoX

--HG--
extra : rebase_source : bab410f278b2a0dc49e3aacf57b06a20699cca12
2017-05-29 14:53:58 +10:00
Carsten "Tomcat" Book b318c7dca7 merge mozilla-inbound to mozilla-central + UPGRADE_NSS_RELEASE a=merge
--HG--
rename : toolkit/components/extensions/test/xpcshell/xpcshell.ini => toolkit/components/extensions/test/xpcshell/xpcshell-common.ini
extra : amend_source : 458fd54fe8070ca3034ac441267ff7025adb5251
2017-05-30 11:37:46 +02:00
Daisuke Akatsuka d27e5208ee Bug 1367283 - Part 9: Add tests to confirm valid 'inherit' value of -moz prefixed properties during animation. r=hiro
Test to confirm valid 'inherit' value of -moz prefixed properties during
animation. This also means to confirm the algorithm of clone_XX methods
of stylo.
NOTE: This file should have only animatable properties that have '-moz' prefix.

In this patch, appends following properties.

* -moz-box-align
* -moz-box-direction
* -moz-box-orient
* -moz-box-pack
* -moz-float-edge
* -moz-orient
* -moz-osx-font-smoothing
* -moz-user-focus
* -moz-user-input
* -moz-user-modify
* -moz-window-dragging

MozReview-Commit-ID: GfBfMkvfgGm

--HG--
extra : rebase_source : f2e220ccc0c6864ad15416a2cda470f64eeb62be
2017-05-30 10:42:59 +09:00
Geoff Brown 72cf96c3de Bug 1332970 - Allow assertion in test_restyles.html; r=hiro
Frequent intermittent assertions have been happening for a long time.
2017-05-29 16:03:51 -06:00
Ryan VanderMeulen c2e6a4f474 Backed out changeset bb1542b364f2 (bug 1364221) for Android 4.2 x86 test_animation_performance_warning.html failures on a CLOSED TREE. 2017-05-26 15:37:14 -04:00
Jared Wein bc9c4a158e Bug 1364221 - Allow frames to be prerendered as long as the area of the frame is less than the area of the relative limit and the dimensions are less than the absolute limit. r=mattwoodrow,mstange
MozReview-Commit-ID: C3QLjaCRbzE

--HG--
extra : rebase_source : 71907fe872ad6347ea30f1af441a3a3bd0724366
2017-05-23 17:41:06 -04:00
Brian Birtles 60c808ad43 Bug 1353202 - Add support for iteration composite modes r=hiro
MozReview-Commit-ID: BlmR88fPF6J

--HG--
extra : rebase_source : d57cb6ca20e314374cc5a26caf3d03a1ac71cd26
2017-05-24 11:14:35 +09:00
Ryan VanderMeulen 1734a80650 Merge m-c to inbound. a=merge 2017-05-23 11:15:49 -04:00
Mats Palmgren 297b9d70e1 Bug 1365614 part 3 - Backout bug 1333482 part 1-9. Removes support for [-webkit-]appearance for now b/c web compat issues. r=bz
MozReview-Commit-ID: IbwWM0FL6HF

--HG--
extra : source : bbb688fe1ba3f5201a190c6e25b693ef7272ea2d
2017-05-21 17:15:00 +08:00
Carsten "Tomcat" Book 00d4ea331d Backed out changeset bbb688fe1ba3 (bug 1365614) 2017-05-22 15:45:31 +02:00
Carsten "Tomcat" Book 469e512b06 merge mozilla-inbound to mozilla-central a=merge 2017-05-22 13:00:17 +02:00
Hiroyuki Ikezoe 5ea0aea575 Bug 1329077 - Drop redundant waitForIdleCallback(). r=boris
We have already waitForIdle() in testcommon.js.

MozReview-Commit-ID: 64XTU2g8CO7

--HG--
extra : rebase_source : 028e6827f4d67b789b979673ceb5a8bef501dbf7
2017-05-20 20:33:59 +09:00
Hiroyuki Ikezoe 3de2aa4e0c Bug 1329077 - Revert the hack that opens a new window to use requestIdleCallback. r=boris
requestIdleCallback has been enable by default in bug 1314959.

MozReview-Commit-ID: 7rwqdsCdjNb

--HG--
extra : rebase_source : cb60996accfe733714c9b5dff983c2210c4fa98b
2017-05-20 20:33:26 +09:00
Mats Palmgren e706869580 Bug 1365614 part 3 - Backout bug 1333482 part 1-9. Removes support for [-webkit-]appearance for now b/c web compat issues. r=bz 2017-05-21 17:15:00 +08:00
Boris Chiou 9525862a92 Bug 1334036 - Part 12: Enable off-main thread animations. r=birtles
Remove the unconditional return from FindAnimationsForCompositor(), so
we can check if there is any property running on compositor.
Also, enable a reftest and fix the mochitest expectation:
1. The expectation numbers of test_animations_omta.html in e10s and non-e10s
   are different, so skip non-e10s.
2. We pass all tests in test_animations_omta_start.html with e10s;
   however, got 3 test failures with non-e10s, so skip this file with
   non-e10s.

MozReview-Commit-ID: IuOyAsUYguU

--HG--
extra : rebase_source : 8f8549063f2d1907e95d0bab450e1b6f851f8c84
2017-05-08 11:22:13 +08:00
Boris Chiou 38215cedea Bug 1334036 - Part 11: Trigger animation-only restyle when we handle an event with coordinates. r=birtles,heycam
We need to request an animation-only restyle to force flush all throttled
animations on main thread when we handle an event with coordinates
(e.g. mouse event).

MozReview-Commit-ID: KkjeQVsLgTl

--HG--
extra : rebase_source : 314408062e719e9f52df9a6726e2f3dad817bbef
2017-05-19 16:16:41 +08:00
Boris Chiou 731ab38439 Bug 1334036 - Part 10: Return AnimationValue for BaseStyle. r=hiro
We need to retrieve the correct base style for Servo backend, so change
the return value to AnimationValue and update
KeyframeEffectReadOnly::BaseStyle().

MozReview-Commit-ID: 9FL3h1DLoJt

--HG--
extra : rebase_source : 42284c5fe8b8135910cde44b0815eb475ca2f1cc
2017-05-10 11:06:19 +08:00
Boris Chiou 5ab8026281 Bug 1334036 - Part 7: Merge two similiar MaybeUpdateCascadeResults functions. r=birtles
MozReview-Commit-ID: 2NDdQRF3DQ8

--HG--
extra : rebase_source : b6b002e19a459acd644024a78532ab7923e3fc82
2017-05-11 13:26:07 +08:00
Boris Chiou 1e2c865691 Bug 1334036 - Part 5: Implement FFI for finding properties overriding animations. r=birtles,emilio
We need to traverse rule tree to get the important rules, so we will not
override them if they have animations running on compositor.

MozReview-Commit-ID: 67NO2nIcUfq

--HG--
extra : rebase_source : 24a4ea4ca10e00f409d94c81acacb3db72248b3f
2017-05-19 15:58:47 +08:00
Boris Chiou c13897d8fe Bug 1334036 - Part 4: Remove unused UpdateCascadeResults function. r=birtles,hiro
We don't use the public UpdateCascadeResults method, so remove it.

MozReview-Commit-ID: A2lWZaHWHTZ

--HG--
extra : rebase_source : 35a1d77fdeba5a1db74d15f523dba78801b0b48e
2017-05-10 13:46:36 +08:00
Boris Chiou f1f6a5d9dc Bug 1334036 - Part 3: Add a flag to represent we are in pre-traversal. r=birtles
We need this flag to avoid assertion in PostRestyleForAnimation(), which
may be called from MaybeUpdateCascadeResults() in pre-traversal.

MozReview-Commit-ID: 46AfoIUb9o3

--HG--
extra : rebase_source : 3290d9954be43ffaeb94b501ac346622651c452a
2017-05-11 13:08:35 +08:00
Boris Chiou 5561a71847 Bug 1334036 - Part 2: Restyle all elements with animations if there are non-animation restyles. r=birtles
We restyle elements with non-animation restyles even if the animations
are throttled.

MozReview-Commit-ID: Exhd4qVx7su

--HG--
extra : rebase_source : 1632bf949bb60a894372a425fd9173e1b718452d
2017-05-17 11:41:43 +08:00
Boris Chiou 3f5f72a1eb Bug 1334036 - Part 1: Avoid mutating mElementsToRestyle during pre-traversal. r=birtles
During pre-traversal of EffectCompositor, we call MaybeUpdateCascadeResult(),
which may add new element into mElementsToRestyle, as a result, we may
iterate a mutated mElementsToRestyle. In this patch, we copy the element
which needs update cascade results into another set and traverse this new set
to call MaybeUpdateCascadeResult(). After that, do normal pre-traversal on
mElementsToRestyle.

MozReview-Commit-ID: 3uo6Ec5JNjp

--HG--
extra : rebase_source : 3cdc3c3147f011074a884d85da2655e0ed4a3730
2017-04-28 14:00:13 +08:00
Boris Chiou e60859ca4a Bug 1366441 - Enable dom.animations-api.core.enabled for test_animation_observers_sync.html. r=hiro
MozReview-Commit-ID: 92PN6ABOFPm

--HG--
extra : rebase_source : 8e350c51aa9153088adabd104d6b7e053d8325d1
2017-05-20 17:09:00 +08:00
cku b77ed1d09b Bug 1205475 - (followup) Declare mMayHaveOpacityAnim and mMayHaveTransformAnim as bool. r=me
The type of these two members is intended to be boolean. Fix the typo in this
patch.

MozReview-Commit-ID: HcwvUQztw9J

--HG--
extra : amend_source : 59c29156231c9c93f5939afeda1641da72a50489
2017-05-23 21:47:46 +08:00
Wes Kocher f8ee017832 Backed out changeset f8c14563b37d (bug 1364221) for m(c1) failures in test_animation_performance_warning.html a=backout
MozReview-Commit-ID: 9vwi69eAZ5r

--HG--
extra : rebase_source : 5cba4d42b12447f6734b4cf1c1f4d9956bc1ace3
2017-05-19 14:01:47 -07:00
Jared Wein d075979256 Bug 1364221 - Allow frames to be prerendered as long as the area of the frame is less than the area of the relative limit and the dimensions are less than the absolute limit. r=mattwoodrow
MozReview-Commit-ID: C3QLjaCRbzE

--HG--
extra : rebase_source : 3561397fbebcc4a994831cdc4782772307b37d30
2017-05-18 14:52:31 -04:00
cku 19af87ab38 Bug 1205475 - Part 1. Hold MAY_HAVE_OPACITY_ANIM/ MAY_HAVE_TRANSFOMR_ANIM information in EffectSet. r=mattwoodrow
FRAME_STATE_BIT of nsFrame and nsINode::mBoolFlags are both full, we need to
find another place to hold MAY_HAVE_OPACITY information.

nsINode::mSlots might be a choice, but since we always use this information in
painting, memory footprint of nsINode will become larger after this change.

So I decide to put this information right in EffectSet. The drawback of storing
this information in EffectSet is, although unnecessary Effect look-up is
prevented, we still need EffectSet property look-up in each time
HasOpacityInternal call, so we need Part 2.

Conceptually, Part 1 and Part 2 are independent.

MozReview-Commit-ID: 6sfBFSHjxQb

--HG--
extra : rebase_source : 394141cec3b44bb352297a0add8f9763d815bddb
2017-05-16 19:11:04 +08:00
Wes Kocher 0a5ec26ac6 Merge inbound to central, a=merge
UPGRADE_NSS_RELEASE

MozReview-Commit-ID: 9BuuGYyJ3RJ

--HG--
extra : amend_source : 57de84460e0ace13892ff1623451b9b9be8eaeeb
2017-05-17 14:48:30 -07:00
gabriellesc 453d383b92 Bug 1301611 - Test that mutation observer is notified when keyframes are changed using setKeyframes(). r=boris 2017-05-15 13:33:43 -04:00
Emilio Cobos Álvarez 8b2a66ab16 Bug 1364412: Convert pseudo-elements to an enum. r=hiro,xidorn
This allows us to access metadata using `match` instead of comparison with
atoms, which makes it doable to get the pseudo-element flags in the future.

Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>

MozReview-Commit-ID: KgGjFePmhyS
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>

--HG--
extra : rebase_source : 57614aed13d2c088fe129ecf3fabf9869d5a6d50
2017-05-14 18:39:22 +02:00
Nazım Can Altınova e7316ee8fe Bug 1364746 - stylo: Continue to propagate quirks mode information to Servo r=bholley
I've propagated quirks mode information on some places. But we needed to pass
quirks mode to some other FFI functions to be able to handle that information
properly.

MozReview-Commit-ID: JovQWjN3YJx

--HG--
extra : rebase_source : bd25ba4276ae21ff4feb80e56b311202019268a0
2017-05-14 18:11:18 +03:00
Hiroyuki Ikezoe 7cd8cdf2bb Bug 1357295 - Rename LengthParsingMode to ParsingMode and LengthParsingMode::SVG to PasingMode::AllowUnitlessLength. r=emilio
We need another flag that represents allow-negative-number for SMIL, so
this enum will also comprise the another parsing mode that allows negative number.

MozReview-Commit-ID: IDFNppjGeB

--HG--
extra : rebase_source : 456f661b33346ff4a756a66c6accf4ab1a5f2f80
2017-05-13 19:47:38 +09:00
Hiroyuki Ikezoe b56f6b1267 Bug 1354947 - Add equal operators for comparing ComputedTimingFunction with nsTimingFunction. r=birtles
MozReview-Commit-ID: 7pQQP3xlKot

--HG--
extra : rebase_source : 08f7fa7739778942eea94e7987e268e2d5196b77
2017-05-13 16:34:38 +09:00
Botond Ballo 7075b5e1c9 Bug 1361915 - Record telemetry each time we try to run a transform animation on the compositor. r=birtles,bsmedberg
The telemetry is recorded once per effect:target pair, and is intended for
comparison with the telemetry added in bug 1349808.

MozReview-Commit-ID: 8JYbAifjmki

--HG--
extra : rebase_source : a5adf4ea9c0836d9ad0ecde5e5869d00eccc2205
2017-05-03 21:39:42 -04:00
Wes Kocher 2325e84d49 Backed out changeset 3a3a19e0d903 (bug 1361915) for build bustage a=backout
MozReview-Commit-ID: 3BG6xILsiXW
2017-05-11 15:11:29 -07:00
Botond Ballo a7e015ab49 Bug 1361915 - Record telemetry each time we try to run a transform animation on the compositor. r=birtles,bsmedberg
The telemetry is recorded once per effect:target pair, and is intended for
comparison with the telemetry added in bug 1349808.

MozReview-Commit-ID: 8JYbAifjmki

--HG--
extra : rebase_source : fa0b615684ca1355f9bbc24b3355e90001db47b5
2017-05-03 21:39:42 -04:00
Hiroyuki Ikezoe 9219415cbf Bug 1363574 - Allow unitless length for SMIL values. r=birtles
MozReview-Commit-ID: BkGCHgQVzHD

--HG--
extra : rebase_source : c0b0601fba6cfba04217dd6da7e942c167858496
2017-05-11 08:29:36 +09:00
Yoshi Huang 6f3ea4d1b4 Bug 1361641 - Part 1: convert mochitest plain tests in dom to use srcdoc. r=smaug 2017-05-09 10:25:23 +08:00
gabriellesc 101b34decc Bug 1293495 - Wrote a test for mutation observer when iterationComposite is changed. r=boris 2017-05-04 20:27:02 -04:00
Boris Chiou c78d90ed63 Bug 1346052 - Part 1: Factor out ParseProperty. r=birtles
We can reuse ParseProperty in nsDOMWindowUtils::ComputeAnimationDistance(),
so factor out this function.

MozReview-Commit-ID: FdXGPxOZf84

--HG--
extra : rebase_source : 525bb436fdc1ce4d1241a08b198f9cd572506a86
2017-03-24 17:35:27 +08:00
Brian Birtles 5267613207 Bug 1334583 - Pass a separate timeOrigin and startTime for compositor animations; r=hiro
By passing the startTime as a TimeDuration we are able to represent times in the
distant past (and with the same range as we can represent on the main thread so
that if we do encounter range errors in future, they should not differ between
the main thread and the compositor).

This patch includes a crashtest. I have verified that, without the code changes
included in this patch, this crashtest fails on debug builds on OSX.

MozReview-Commit-ID: EDuKLzfEC0K

--HG--
extra : rebase_source : 1883080fdfac8c33f70698145f21e67cbdfdd4f2
2017-05-02 16:49:51 +09:00
Brian Birtles ec43d6df6d Bug 1361260 - Incorporate playbackRate when calculating the start time of a pending compositor animation; r=hiro
MozReview-Commit-ID: FBmT5ImBcYJ

--HG--
extra : rebase_source : 76058d69b844adb0725b7522fcbdfd8541f2b71f
2017-05-02 16:43:21 +09:00
Brian Birtles d8df0f7aa8 Bug 1361234 - Fix start time calculation for pending animations on layers; r=hiro
In bug 1223658 we separated out the delay from the start time but we failed to
remove it from this calculation. As a result, when a pending animation begins it
will have the delay applied twice (once here, and once when it is sampled on the
compositor). This will happen until the layer is next updated.

This bug was not exposed by any existing tests since we don't use this code path
when the refresh driver is under test control. Furthermore, the one test that
was supposed to cover this was refactored in such a way that it stopped testing
this code path. That test is restored earlier in this patch series and enabled
in this patch.

MozReview-Commit-ID: B2KR7YaPsMK

--HG--
extra : rebase_source : 6c888252813fbfc01baf5d4bb1728d989ee1586c
2017-05-02 16:41:13 +09:00
Brian Birtles d4b0e34e68 Bug 1361234 - Restore test_deferred_start.html to actually testing delay; r=hiro
Once upon a time[1] a test was added to test_deferred_start.html to test the
code path where we establish the start time to pass to the compositor when
resolving a pending animation.

Later[2], however, we encountered intermittent failures on B2G so we made it
stop waiting on animation.ready and use waitForPaints instead. There were two
problems with this, however.

Firstly, waiting for paints often means that extra paints are processed such
that we end up updating the start time on the layer using a different code path
and masking any potential bugs in the code path under test.

Secondly, when we made this change we replaced:

  return animation.ready.then(function() { /* test code */ })

with:

  return waitForPaints(function() { /* test code */ })

And sadly that means that 'test code' never runs. Of course, what we meant to
write was:

  return waitForPaints().then(function() { /* test code */ })

As a result, when we later broke the code path under test no one noticed.

This patch restores the test so that it tests what it intends to (and currently
fails, at least most of the time).

[1] https://hg.mozilla.org/mozilla-central/rev/79cac8c71159
[2] https://hg.mozilla.org/mozilla-central/rev/986b18fdfdba
[3] https://hg.mozilla.org/mozilla-central/rev/b66b75c2d042101b954e6423438cc07955c2b9bd

MozReview-Commit-ID: 1iMWLQP6zae

--HG--
extra : rebase_source : 2766f25b150af3e98afc6214f59a329798961943
2017-05-02 16:40:23 +09:00
Hiroyuki Ikezoe 0935c70f35 Bug 1361183 - Check Element::MayHaveAnimations() in EffectSet::GetEffectSet(). r=birtles
We can early return to call MayHaveAnimations() (and it should be fast) since
we set the flag in EffectSet::GetOrCreateEffectSet(),

MozReview-Commit-ID: 2UfWVVi6nY5

--HG--
extra : rebase_source : 97e98bf1fb9e725a107ed3200b95921375bfb637
2017-05-02 07:25:50 +09:00
Hiroyuki Ikezoe d8fafebff7 Bug 1360776 - Pass AnimationValueMap raw pointer instead of Arc to Gecko_GetAnimationRule(). r=emilio
MozReview-Commit-ID: 5o8NuJolG2R

--HG--
extra : rebase_source : 13d732112dfe5614a83657c7bf7703944050c0f4
2017-05-01 18:45:41 +09:00
Hiroyuki Ikezoe b0051604aa Bug 1358353 - Use rgb value instead of keyword colors. r=boris
MozReview-Commit-ID: HE0Qld7Tvi6

--HG--
extra : rebase_source : 196193064ec68808bc372a95846b30a2fbc91e9e
2017-04-28 13:07:54 +09:00
Hiroyuki Ikezoe bf97b2a40a Bug 1343884 - Add a tweak to cause a MozAfterPaint in 1239889-1.html. r=boris DONTBUILD
MozReview-Commit-ID: PiXLTTCXSi

--HG--
extra : rebase_source : 0a803674ece5a70b998dc4d8a5f77172962c7a21
2017-04-28 13:17:34 +09:00
Emilio Cobos Álvarez 78d50744d2 Bug 1331047: Fix another instance of a test relying on animating an non-existing pseudo-element. r=hiro
MozReview-Commit-ID: 5ewF4tMPMl6
2017-04-27 17:08:31 +02:00
Carsten "Tomcat" Book e1e203f1f5 Merge mozilla-central to autoland 2017-04-27 16:36:41 +02:00
Brian Birtles f37fe9b84d Bug 1355348 - Move ServoComputedValuesWithParent to separate file; r=hiro
We will use this type later in this patch series in nsSMILCSSProperty so this
patch moves it to a separate file so it can be re-used.

MozReview-Commit-ID: 4Z7YbsQ9xz4

--HG--
extra : rebase_source : 0f6f7248d1a4dfc77360829f3a0e6ed263f156db
2017-04-26 13:00:11 +09:00
Brian Birtles ba8b99bbb7 Bug 1355348 - Move IsFlattenedTreeDescendantOf helper to nsContentUtils; r=heycam
In the next patch in this series we would like to use this functionality in
nsSMILController as well so this patch moves it to somewhere we can share it.

MozReview-Commit-ID: 1IzWoCCw4aD

--HG--
extra : rebase_source : 9f2b230f774135c0c5bf60ebdff358ce0a6bc087
2017-04-26 13:00:10 +09:00
Brian Birtles d5097e1bda Bug 1359658 - Crashtest for clearing animation-only dirty descendants bit on display:none descendants; r=hiro
I have verified that this crashtest fails without the corresponding Servo-side
code changes.

MozReview-Commit-ID: 9obKluN3fgv

--HG--
extra : rebase_source : 71d82eb24ccb9fea1674d08be9b317997df7fe3f
2017-04-26 14:31:23 +09:00
Emilio Cobos Álvarez 6fe2b3e89d Bug 1355351: Simplify nsLayoutUtils callers, and make child iterators notice display: contents pseudos. r=heycam
This also happens to fix other bugs, like making display: contents pseudos
animatable, which weren't before.

MozReview-Commit-ID: LhwTPNbFvSZ

--HG--
extra : rebase_source : 785105b08d6bfa15ad257e61b769a263c6810ad0
2017-04-19 12:53:57 +02:00
Wes Kocher da57a3e4df Merge m-c to inbound, a=merge
MozReview-Commit-ID: DimBmdgo95e
2017-04-26 17:35:26 -07:00
Mantaroh Yoshinaga 0b52f5e3fb Bug 1264125 part 10 - Remove unnecessary whitespace and align the colum of variable definition on ComputedTiming.h. r=whitespace-only DONTBUILD
MozReview-Commit-ID: LQR2aypoA7k
2017-04-27 09:10:44 +09:00
Florian Queze 4b1556a5f2 Bug 1355056 - replace (function(args) { /* do stuff using this */ }).bind(this) with arrow functions, r=jaws. 2017-04-27 00:25:45 +02:00
Boris Chiou 600fb7770f Bug 1341372 - Part 1: Let animation-only restyle include css-transition. r=heycam,hiro
Animation-only restyle should include both Animation and Transition
cascade levels.

MozReview-Commit-ID: Jo1sb5fGUC0

--HG--
extra : rebase_source : ddd7d796b93f9e7ced912ec4fa2eb79e7ba58784
2017-04-17 14:22:28 +08:00
Hiroyuki Ikezoe 784bf46abc Bug 1324700 - Servo_ParseProperty() takes nsCSSPropertyID instead of nsACString. r=heycam
MozReview-Commit-ID: Gn90DBlJSS9

--HG--
extra : rebase_source : 444f4188de7e32f5414f2b75046903dc504db1a0
2017-04-15 07:37:34 +09:00
Boris Chiou 2317c8957e Bug 1343753 - Part 6: Move mAnimationGeneration into RestyleManager. r=birtles
So stylo can also use mAnimationGeneration.

MozReview-Commit-ID: KTc8vs2RKMm

--HG--
extra : rebase_source : 52aeb3bf91fa849cbddbedff28418736f96086bb
2017-03-09 17:15:08 +08:00
Cameron McCormack 73701ced74 Bug 1351535 - Part 5: Add EffectCompositor method to pre-traverse within a specific subtree. r=hiro
It's not great that we traverse up the tree looking for the subtree root for
each animating element that is in mElementsToRestyle.  An alternative could
be to traverse the entire subtree and build a hash set of the elements
within it, so that each test in the mElementsToRestyle loop can be done
quickly.  I suspect that most of the time looking up the tree for
each animation will be quicker, but it does have worse worst case behavior.

MozReview-Commit-ID: FWoQ7fD9YZC

--HG--
extra : rebase_source : 688a19f61e3eda9e84228b6f18913e1f4bb09f13
2017-04-04 19:12:54 +08:00
Xidorn Quan 2df49dbac2 Bug 1343964 part 1 - Move URLExtraData into its own header. r=heycam
This patch does the following in addition to a simple move:
* change the type of the pointers from RefPtr to nsCOMPtr
* move it from mozilla::css namespace to mozilla

MozReview-Commit-ID: 72MYq6kWm4s

--HG--
extra : rebase_source : 400fe0d7cc422f22592c302cfd4e457830b77e3e
2017-04-04 10:04:13 +10:00
Carsten "Tomcat" Book 207b516e89 merge mozilla-inbound to mozilla-central a=merge 2017-04-06 12:50:50 +02:00
Mantaroh Yoshinaga 0d0fa5f03f Bug 1338069 - Don't use 'window' object when using getComputedStyle in tests. r=birtles
MozReview-Commit-ID: KWUNCIaF183

--HG--
extra : rebase_source : 93d7ba66d996d2b7fa835da272b509937a71f454
2017-04-06 12:43:47 +09:00
Hiroyuki Ikezoe 50ce1998ae Bug 1311257 - Update test expectations. r=heycam
MozReview-Commit-ID: K3HlC794cCo

--HG--
extra : rebase_source : 03d3df88c1d4ca452ab6d810efb9e7a154768b71
2017-04-06 10:34:51 +09:00
Hiroyuki Ikezoe 79052959a8 Bug 1311257 - Support missing keyframes handling for stylo. r=birtles
MozReview-Commit-ID: 1Iz6By2Y2Gp

--HG--
extra : rebase_source : 94dd3845c271e89f88dc7351b4cea179bd3bb2e5
2017-04-06 10:34:51 +09:00
Hiroyuki Ikezoe e432173483 Bug 1311257 - getKeyframes() returns base computed values in missing keyframes. r=birtles
MozReview-Commit-ID: K8btLtALEfK

--HG--
extra : rebase_source : 1709e9a153790f90e26da7170273474a4a1d2dfd
2017-04-06 10:34:51 +09:00
Hiroyuki Ikezoe 2614ef2eac Bug 1311257 - Use underlying value for missing keyframes. r=birtles,heycam
mBaseStyleValuesForServo is a nsRefPtrHashtable<nsUint32HashKey, RawServoAnimationValue>
In this patch, we use void* instead of exposing nsRefPtrHashtable in FFI
because we just use the hash table as an argument of a C++ function, it means
we don't touch the hash table in Rust at all.

MozReview-Commit-ID: 1wM6NeF2S0t

--HG--
extra : rebase_source : 17908ff84d061e189f21641bf660dc9720b964bc
2017-04-06 10:34:51 +09:00
Hiroyuki Ikezoe fa100db77c Bug 1311257 - Move stuff of KeyframeEffectReadOnly::ComposeStyleRule in Rust. r=heycam
After this, we will implement additive or accumulative calculation
in this Rust function.

MozReview-Commit-ID: 4xAvLz1oTIZ

--HG--
extra : rebase_source : c0672cb1c894eadaaebec94dce2f0d1c1a77d244
2017-04-06 10:34:51 +09:00
Hiroyuki Ikezoe 472261864f Bug 1311257 - Move AnimationPropertySegment in a separate header and expose it in FFI. r=heycam
This will be used for animation value composition in Rust.

MozReview-Commit-ID: Lg4dZrQW1WC

--HG--
extra : rebase_source : e03b19aa7907c122f773b2b06df96aee4fe32ae2
2017-04-06 10:34:50 +09:00
Hiroyuki Ikezoe 80d32932a1 Bug 1311257 - Store base styles for stylo. r=birtles
MozReview-Commit-ID: DcEx4aTDOY0

--HG--
extra : rebase_source : 39d161ca8226b75c6b1c6afec675b8763eb83c1f
2017-04-06 10:34:50 +09:00
Brian Birtles 33041d1214 Bug 1315874 - Drop 'ForElement' from GetStyleContextForElementXXX methods; r=heycam
In the next patch we want to add a method called
GetUnanimatedStyleContextForElementNoFlush but that's much too long. Instead it
seems better to just drop 'ForElement' from all these methods since it should be
fairly obvious we are getting the style context for an element given that the
first argument is an element.

MozReview-Commit-ID: JQKaEuCKV2F

--HG--
extra : rebase_source : 3ba51f3b00d1ec7bc91102629d9c0abb88992fef
2017-04-05 14:39:23 +09:00
Xidorn Quan 2da48b454d Bug 1352025 part 2 - Stop passing in url as string for parsing. r=manishearth
MozReview-Commit-ID: CRgOO7NyYd9

--HG--
extra : rebase_source : 6b04d1c001082740abfc344fdb2a7f0351c3d7d9
2017-04-01 16:17:55 +11:00
Boris Chiou e8365c20d7 Bug 1349808 - Add telemetry for cases when we can't run async animations due to layer size being too large. data-review=bsmedberg, r=birtles,botond,bsmedberg
MozReview-Commit-ID: 61DBw1DHbQA

--HG--
extra : rebase_source : 1941cfb9e0a5ce65e4696ef422a642214176bf49
2017-03-24 15:53:54 +08:00
Xidorn Quan e3e4554871 Bug 1351957 - Create URLExtraData for holding base uri, referrer, and principal. r=heycam
MozReview-Commit-ID: 1wqTb3kvvWh

--HG--
extra : rebase_source : cae3dba21c916ab0f52056bd9db215249b650cd3
2017-03-30 18:54:48 +11:00
Boris Chiou a583863fc8 Bug 1352067 - Part 1: Make sure AnimationValue::{mGecko|mServo} are mutually exclusive. r=birtles,emilio
We will obsolete StyleAnimationValue in the future, and can treat
AnimationValue as a wrapper of RawServoAnimationValue to hide the FFIs
at that moment. For now, we still need both types, so it's better to make sure
they are mutually exclusive in AnimationValue. Therefore, let's add some
assertions.

Besides, I think those FFIs might do many things and it seems those methods
are not critical, so let's move them into the cpp file, so we can remove
some dependencies to avoid re-compiling so many files if someone needs
revise ServoBindings.h.

MozReview-Commit-ID: FJ1uTvEQ7NT

--HG--
extra : rebase_source : 8ef99c659f2721c8425364051db19b66536bccc6
2017-03-31 17:46:37 +08:00
Hiroyuki Ikezoe af52995ddf Bug 1351981 - Remove annotation for crashtests that are supposed to be run on the compositor. r=boris
MozReview-Commit-ID: 9KaPq7sa5UB

--HG--
extra : rebase_source : 81486f79bba74322cdd658636317fd46cebf94ae
2017-03-30 16:58:04 +09:00
Hiroyuki Ikezoe 089cd10211 Bug 1351981 - Enable crashtest, 1333539-1.html and 1333539-2.html. r=boris
MozReview-Commit-ID: 57JBEHFIQgo

--HG--
extra : rebase_source : a41f815bbf2c9a5362775943ca8d1acf91bf4b16
2017-03-30 16:58:04 +09:00
Hiroyuki Ikezoe 7d3b711ee6 Bug 1351898 - Don't set PropertyValuePair.mValue for stylo. r=birtles
Otherwise we hit below assertion in nsCSSValue::DoReset().

 MOZ_ASSERT(NS_IsInCompositorThread() || !ServoStyleSet::IsInServoTraversal());

PropertyValuePair.mValue was introduced for computing paced timing in the case
where there is some invalid values in keyframes. Paced timing has been removed
removed from the spec and stylo will not support paced timing. So we don't need
to set the value for stylo.

MozReview-Commit-ID: 3I8QSvF2jL8

--HG--
extra : rebase_source : 42155d7fac85aa7fb068e8a514867e8f1c27ed30
2017-03-30 11:08:47 +09:00
Boris Chiou f4b25f840f Bug 1336769 - Enable crashtests, 1272475-1.html and 1272475-2.html. r=heycam
MozReview-Commit-ID: 5o4ayOHRm4S

--HG--
extra : rebase_source : 0a7f73c1eeddbb7270783de67593f84cc1c5b8ab
2017-03-27 16:25:48 +08:00
Carsten "Tomcat" Book 1bff8bff6d Merge mozilla-central to autoland 2017-03-28 13:06:52 +02:00
Carsten "Tomcat" Book 5b9719c5fc merge mozilla-inbound to mozilla-central a=merge 2017-03-28 13:03:25 +02:00
Brian Birtles 4a53c81f51 Bug 1343589 - Add a test that reverse() updates animations on the compositor r=hiro
MozReview-Commit-ID: FR8kR7TMl33

--HG--
extra : rebase_source : 8cbe75de11323582567d184373f7025c2f133a74
2017-03-28 14:51:53 +09:00
Brian Birtles 3437435375 Bug 1343589 - Add a crashtest for when reverse() throws r=hiro
I have verified that this test fails without the fix from the previous patch.

MozReview-Commit-ID: Hx8D72nTb32

--HG--
extra : rebase_source : 48b53f86fbcf92db6a5d340d2348fe23003aab0f
2017-03-28 14:51:52 +09:00
Brian Birtles 9a4f3fcecb Bug 1343589 - Add animation mutation observer test for reverse() when it throws an exception r=hiro
This patch adds a test that when reverse throws an exception we don't report
anything to animation mutation observers. I have verified that this added test
fails without the early return added to Animation::Reverse() earlier in this
patch series.

MozReview-Commit-ID: 64yX4G7iaIt

--HG--
extra : rebase_source : 3f29335303c969a8e2ad5ac2c16aba276036b434
2017-03-28 14:51:52 +09:00
Brian Birtles f9b4b144b9 Bug 1343589 - Move setupSynchronousObserver from testcommon.js to test_animation_observers_sync.html r=hiro
This function is only used in test_animation_observers_sync.html. Putting it in
another file makes test_animation_observers_sync.html harder to follow so until
we actually share it with other files we should be it in the one file.

MozReview-Commit-ID: DJXWH4wFWxZ

--HG--
extra : rebase_source : cf5c93f0bee5b03862ad9162c55e1df97b875a6d
2017-03-28 14:51:52 +09:00
Brian Birtles 6c557986cc Bug 1343589 - Add comments to test_animation_observers_[a]sync.html to describe how they differ r=hiro
MozReview-Commit-ID: HxhsaOKDAsq

--HG--
extra : rebase_source : a6d99344126a05a00b33881072e5170845df29e6
2017-03-28 14:51:52 +09:00
Brian Birtles 7a32f654ff Bug 1343589 - Rename animation observer test files r=hiro
As part of this patch series I'd like to add an animation observer test.
However, the current arrangement of test files is quite confusing. We have:

  test_animation_observers.html - Tests that run async only
  test_observers_for_sync_api.html - Tests that can be run synchronously

It's not at all obvious that these are related or that one is related to the
other. In this patch we rename the files so that their relationship is more
obvious. In a subsequent patch we'll add comments to further clarify the
distinction.

MozReview-Commit-ID: CSYL8wruWdK

--HG--
rename : dom/animation/test/chrome/test_animation_observers.html => dom/animation/test/chrome/test_animation_observers_async.html
rename : dom/animation/test/chrome/test_observers_for_sync_api.html => dom/animation/test/chrome/test_animation_observers_sync.html
extra : rebase_source : a8bfde42b9996f172f090e95970e355106757d8a
2017-03-28 14:51:51 +09:00
Brian Birtles 09cda43419 Bug 1343589 - Restore the playbackRate when reverse() throws. r=hiro
MozReview-Commit-ID: FNIZK9yQWyV

--HG--
extra : rebase_source : 32cdcc52ccd8192addc0ed2239f74eb109970597
2017-03-28 14:51:51 +09:00
Wes Kocher c802acc868 Merge m-c to inbound, a=merge
MozReview-Commit-ID: L6QuPmxL0XP
2017-03-27 17:18:39 -07:00
Christopher Bathgate 8a23013745 Bug 1318223 - Use NonOwningAnimationTarget in OwningElementRef. r=boris, r=birtles
--HG--
extra : amend_source : efe698c05bcee0c34d99b8242d8f147373cf2584
2017-03-26 16:46:00 -04:00
Hiroyuki Ikezoe 0ec76c29e2 Bug 1344966 - Post eRestyle_CSSAnimations instead of eRestyle_Self and eRestyle_Subtree. r=heycam
MozReview-Commit-ID: 7azwzIPc45X

--HG--
extra : rebase_source : 5943ab5db1a0a7ca4e77f9373151a5d1387ab25f
2017-03-27 06:17:08 +09:00
Hiroyuki Ikezoe 3183fa83ee Bug 1350754 - Templatize EffectCompositor::UpdateEffectProperties. r=birtles
We will use this function for stylo computed values as well.

MozReview-Commit-ID: IxDg4EZARi3

--HG--
extra : rebase_source : dc6445ab0c836393913d64313c8151f31cd7b523
2017-03-27 19:43:04 +09:00
Hiroyuki Ikezoe 2e2e70805e Bug 1350743 - Rename AnimationPropertySegment::HasReplacableValues to AnimationPropertySegment::HasReplaceableValues. r=birtles
MozReview-Commit-ID: KNwZhFvG5PJ

--HG--
extra : rebase_source : 28819462a86d1ad2050314dc7a5f5a68e69bf7b9
2017-03-27 09:15:26 +09:00
Hiroyuki Ikezoe 7b0ef88536 Bug 1350743 - Re-use nsStyleContext without animations to extract animation values for each property. r=birtles
MozReview-Commit-ID: L4AmCAp0DLn

--HG--
extra : rebase_source : 568be90539c7ffb0c47e03c4a8d1687e5560e87d
2017-03-27 09:15:26 +09:00
Hiroyuki Ikezoe f63f144516 Bug 1350743 - Make KeyframeEffectReadOnly::ResolveBaseStyle return void. r=birtles
Also it's renamed to EnsureBaseStyle.  We didn't use the return value at all.

MozReview-Commit-ID: Cu4rnAP883M

--HG--
extra : rebase_source : 1ced02e7ebd6a3c6c66c45f4a2a0b24e0bce6031
2017-03-27 09:15:26 +09:00
Ting-Yu Lin 4e375689c6 Bug 1322570 Part 4 - Use GetParentAllowServo() in KeyframeEffectReadOnly::UpdateProperties. r=hiro
Per bug 1322570 Comment 7, we could drop the GetParentAllowServo() when we
invoke UpdateProperties() from a SquentialTask, so allow it for now.

MozReview-Commit-ID: 52NauGaz4Zv

--HG--
extra : rebase_source : 617c3310a042ca49023ebad1801a2c283e4e212c
2017-03-20 14:13:01 +08:00
Mats Palmgren 2dd8c9d161 Bug 1333482 part 6 - [css-ui] Manually tweak some tests for 'appearance' changes. r=dholbert
MozReview-Commit-ID: 9cBAQIeS2TG
2017-03-23 22:11:25 -07:00
Wes Kocher 8fb7d84cb4 Merge inbound to central, a=merge
MozReview-Commit-ID: FKkx5SygvHz
2017-03-21 16:08:32 -07:00
Cameron McCormack cf56de72b5 Bug 1302054 - Part 2: Remove no longer useful nsStyleContext::CalcDifference optimization that handles the same-rule-node case. r=dbaron
nsStyleContext::CalcDifference had an optimization where, when we knew
that the old and new style context have the same rule node, we knew that
the only change hints that would need to be handled are those in the
"not handled for descendants" category, generated due to explicit
'inherit' values on reset properties.  This was because any changes due
to differences in inherited properties should only have generated
"handled for descendants" change hints (and thus would already have been
handled on an ancestor).

Before bug 931668, this let us avoid calling CalcDifference on structs
that only would have generated hints that we knew we already would have
handled.  However, after bug 931668, we compare all structs anyway so
that we can set the aEqualStructs outparam, so we don't gain anything
from this optimization.  We can still return these change hints we know
will not need to be handled, and rely on ElementRestyler::CaptureChange
to filter them out.

MozReview-Commit-ID: Ld1s2Js0i6r
2017-03-21 16:33:05 +08:00
Boris Chiou 384142c233 Bug 1343153 - Part 2: Use Servo css-parser for ParseEasing. r=birtles,emilio
We use Servo css-parser to parse keyframe property-value pairs, so we
should also use it to parse easing for Web Animations.

MozReview-Commit-ID: FsfHQaNT2xO

--HG--
extra : rebase_source : 8eb6489f257839f2c0de943b63cc1c04b44ff7a5
2017-03-21 14:27:46 +08:00
Boris Chiou 5daf1f2b75 Bug 1343153 - Part 1: Add some useful constructors for ComputedTimingFunction. r=birtles
In order to avoid creating a temporary nsTimingFunction in some cases and
calling Init(), add some useful constructors to reduce the redundant code.

MozReview-Commit-ID: I8zmWeKl9aw

--HG--
extra : rebase_source : 50a9adc90c26c16fd1dcd7b70c519794b8d406fd
2017-03-17 16:37:49 +08:00
Sebastian Hengst 08eaa88de2 Backed out changeset c5da825e8bd9 (bug 1343153) for timing out in dom/animation/test/crashtests/1278485-1.html, at least on Stylo. r=backout 2017-03-21 11:06:07 +01:00
Sebastian Hengst 1ba83457d7 Backed out changeset 9de875f31238 (bug 1343153) 2017-03-21 11:03:19 +01:00
Boris Chiou 5fdc3654b4 Bug 1349124 - Replace ServoComputedStyleValues with ServoComputedValuesWithParent. r=hiro
MozReview-Commit-ID: 5POa8DRjmc8

--HG--
extra : rebase_source : 5a88f1c30c32dcd6bb728707c066a4b8becfc311
2017-03-21 15:41:23 +08:00
Boris Chiou bc0746fe3d Bug 1343153 - Part 2: Use Servo css-parser for ParseEasing. r=birtles,emilio
We use Servo css-parser to parse keyframe property-value pairs, so we
should also use it to parse easing for Web Animations.

MozReview-Commit-ID: FsfHQaNT2xO

--HG--
extra : rebase_source : f0426f90e4698363b0ce0271943b31418458301d
2017-03-21 14:27:46 +08:00
Boris Chiou e846f398cc Bug 1343153 - Part 1: Add some useful constructors for ComputedTimingFunction. r=birtles
In order to avoid creating a temporary nsTimingFunction in some cases and
calling Init(), add some useful constructors to reduce the redundant code.

MozReview-Commit-ID: I8zmWeKl9aw

--HG--
extra : rebase_source : ef3b73e9e8798b2953f7db6ea5bb43ee12403649
2017-03-17 16:37:49 +08:00
Hiroyuki Ikezoe cb4ce7109c Bug 1340958 - Drop AnimationRule and ServoAnimationRule. r=boris
MozReview-Commit-ID: ClnvyShHpsN

--HG--
extra : rebase_source : c554550264bfedafbf91ed2ed754603fb5c3e4c6
2017-03-17 13:24:42 +09:00
Hiroyuki Ikezoe 3b9f585232 Bug 1340958 - Put computed values into AnimationValueMap instead of hashtable in gecko. r=heycam
Before this patch, we store each computed values in a hashtable,
nsRefPtrHashtable<nsUint32HashKey, RawServoAnimationValue>, for all
KeyframeEffectReadOnly on an element, and convert the ServoAnimationValues of
the hashtable into an nsTArray<ServoAnimationValue*> and then convert
the ServoAnimationValues of the nsTArray into PropertyDeclarationBlock
in rust.  This way was really inefficient.
In this patch, we store the computed values into AnimationValueMap and
convert all AnimationValue in the map into PropertyDeclarationBlock
after EffectCompositor::GetAnimationRule.

MozReview-Commit-ID: EJ2Kl65fVeF

--HG--
extra : rebase_source : e30a9d440dc9855e21b94501b07a3501d31bc345
2017-03-17 13:23:21 +09:00
Hiroyuki Ikezoe 2511ac5d4e Bug 1340958 - Templatize ComposeStyle. r=birtles
Later in this patch series we will replace ServoAnimationRule with a hashmap.
At that point, we would like to pass the hashmap to ComposeStyle. In order
to achieve that, this patch templatizes the 'animation rule' parameter of
ComposeStyle in both Animation and KeyframeEffectReadOnly so that it can
represent a hashmap instead.

MozReview-Commit-ID: H5bMxjN3W8n

--HG--
extra : rebase_source : 58cd9ee1cda51970d35c52b39d2cdab12055e24a
2017-03-17 13:22:13 +09:00
Hiroyuki Ikezoe 2d5908cdb1 Bug 1340958 - Separate ComposeStyle() into servo and gecko versions. r=birtles
MozReview-Commit-ID: FAXf6J9UVjo

--HG--
extra : rebase_source : 606043e23b478558dd931756c0769dd2ef592b3b
2017-03-17 12:48:56 +09:00
Hiroyuki Ikezoe faa7a6f3cb Bug 1340958 - Allocate StyleRule only if we need to compose styles. r=birtles
MozReview-Commit-ID: 6ucsxBAaYRp

--HG--
extra : rebase_source : ec0bd4627d40335c353b79720f7dfb2e4f3c304c
2017-03-17 12:48:51 +09:00
Hiroyuki Ikezoe a3c9c5051e Bug 1340958 - Do not call EffectCompositor::GetServoAnimationRule for print preview. r=heycam
The only one caller of GetServoAnimationRule is Gecko_GetAnimationRule.
There is no risk that pres context is destroyed in Gecko_GetAnimationRule.

MozReview-Commit-ID: 52pxbCiCNoJ

--HG--
extra : rebase_source : 8000e267d1d5706c709f807e11396dda3579c4dc
2017-03-17 12:48:34 +09:00
Hiroyuki Ikezoe a9a15a1807 Bug 1347806 - Fix pseudo nsIAtom for ::before and ::after. r=birtles
cssPseudoElementBeforeProperty and cssPseudoElementAfterProperty are for
CSSPseudoElement.

MozReview-Commit-ID: 3WETv4QeC5

--HG--
extra : rebase_source : b7e902786ca9ebe7c92a573604e15d868c6067a7
2017-03-16 14:01:44 +09:00
BharatR123 9747fa7418 Bug 1302637 - Animation::PostUpdate() calls KeyframeEffectReadonly::RequestRestyle() r=hiro
Also removed the function GetPresContext() in KeyframeEffectReadOnly.cpp
and KeyframeEffectReadOnly.h

MozReview-Commit-ID: AJCgxQ05yVQ

--HG--
extra : rebase_source : d85db8bf29079964e4210e5b3a381e8483d92441
2017-03-14 22:03:22 +05:30
Boris Chiou 2e1fa78918 Bug 1339704 - Part 2 - Filter out unwanted CascadeLevel::Transitions. r=birtles,hiro
We always call TElement::get_animation_rules() for both cascade levels while
there are animations or transitions, so we want to handle the following cases:
1. Have both CascadeLevel::Animations and CascadeLevel::Transitions:
  * We use EffectSet::mPropertiesForAnimationsLevel to filter out
    CascadeLevel::Transitions because transitions are suppressed when both
    are presented.
2. Have CascadeLevel::Animations, but don't have CascadeLevel::Transitions:
  * We also use EffectSet::mPropertiesForAnimationsLevel to filter out
    the unwanted CascadeLevel::Transitions.
3. Don't Have CascadeLevel::Animations, but have CascadeLevel::Transitions:
  * EffectSet::mPropertiesForAnimationsLevel doesn't work for this case.
    In Gecko, mElementsToRestyle can help us to filter out the unwanted
    CascadeLevel::Animations, However, mElementsToRestyle is cleared in
    Pre-Traversal, so now we rely on the cascade ordering of transitions to
    override animations. I think we still need to optimize this eventually.
4. No animations:
  * EffectSet helps us to check if there is any animations/transitions.

Therefore, we need to call MaybeUpdateCascadeResults(), which updates
mPropertiesForAnimationsLevel, in Pre-Traversal.

MozReview-Commit-ID: IHYw56EX7Ta

--HG--
extra : rebase_source : 4d5eb1335cdce9bf54c9646db1fba72ca3f2c70b
2017-03-13 21:09:50 +08:00
Boris Chiou a4aedd5a93 Bug 1339704 - Part 1 - Rename nsCSSPropertyIDSet::Invert as Inverse. r=hiro
This makes it more obvious that the object is not being modified but a
new object is being returned.

MozReview-Commit-ID: A6dH8f12h5A

--HG--
extra : rebase_source : b2f8de2e685129552c598a4be499d703e1a73b6b
2017-03-14 11:30:20 +08:00
BharatR123 c57b3be37c Bug 1302888 - Replace GetPresContext() with nsContentUtils::GetContextForContent() to obtain nsPresContext* in dom/animation r=hiro
Edited all function calls in KeyFrameEffectReadOnly.cpp and one function call in EffectCompositor.cpp

MozReview-Commit-ID: BzSHLZna4xX

--HG--
extra : rebase_source : ee5a8196ce73e67308974b7fb5be19f61982320b
2017-03-13 20:39:49 +05:30
Emilio Cobos Álvarez fb3b444270 Bug 1303229: Get the proper viewport size for animations. r=heycam,hiro
While we're here, don't re-recompute the default computed values, just grab them
from the device.

MozReview-Commit-ID: GqqnPLIwN2F
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>
2017-03-11 14:29:38 +01:00
Hiroyuki Ikezoe 11184fb1e8 Bug 1341985 - Trigger the second traversal for updating CSS animations in the case of Servo_ResolveStyleLazily. r=heycam
MozReview-Commit-ID: 7E4unP9M7FQ

--HG--
extra : rebase_source : ee43d00ab84bcd6071ee7bb4cc1de4438229ea1b
2017-03-10 11:53:19 +09:00
Hiroyuki Ikezoe 843466ec0d Bug 1341985 - Trigger the second traversal for updating CSS animations. r=birtles,heycam
The restyle request during restyling is a result of creating/updating/removing
CSS animations that will come from a SequentialTask which will be implemented
in a subsequent patch.

MozReview-Commit-ID: JoAqvcN3y51

--HG--
extra : rebase_source : fdff59771b81518509dfd52e73d3f63ddb82390d
2017-03-10 11:53:19 +09:00
Manish Goregaokar 07fc7c5b25 Bug 1329093 - Part 1: stylo: Handle SVG presentation attributes; r=bz
MozReview-Commit-ID: 9cymo3c9HIn
2017-03-09 17:46:21 -08:00
Hiroyuki Ikezoe 11c8680e9d Bug 1344619 - Part 7: Drop EffectCompositor::ClearElementsToRestyle. r=birtles
MozReview-Commit-ID: DlTj2OR0wI0

--HG--
extra : rebase_source : 33307226315e6fb3facb000214e27d5582279dd6
2017-03-09 05:20:17 +09:00
Hiroyuki Ikezoe 9d7c539837 Bug 1344619 - Part 5: Introduce EffectCompositor::PreTraverse() for an element. r=birtles
MozReview-Commit-ID: KCLkwIE8LTM

--HG--
extra : rebase_source : 71aa7d27ad4c3fc59898b97e494e2d7ea43044ad
2017-03-09 05:20:17 +09:00
Hiroyuki Ikezoe 90d73a1135 Bug 1344619 - Part 2: Introduce EffectCompositor::PreTraverse(). r=birtles
MozReview-Commit-ID: 6ijDJttB9eo

--HG--
extra : rebase_source : 451601b1daf37e7b36d0b8ecda71c34388b78412
2017-03-09 05:20:17 +09:00
Hiroyuki Ikezoe f9b0c33a05 Bug 1344619 - Part 1: Introduce WillCompose() to update various state that we need to update as the result of ComposeStyle(). r=birtles
MozReview-Commit-ID: JznBR3OghKG

--HG--
extra : rebase_source : 95acb5dc8cdfc81d73b8033cb97eb0c95ff69153
2017-03-09 05:20:17 +09:00
Carsten "Tomcat" Book f6885163cd Merge mozilla-central to mozilla-inbound 2017-03-08 14:28:34 +01:00
Michael Layzell befc7b0924 Bug 1331434 - Part 9: Return after ErrorResult::Throw in /dom, r=ehsan
MozReview-Commit-ID: CWjx4L8LTr9
2017-03-07 19:06:48 -05:00
Boris Chiou af4598f9ae Bug 1248340 - Part 4: Implement Frames in the style system. r=dholbert
Use eCSSUnit_Function to store the frames timing function. Also, add one more
css keyword: frames.
The following changes are included in this:
1. Parser changes.
2. Serialization.
3. Computation in nsRuleNode.
4. Invalid and other values in property_database.js

MozReview-Commit-ID: 887QcXHQ2pU

--HG--
extra : rebase_source : ca0135380ea432cb69c4f36cf502d404e04999e5
2017-02-24 14:50:08 +08:00
Boris Chiou aa57157303 Bug 1248340 - Part 3: Implement Frames for OMTA. r=birtles
MozReview-Commit-ID: k3Wvl4ofe7

--HG--
extra : rebase_source : edbf827ffe102a5353c41078bd2b14c8b56eb23e
2017-02-26 15:34:02 +08:00
Boris Chiou 98f895d166 Bug 1248340 - Part 2: Implement Frames in ComputedTimingFunction. r=birtles
MozReview-Commit-ID: 92MAv3OD8Tu

--HG--
extra : rebase_source : 0e14ade9e9f022b641605e2c0f368e3a6c950c18
2017-02-24 16:59:02 +08:00
Boris Chiou 89f3bc4396 Bug 1248340 - Part 1: Add the type of Frames in nsTimingFunction. r=birtles
MozReview-Commit-ID: GPn8D9gwjqa

--HG--
extra : rebase_source : 25e9f5f5d94545e26e467fe8666c03d8d222cda2
2017-02-24 14:34:08 +08:00
Daisuke Akatsuka fc79ee83bb Bug 1339332 - Part 4: Drop setting 'add' composite operation for missing keyframes in script animation. r=hiro
MozReview-Commit-ID: 1gwWlhdvHO5

--HG--
extra : rebase_source : cef8a1a0a1173e8d0a7fdffadca870dcbaf88480
2017-03-08 10:07:09 +09:00
Daisuke Akatsuka 6f8067bb31 Bug 1339332 - Part 3: Test for missing keyframes in CSS Animation. r=hiro
MozReview-Commit-ID: 85epAy0Kd0g

--HG--
extra : rebase_source : 5b75f1c7ebd5b53425da624a678b73c4cf1c6a97
2017-03-08 10:07:09 +09:00
Daisuke Akatsuka 6a4003cbb2 Bug 1339332 - Part 1: Introduce neutral value concept for missing keyframe in CSS Animation. r=birtles,hiro
MozReview-Commit-ID: F3qvRY3SRAp

--HG--
extra : rebase_source : fa05c4c47000a348bfa3f01eb2cae9b082b882f5
2017-03-08 10:07:08 +09:00
Hiroyuki Ikezoe 9175297392 Bug 1345280 - A test case that makes sure we don't compose anmation styles while computed timing is not changed. r=boris
MozReview-Commit-ID: JMcXU3FBnU6

--HG--
extra : rebase_source : 73842c040b5fb9ea3bb7accc3de1e2165fdd3377
2017-03-08 09:09:44 +09:00
Hiroyuki Ikezoe 84aa371271 Bug 1344598 - Use nsIDocument::IsStyledByServo to check we are using servo or not. r=boris
MozReview-Commit-ID: 1yQUAwHy51

--HG--
extra : rebase_source : 2cacc29fe060fae75ccf7df638b1b060ec774388
2017-03-06 11:42:57 +09:00
Boris Chiou bb298790fe Bug 1342957 - Fix incorrect MOZ_ASSERT in AnimationEffectReadOnly. r=hiro
MozReview-Commit-ID: 6amRZ9AGudQ

--HG--
extra : rebase_source : 350c0d64f371aea0568fc25e345e5de733142abc
2017-02-28 01:38:52 +08:00
Hiroyuki Ikezoe f268b13da5 Bug 1341987 - Part 4: Use nsIFrame's nsPresContext instead of getting from element. r=birtles
MozReview-Commit-ID: 3pWt7d2MKsZ

--HG--
extra : rebase_source : cb34e1aa141d3a6aaa13f3482c8abf1cf83c14f9
2017-02-27 11:34:48 +09:00
Hiroyuki Ikezoe feb893ec07 Bug 1341987 - Part 3: Update the last refresh time for transform only when we send transform animations to the compositor. r=birtles
We don't need to update the time during composing style, we just need to
update when transform animations are sent to the compositor. The most
recent refresh time of nsRefreshDriver should be the same in either side.
If the time is skewed, that means we skip composing style, if it happened
that's another bug.

MozReview-Commit-ID: Dxtuocf1ml1

--HG--
extra : rebase_source : 93e8fad24948b1c0b89fa7946639154a82f4a3ae
2017-02-27 11:34:46 +09:00
Hiroyuki Ikezoe 821747a2d1 Bug 1341987 - Part 2: Drop cascade level from last refresh time for transform. r=birtles
We no longer need separate time for cascade levels respectively since we do
send all type of animations on the same element to the compositor regardless
of cascade level.

MozReview-Commit-ID: 7cGQGE3yHvm

--HG--
extra : rebase_source : 009e0cc510faea2b83760c141da545e87de8aeaf
2017-02-27 11:30:56 +09:00
Hiroyuki Ikezoe 0911fca845 Bug 1341987 - Part 1: Rename AnimationRuleRefreshTime to LastTransformSyncTime. r=birtles
It's just for transform animations on the compositor.

MozReview-Commit-ID: 288CcG4kko4

--HG--
extra : rebase_source : 943f67beeecd3c05b7ae2c6608b7a725c47f2b23
2017-02-27 11:29:27 +09:00
Boris Zbarsky 5f864e31c5 Reenable several crashtests that no longer crash or leak or time out with stylo. No bug, r=bzbarsky
MozReview-Commit-ID: 88XjZyn4mnv
2017-02-24 15:22:37 -05:00
Hiroyuki Ikezoe f78e12aaf6 Bug 1338927 - Part 8: Drop Servo_AnimationValues_Populate. r=birtles
MozReview-Commit-ID: 83WCbKL35h

--HG--
extra : rebase_source : e56a070443a0502b1a69a7ec8bcab2dccbf09557
2017-02-23 09:52:44 +09:00
Hiroyuki Ikezoe bcc1bbe00b Bug 1338927 - Part 7: In case of stylo, use servo computed values instead of nsStyleContext to update properties. r=birtles
We convert nsStyleContext* to servo's computed values in UpdateProperties()
since it is called from various places (e.g. SetTarget()) with nsStyleContext*.

MozReview-Commit-ID: KxPjm82Crl

--HG--
extra : rebase_source : 04d3385dad97dad905079e21b7305c70afb23b8a
2017-02-23 09:52:44 +09:00
Hiroyuki Ikezoe df8772b2fa Bug 1338927 - Part 6: Templatize SetKeyframes(). r=birtles
We have SetKeyframes(nsStyleContext*) for the same reason
of UpdateProperties(nsStyleContext*).

MozReview-Commit-ID: 7WjMU66MzpU

--HG--
extra : rebase_source : b5d60e9153e94cba6bb28184eb961c67ef85398b
2017-02-23 09:52:44 +09:00
Hiroyuki Ikezoe deb07d6f55 Bug 1338927 - Part 5: Templatize UpdateProperties(). r=birtles
We had to implement UpdateProperties(nsStyleContext*) explicitly
since there are some calls of UpdateProperties() with RefPtr<nsStyleContext>.
Without this compiler tries to use template function instead.

MozReview-Commit-ID: 72NgwmJ4kcx

--HG--
extra : rebase_source : 30ac40c8ebc6d5e6bdf4326e6436daa95645ffc7
2017-02-23 09:52:44 +09:00
Hiroyuki Ikezoe c7df70030a Bug 1338927 - Part 4: Templatize BuildProperties(). r=birtles
We'd like to use template to manage functions that have almost the same functionality
both on stylo and gecko instead of branching in each functions because it will be
easier to maintain stylo and gecko for a while.

MozReview-Commit-ID: 25ukMpOeqLj

--HG--
extra : rebase_source : 145b66695f9772f5cb527bbcf15b5a3fc2e34510
2017-02-23 09:52:44 +09:00
Hiroyuki Ikezoe b5a2377fb5 Bug 1338927 - Part 3: Introduce ServoComputedStyleValues. r=birtles
The operator bool() will be used in the case where we call
MOZ_ASSERT() for const ref of this struct.

MozReview-Commit-ID: tCtpXmPJvV

--HG--
extra : rebase_source : f878c49ab93d8173f9de99b500efc280db886ea3
2017-02-23 09:52:43 +09:00
Hiroyuki Ikezoe 64f3fa3651 Bug 1338927 - Part 2: Generate ComputedKeyframeValues array from servo's computed values. r=birtles,manishearth
Servo_GetComputedKeyframeValues is almost the same as what we do in
KeyframeUtils::GetComputedKeyframeValues() for Gecko. Unlike the function
for Gecko, this function does not allocate each ComputedKeyframeValues element,
the allocation has been done before calling Servo_GetComputedKeyframeValues.

MozReview-Commit-ID: LRbriWoal2l

--HG--
extra : rebase_source : 785bb1bc6a62a2f9764fff09f5047942855e3c25
2017-02-23 09:52:43 +09:00
Hiroyuki Ikezoe 5de465377c Bug 1338927 - Part 1: Drop nsStyleContext argument from KeyframeUtils::GetAnimationPropertiesFromKeyframes. r=birtles
It's not used at all.

MozReview-Commit-ID: 2vAmlDhp12G

--HG--
extra : rebase_source : e1f9b226ff4d3fdd6f6bb6b03d6b157c5d153598
2017-02-23 09:52:43 +09:00
Shing Lyu 18c071c4c5 Bug 1337229 - Implement the deep operator== for RawServoAnimationValue r=hiro,manishearth
MozReview-Commit-ID: BiNNrIFXqtf

--HG--
extra : rebase_source : 78586bdf49b9d96db81af3e04b4a7522c1efce02
2017-02-24 15:05:23 +08:00
Jamie Nicol f06e779e2d Bug 1339578 - Remove min active layer size for animations; r=mattwoodrow
Even for very small layers we want to avoid doing work on the main
thread.

At the same time, however, increase the minimum active layer size for
animations which come from restyles. These involve the main thread
anyway, so there is less to be gained from using an active
layer. Since switching items between active and inactive can have
large knock-on effects, we want to make sure it really is worth making
the layer active.

MozReview-Commit-ID: 8N6xlVW4Dp3

--HG--
extra : rebase_source : bd9a97899faaf187e5e148126711bb0ff5a29ee6
2017-02-09 18:00:32 +00:00
Iris Hsiao 7a962a70f2 Backed out changeset 2d21596af124 (bug 1337229) for developer's request 2017-02-22 17:40:13 +08:00
Shing Lyu 6ebbfba25f Bug 1337229 - Implement deep operator== for RawServoAnimationValue r=hiro,manishearth
MozReview-Commit-ID: Euvv9zarFe3

--HG--
extra : rebase_source : b67bb89ed35dca04d6dc81afdfbea701fdede449
2017-02-17 14:39:24 +08:00
Xidorn Quan 444ba0fc97 Bug 1340033 - Remove dependency from StyleAnimationValue.h to ServoBindings.h. r=hiro
MozReview-Commit-ID: 79czvLmftmv

--HG--
extra : rebase_source : 57d7a55ed48a0e9475076fa930226b6ea99a4e22
2017-02-16 15:14:06 +11:00
Boris Chiou a6378fdab6 Bug 1338087 - Part 3: Remove asserts-if on crashtest 1244595-1.html. r=heycam
MozReview-Commit-ID: 7L2p7WvroSP

--HG--
extra : rebase_source : e6cd578d56921b34b5bd2bd38006443418cce69a
2017-02-13 13:55:29 +08:00
Boris Chiou 921bec7548 Bug 1338087 - Part 2: Drop the computation of StyleAnimationValue on stylo. r=hiro
MozReview-Commit-ID: 4oAzC6m2vie

--HG--
extra : rebase_source : 139674c8059a918b6850b74e4bdeb8a49b4a2571
2017-02-10 15:51:00 +08:00
Boris Chiou 62bf2f991d Bug 1338087 - Part 1: Don't apply paced spacing on stylo. r=hiro
To avoid using StyleAnimationValue on stylo, we should skip
ApplySpacing, which means We always fall back to distribute spacing on stylo.

MozReview-Commit-ID: 9DNwhOI8saf

--HG--
extra : rebase_source : c535139a8171bcdc874fef6bc1a12045957de9e1
2017-02-10 16:37:45 +08:00
Cameron McCormack f63cdecde2 Bug 1297899 - Part 6: Move RestyleManagerHandle functionality into RestyleManager. r=bholley
MozReview-Commit-ID: 7lsti0bGzNr

--HG--
extra : rebase_source : 13c64026190afe5de25f540adb6deea9f518149f
2017-02-13 11:21:33 +08:00
Xidorn Quan 95c1b23bd9 Bug 1339341- Downgrade several stylo errors to warnings. r=heycam
MozReview-Commit-ID: 2Sa8dS8uSo5

--HG--
extra : rebase_source : c6809309bbef5faf458b56018b964619ff386238
2017-02-14 18:26:10 +11:00
Mantaroh Yoshinaga b9fcaa1663 Bug 1302648 part 9 - Add test of setting target effect of CSS Animations. r=birtles
MozReview-Commit-ID: 6MVVFY4uJC4

--HG--
extra : rebase_source : 3b176090e54ef4cc51eaf4ea3f31815b03e9f1bc
2017-02-10 12:32:45 +09:00
Mantaroh Yoshinaga e43bd142f6 Bug 1302648 part 8 - Add animationcancel tests. r=birtles
MozReview-Commit-ID: 44nT8BBNgzT

--HG--
extra : rebase_source : d52d56c08e0cee6c29a4926429fbad227ae19c66
2017-02-10 12:32:45 +09:00
Mantaroh Yoshinaga 073bbe8e59 Bug 1302648 part 7 - More simple animation event dispatch tests. r=birtles
MozReview-Commit-ID: 1fJD75QSkxf

--HG--
extra : rebase_source : ac459b6a664fb97332f2a061602169744e4b057c
2017-02-10 12:32:45 +09:00
Mantaroh Yoshinaga fa7dee3362 Bug 1302648 part 4 - Call UpdateTiming() after removing the animation from the timeline. r=birtles
We will need to remove animation from timeline before calling Animation::UpdateTiming() in order to fire the cancel event.
In bug 1264125, we request one more tick after calling Animation::Cancel(), however we won't need to call this request if we apply this changeset.

MozReview-Commit-ID: h0dxUdtgkl

--HG--
extra : rebase_source : ac96209b28fdc781bf3787d348f2ae989e695640
2017-02-10 12:32:44 +09:00
Phil Ringnalda df4305e633 Merge m-c to autoland 2017-02-12 15:31:37 -08:00
Hiroyuki Ikezoe ca14d9287e Bug 1338769 - Don't move const reference into AnimValuesStyleRule. r=birtles
MozReview-Commit-ID: 8koosLn9VKn

--HG--
extra : rebase_source : 01147a281b6d823766c25470d02efe1aa89ce1f8
2017-02-12 08:30:22 +09:00
Hiroyuki Ikezoe 392ed0305b Bug 1331704 - Part 3: Drop all of unused stuff. r=birtles a=abillings
MozReview-Commit-ID: BWAC0iZLw6t
2017-02-11 19:11:45 +09:00
Hiroyuki Ikezoe 06cde8eda0 Bug 1331704 - Part 2: Resolve base styles during UpdateProprties. r=birtles a=abillings
EnsureBaseStyle() requires an already resolved nsStyleContext
and resolves the base style by ResolveStyleByRemovingAnimation().

MozReview-Commit-ID: BHqJiBJspQY
2017-02-11 19:11:45 +09:00
Hiroyuki Ikezoe 8ec82eeec6 Bug 1331704 - Part 1: Store base styles in KeyframeEffectReadOnly instead of EffectSet. r=birtles a=abillings
Now we dropped mNeedsBaseStyleSet bit set.

MozReview-Commit-ID: Gv2rU0jpyk1
2017-02-11 19:11:45 +09:00
Brian Birtles 492acb1b5c Bug 1338404 - Fix keyframe handling for single-valued lists r=hiro
MozReview-Commit-ID: 5MNSDm3Qr8b

--HG--
extra : rebase_source : 97f89e50d0e28fae206c29e6dee575493289e2eb
2017-02-10 15:21:15 +09:00
Carsten "Tomcat" Book 3ed98bee2a merge mozilla-inbound to mozilla-central a=merge 2017-02-10 13:49:56 +01:00
Boris Chiou 606e52ba0f Bug 1337313 - Part 2: Add AnimationValue::SerializeSpecifiedValue. r=hiro
Move the implementation of uncomputing to string into AnimationValue,
and add one more FFI for RawServoAnimationValue.

MozReview-Commit-ID: JFnXnGO3mlp

--HG--
extra : rebase_source : 83c0e084ef4202a5c98c668d68bfe9066196d735
2017-02-09 11:33:17 +08:00
Boris Chiou ac7c271b7f Bug 1337313 - Part 1: Use AnimationValue in CreatePropertyValue. r=hiro
Replace the argument type with AnimationValue.

MozReview-Commit-ID: IeydVOLKTB9

--HG--
extra : rebase_source : 9537e40c9ffa16919a08765daa5d12e020e5d17c
2017-02-08 16:15:18 +08:00
Hiroyuki Ikezoe a0e80666fe Bug 1333846 - Part 2: Evaluate scale values for additive or accumulative animations. r=birtles a=abillings
MozReview-Commit-ID: LSKJNH5OJbs
2017-02-09 11:28:47 +09:00
Hiroyuki Ikezoe 4047570520 Bug 1333846 - Part 1: Move ContainsAnimatedScale() codes into dom/animation/. r=birtles a=abillings
MozReview-Commit-ID: 6bWeTfCmjtd
2017-02-09 11:28:47 +09:00
Cameron McCormack 71d4bbc431 Bug 1334735 - Part 2: Add separate flag to track need to flush throttled animations. r=bz,birtles
MozReview-Commit-ID: 6Vi3laKcbmG
2017-02-10 10:42:28 +08:00
Cameron McCormack b2ee81223c Bug 1334735 - Part 1: Move need style/flush flags from document to pres shell. r=bz
MozReview-Commit-ID: 2Amf9yGRiJA
2017-02-10 10:42:27 +08:00
Boris Chiou 155c2acd50 Bug 1335942 - Part 2: Use mozilla::AnimationValue in AnimationPropertySegment. r=hiro,manishearth
MozReview-Commit-ID: L6U1A223jsa

--HG--
extra : rebase_source : 26d8ec4386443d6526fed2f4926c6e4519e6bbd0
2017-02-04 13:57:08 +08:00
Boris Chiou 13d39b9757 Bug 1335942 - Part 1: Introduce mozilla::AnimationValue. r=hiro,manishearth
Currently, we have StyleAnimationValue for Gecko and
RawServoAnimationValue for Servo, and use this struct to wrap them to
avoid the duplicated code.

MozReview-Commit-ID: ATDBSCOX2C5

--HG--
extra : rebase_source : 85991ef5e23a445ae6302264508d1c06a46c0e29
2017-02-08 11:00:36 +08:00
Brian Birtles 5ba8812302 Bug 1332206 - Don't clamp steps timing functions outside [0, 1] range; r=hiro
MozReview-Commit-ID: AiSdxQvU2mj

--HG--
extra : rebase_source : 77fb266b62a3a93ac134c1d65d1107c0bb8a110d
2017-02-08 09:25:31 +09:00
Sebastian Hengst 0264cdf6be Bug 1336311 - Change code comments with http://hg.mozilla.org to https://. r=gps
For components also referencing it in code, see the blockers of bug 1336311.

MozReview-Commit-ID: 4tUZ24HKBWy

--HG--
extra : rebase_source : ec16149f525b9b7eaca7f96f1369929d21497121
2017-02-07 17:52:56 +01:00
Mantaroh Yoshinaga 1ba8149d5d Bug 1336899 - Should not fire the transitioncancel after ending CSS Transition. r=birtles
MozReview-Commit-ID: IrqNNjVg0xg

--HG--
extra : rebase_source : 769e4646375d41b5621ee71c8f0ce5eb44bae8d1
2017-02-06 16:21:01 +09:00
Hiroyuki Ikezoe af7c9e29b7 Bug 1326306 - Skip test_restyles.html on Android x86. r=gbrown
MozReview-Commit-ID: AHp28FajVoT

--HG--
extra : rebase_source : 045de247f860c249f6d9f982fa507d6070460bf5
2017-02-02 12:55:59 +09:00
Boris Chiou 015e8b8198 Bug 1324554 - Part 3: More tests for test_animation_properties.html. r=hiro
MozReview-Commit-ID: 6MkkP8yNGvg

--HG--
extra : rebase_source : 091a1d72747b445a80c255bcc09e33fe23760446
2017-02-02 11:05:35 +08:00
Boris Chiou 3a9474ac19 Bug 1324554 - Part 2: Add a crash test. r=hiro
MozReview-Commit-ID: GCeqmQm9kIb

--HG--
extra : rebase_source : ee3011cbce2594e0e0ada38b6744c3f354a1aa57
2017-01-31 15:39:28 +08:00
Boris Chiou eb057d903d Bug 1324554 - Part 1: Filter out zero-length segments earlier. r=hiro
We need to filter zero-length segments (i.e. entries with the same
offsets) before handle missing final keyframes.

MozReview-Commit-ID: DGJPrNRXlmd

--HG--
extra : rebase_source : e5a56fb9b8d41fedf2458aee8ae2d8bd806451b6
2017-01-31 23:30:19 +08:00
Hiroyuki Ikezoe f6710ec790 Bug 1333539 - Part 2: Send animations with null-timeline to the compositor if necessary. r=birtles
MozReview-Commit-ID: KJf7B8AuAzo

--HG--
extra : rebase_source : ac56bfe22d19dfb27640e76c2a520958bc93207d
2017-02-02 15:11:29 +09:00
Hiroyuki Ikezoe e07498e3e8 Bug 1333539 - Part 1: Do not try to send animations without timeline. r=birtles
1333539-2.html is the test case that crashes without |!aAnimation->GetTimeline()|
check in AddAnimationForProperty().

MozReview-Commit-ID: 8UxYL8o63E1

--HG--
extra : rebase_source : af3247df257bc79e507113e2843854f478675a5b
2017-02-02 15:11:15 +09:00
Hiroyuki Ikezoe 97a3868830 Bug 1334982 - Convert animation restyle hints only if we are not in process of restyling. r=heycam
MozReview-Commit-ID: 4pWeWhGaTJv
2017-01-31 16:37:39 +09:00
Carsten "Tomcat" Book 86d6d898a4 Merge mozilla-central to mozilla-inbound 2017-01-30 16:02:19 +01:00
Carsten "Tomcat" Book 29cd257175 merge mozilla-inbound to mozilla-central a=merge 2017-01-30 15:59:14 +01:00
Cameron McCormack 9c4ea5685f Bug 1334768 - stylo: Back out 800030115d2e and 404506488cfb for being completely wrong due to bug 1334938.
MozReview-Commit-ID: 8CGTqmtlguT
2017-01-30 16:49:54 +08:00
Florian Quèze bdc1ffa608 Bug 1334831 - script-generated patch to use .remove() instead of .parentNode.removeChild, r=jaws. 2017-01-30 08:10:22 +01:00
Joel Maher 3d044d99d0 Bug 1334541 - add BUG_COMPONENT to dom/animation/* files. r=hiro
MozReview-Commit-ID: Bnyj9mWOYms
2017-01-29 06:51:47 -05:00
Cameron McCormack 7805d4716e Bug 1334768 - stylo: Test expectation adjustments for 2017-01-29 merge.
MozReview-Commit-ID: FFmvs6SHIwW
2017-01-29 15:31:56 +08:00
Hiroyuki Ikezoe 9ce5c619b0 Bug 1328787 - Part 1: Factor out Keyframe and PropertyValuePair into Keyframe.h. r=heycam
KeyframeEffectReadOnly.h has lots of unnecesarry stuff for stylo for now, so
is split stuff which needs for stylo into Keyframe.h.
2017-01-29 12:58:23 +09:00
Boris Chiou 56b53b069d Bug 1324691 - Part 4: Remove conditions on some crashtests. r=heycam
We should pass these animation tests now:
* 1216842-3.html
* 1216842-4.html
* 1278485-1.html
* 1290535-1.html
* layout/style/crashtest/1290994-1.html
* layout/style/crashtest/1290994-2.html
* layout/style/crashtest/1290994-3.html

And these tests still need to be verified by Bug 1334036.
* 1216842-1.html
* 1216842-2.html
* 1216842-5.html
* 1216842-6.html

MozReview-Commit-ID: 1qLcS9ovsYp

--HG--
extra : rebase_source : 7b013fd62a79352d429e2bf28246a2587a327db5
2017-01-27 14:38:55 +08:00
Boris Chiou dd957f850b Bug 1324691 - Part 1: Use warnings instead of assertions for unsupported OMTA. r=heycam
Make FindAnimationsForCompositor return false because we don't support
OMTA, and use warnings, instead of assertions, because animations sill
work.

We call RequestRestyle(Layer) not only for OMTA but also for
non-compositor-driven animations, so just skip the animation generation part,
and use warnings, instead of assertions.

MozReview-Commit-ID: LNw5aC8jOvh

--HG--
extra : rebase_source : e573c2ec8ef4b32796764e869dc3e1fd58cfa6cb
2017-01-26 15:27:44 +08:00
Mantaroh Yoshinaga 3ad37c274f Bug 1308099 part 1 - Rename AnimationPhase::Null to AnimationPhase::Idle. r=hiro
In Web Animations specification, if the animation effect is in none of the any phase, it define as 'Idle' phase. [1]
But, in the gecko, it defined as 'Null' phase.

So we will need to use 'Idle' phase for consistency.

[1] https://w3c.github.io/web-animations/#idle-phase

MozReview-Commit-ID: FlPpYOqdM4X

--HG--
extra : rebase_source : ec294c84f9c77a42d6128e3d43380b80fc130513
2017-01-25 15:43:57 +09:00
Boris Chiou a7cc28900f Bug 1317209 - Part 7: Skip some crash tests due to unimplemented features. r=emilio,heycam
MozReview-Commit-ID: ClB3wro1Q7D

--HG--
extra : rebase_source : 56ce49409109b763695ec15369ab3e17b497afc9
2017-01-25 11:18:55 +08:00
Boris Chiou d45e2346f6 Bug 1317209 - Part 6: Support transition cascade level. r=heycam
Implement the mapping between EffectCompositor::CascadeLevel in Gecko and
EffectCompositor_CascadeLevel in Servo, so we can pass it as a parameter into
Gecko_GetAnimationRule.

MozReview-Commit-ID: GRedooyGE8c

--HG--
extra : rebase_source : c18d54dabb093242c66d46be8ca03424a2c6ca78
2017-01-24 15:33:10 +08:00
Boris Chiou f338c9e47d Bug 1317209 - Part 5: Trigger composeStyle if there is an animation. r=heycam
1. Add one new FFI, Gecko_GetAnimationRule, which will try
   to update the animation rule and retrieve a ServoAnimationRule
   from EffectSet.
2. Add GetServoAnimationRule, which calls Animation::ComposeStyle and updates
   mElementsToRestyle.
3. There is no eRestyle_{CSSAnimations|CSSTransitions}, so we use
   eRestyle_Self and eRestyle_Subtree for stylo.

MozReview-Commit-ID: 9RpJurPSFMk

--HG--
extra : rebase_source : 6f1246b73a920aee86faeeaccc42b7f51ed2a6c8
2017-01-24 15:27:56 +08:00
Boris Chiou e408a629aa Bug 1317209 - Part 4: Don't ref-count nsDOMNavigationTiming in DocumentTimeline. r=heycam
nsDOMNavigationTiming is not thread-safe ref-counted, so it's better not to
put it into RefPtr because we might call those functions from servo side.
Actually, nsDOMNavigationTiming is held by the document, and the document
must still live in these functions.

MozReview-Commit-ID: AyZ4k749btm

--HG--
extra : rebase_source : 06c0f3654a32483594b80042ec854d3c09a21d9c
2017-01-13 17:34:38 +08:00
Boris Chiou 6ed12ee8b7 Bug 1317209 - Part 3: Add constness to GetEffectSet. r=hiro
We need to call GetEffectSet() from Servo code, which passes an
immutable reference to GeckoElement, so it's better to make dom::Element
const.

MozReview-Commit-ID: GqQEB7BwkJA

--HG--
extra : rebase_source : 4b025f56949d8327781be26d1607e6d9f4668f2f
2017-01-13 17:06:35 +08:00
Boris Chiou 93204df88d Bug 1317209 - Part 2: Call Servo's Interpolation from Gecko. r=heycam,manishearth
1. Call Servo's interpolation from KeyframeEffectReadOnly::ComposeStyle().
2. Store the results into ServoAnimationRule.

MozReview-Commit-ID: LOp2mbXforg

--HG--
extra : rebase_source : eda5e275e81f2413b2a729e8d06663eae496c15c
2017-01-24 15:21:52 +08:00
Boris Chiou 05b18b1257 Bug 1317209 - Part 1: Introduce ServoAnimationRule and implement uncompute FFI. r=heycam,manishearth
1. Introduce ServoAnimationRule, which is an equivalent of AnimValuesStyleRule.
2. Wrap ServoAnimationRule and AnimValuesStyleRule into a struct, and
   use it as the parameter of Animation::ComposeStyle and
   KeyframeEffectReadOnly::ComposeStyle.
3. Uncompute the RawServoAnimationValues in ServoAnimationRule when we
   need it.

MozReview-Commit-ID: HahXDYBCAhH

--HG--
extra : rebase_source : cd8c6f3a8409abf97f04af888953ff0e77d98348
2017-01-24 15:19:18 +08:00
Hiroyuki Ikezoe 36f0781758 Bug 1333418 - Don't exceed index of KeyframeValueEntry more than entry's length. r=birtles
MozReview-Commit-ID: FMmUiWjtLDM

--HG--
extra : rebase_source : d69a98763b899b64ebe4339984c3b84d9f0976d5
2017-01-30 12:51:04 +09:00