Closed Bug 1627302 Opened 5 years ago Closed 5 years ago

[wpt-sync] Sync PR 22696 - Support 'revert' in @keyframes

Categories

(Core :: CSS Parsing and Computation, task, P4)

task

Tracking

()

RESOLVED FIXED
mozilla77
Tracking Status
firefox77 --- fixed

People

(Reporter: wpt-sync, Unassigned)

References

()

Details

(Whiteboard: [wptsync downstream])

Sync web-platform-tests PR 22696 into mozilla-central (this bug is closed when the sync is complete).

PR: https://github.com/web-platform-tests/wpt/pull/22696
Details from upstream follow.

Anders Hartvoll Ruud <andruud@chromium.org> wrote:

Support 'revert' in @keyframes

Implementing the base functionality for this is just a matter of
resolving the CSSRevertValue using the StyleCascade. However, the
existence of the base computed style optimization makes things more
complicated, as we can't use this optimization if 'revert' exists
in a keyframe. (We don't even match selectors when that optimization
is in use, so we wouldn't know what to revert to). In order to fix that,
it's necessary to know if an ongoing animation contains a 'revert' or
not, and if so disable the optimization in that case.

This CL also adds a ConversionChecker for 'revert', which covers the
(very) edge case of an extension dynamically changing what is reverted
to in the user origin.

In MaybeConvertCustomPropertyDeclaration, it was difficult to get the
necessary behavior for RuntimeEnabledFeatures::CSSCascadeEnabled()
while also leaving the non-cascade path intact. Therefore I re-
implemented that function as a "top-level branch" on
CSSCascadeEnabled(), which leads to some duplication. Hopefully that's
OK since we're anyway going to remove the non-cascade path soon.

Bug: 579788
Change-Id: I8cbe267b75658ace3f566638bb6ecf10027bdcf9
Reviewed-on: https://chromium-review.googlesource.com/2132249
WPT-Export-Revision: a03a82ff0a5ac1965fc3c314462f524135885902

PR 22696 applied with additional changes from upstream: 4a9b8106d499cce5e63e0a8bb59aec27d47717cf
Component: web-platform-tests → CSS Parsing and Computation
Product: Testing → Core
Pushed by wptsync@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/fad7900389fb [wpt PR 22696] - Support 'revert' in @keyframes, a=testonly https://hg.mozilla.org/integration/autoland/rev/a65cd510ca4a [wpt PR 22696] - Update wpt metadata, a=testonly
Test result changes from PR not available.
Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla77
You need to log in before you can comment on or make changes to this bug.