Commit graph

28 commits

Author SHA1 Message Date
bors-servo
9e528b8124
Auto merge of #26806 - mrobinson:animations-cascade, r=emilio
Include animations and transitions in the cascade

Instead of applying animations and transitions to styled elements,
include them in the cascade. This allows them to interact properly with
things like font-size and !important rules.

<!-- Please describe your changes on the following line: -->

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] There are tests for these changes

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
2020-06-10 14:14:03 -04:00
WPT Sync Bot
2a42c14544 Update web-platform-tests to revision a5cb9597799c5f9bf0a809006161a0c50055828f 2020-06-09 10:26:43 +00:00
Martin Robinson
364235ac0c Include animations and transitions in the cascade
Instead of applying animations and transitions to styled elements,
include them in the cascade. This allows them to interact properly with
things like font-size and !important rules.
2020-06-09 11:41:07 +02:00
Martin Robinson
b875f14e86 Better computation of animation keyframes
This begins to address #26625 by properly applying CSS variables during
keyframe computation and no longer using `apply_declarations`. Instead,
walk the declarations, combining them into IntermediateComputedKeyframe,
maintaining declarations that modify CSS custom properties. Then compute
a set of AnimationValues for each keyframe and use those to produce
interpolated animation values.
2020-06-05 13:40:29 +02:00
Martin Robinson
218beb9218 Improve ending of transitions
For legacy reasons, transitions were marked as finished after updating the
style. According to the spec, they should be marked as finished when
animations are updated and before restyle. This change does that as well
as preventing replacement of finished transitions.

Having finished transitions survive a full restyle cycle and allowing
the replacement of finished transition, could lead to issues were
removed from the global list of animating transitions too soon:

 1. A transitions finishes
 2. Restyle
 3. Transitions is marked as finished and events are queued
 4. Restyle cancels finished transition and replaces it instead of
    clearing finished transition
 5. Events are sent for the incorrectly canceled transition removing it
    completely from the list of running transitions due to the extra
    event.
2020-05-21 19:56:29 +02:00
WPT Sync Bot
bc7c10c2ce Update web-platform-tests to revision da0a378536add99eaffc33f733b5960457bd38df 2020-05-21 11:14:28 +00:00
Martin Robinson
acca20d544 Update test expectations 2020-05-19 10:02:03 +02:00
WPT Sync Bot
cb40a5f9fe Update web-platform-tests to revision df7fc2ece226676b8398ece13ddfd31b4f1eca5c 2020-05-08 11:17:10 +00:00
WPT Sync Bot
f3e7a5cac0 Update web-platform-tests to revision 3adb0f89d80bb92ea1a458b3fbe461f7803549a9 2020-05-05 10:56:33 +00:00
WPT Sync Bot
f71dd608db Update web-platform-tests to revision 7ef67f2d8c667d7f5a828fa0f6878ed45d1432d8 2020-05-04 13:10:47 +00:00
WPT Sync Bot
3f44ddc852 Update web-platform-tests to revision c19e2b60b554e64ad07f25675f659ce76cee9e82 2020-05-03 11:19:37 +00:00
WPT Sync Bot
00971fa7af Update web-platform-tests to revision ef4113222efb4cc08100f34f2dd9ab8ecc3660eb 2020-05-02 11:27:29 -04:00
WPT Sync Bot
d4bfc5902a Update web-platform-tests to revision d9ff48a8babff036c1f9d5285ec0dc55609bebb8 2020-04-29 11:14:24 +00:00
WPT Sync Bot
94f517b8d8 Update web-platform-tests to revision 6a2f0e6a0110fd0830fc3196680f671bb83c2747 2020-04-28 11:09:30 +00:00
WPT Sync Bot
58265ed975 Update web-platform-tests to revision 55367a4c706fa32301980773cb2c09cbcd291635 2020-04-27 11:19:06 +00:00
WPT Sync Bot
629790db5d Update web-platform-tests to revision 5e7cbed423a3040dc8ca50359dd033a46dba5cf4 2020-04-26 11:12:33 +00:00
WPT Sync Bot
55139554ba Update web-platform-tests to revision 78eae724c61bb01d858a01a324363e997ac66851 2020-04-25 11:14:57 +00:00
WPT Sync Bot
e116a19f0b Update web-platform-tests to revision 9d583db6a1a16763322dce912bf057490cd7b0c7 2020-04-19 11:09:10 +00:00
WPT Sync Bot
10cafa3df2 Update web-platform-tests to revision a4482f355e2848f4623cf46f521cb9b3bca56129 2020-04-14 11:10:36 +00:00
WPT Sync Bot
c9a04ea515 Update web-platform-tests to revision ec1023a6b5f4dc6c8cbeb3507081e2ac3741adad 2020-04-13 11:07:48 +00:00
WPT Sync Bot
19a2b8047d Update web-platform-tests to revision 30a08266e1951b16ab2587068de64041095bbc2f 2020-04-08 10:50:40 +00:00
WPT Sync Bot
1dbfe69c91 Update web-platform-tests to revision 5721f7843f406054b8e02b0e33ff8e733830cc3d 2020-03-31 11:02:10 +00:00
WPT Sync Bot
6a6caaf929 Update web-platform-tests to revision ee35e5ccfe4ffeb108e603a05d1ea44f19275e04 2020-03-30 11:14:51 +00:00
WPT Sync Bot
f4e67a0197 Update web-platform-tests to revision cf8a15a334c6eb3b044b3db8a933436c2365819d 2020-03-28 11:05:43 +00:00
WPT Sync Bot
932f14ce3a Update web-platform-tests to revision 169a1410bfe8e517d79852144555dd49ea1f597a 2020-03-27 11:07:02 +00:00
WPT Sync Bot
1d6ba62c8f Update web-platform-tests to revision 10adbd6b133f1ccf77a27ed51ffd3e7a00a499ee 2020-03-24 11:01:51 +00:00
WPT Sync Bot
76af5dbf1f Update web-platform-tests to revision f2c1dfe9ae186350086dbe505c4baaab63ace1cc 2020-03-21 11:06:46 +00:00
WPT Sync Bot
96fc7662dc Update web-platform-tests to revision a587550f729c270ae55b56a92c94605461cc919a 2020-03-20 11:05:42 +00:00