Intent to Ship: Long Animation Frames style and layout duration

513 views
Skip to first unread message

Yoav Weiss (@Shopify)

unread,
Sep 30, 2026, 9:47:22 AMSep 30
to blink-dev
Contact emails
yoav...@chromium.org

Explainer
https://github.com/w3c/long-animation-frames/pull/30#issue-3828859369

Specification
https://github.com/w3c/long-animation-frames/pull/30

Summary
Add `styleDuration` and `forcedStyleDuration` information to the Long Animation Frame API, enabling developers to distinguish style and layout times.

Blink component
Blink>PerformanceAPIs

Web Feature ID
Missing feature - https://github.com/web-platform-dx/web-features/issues/4453

Motivation
Currently performance-conscious developers have no way to distinguish their style time from their layout time, making CSS performance issues less actionable than they can be. This feature enables developers to make that distinction.

Initial public proposal
https://github.com/w3c/long-animation-frames/pull/30

TAG review
I didn't file for a TAG review as these are a few new attributes that break up the timings provided by an existing attribute, mimicking its existing shape. I don't expect the TAG to have strong opinions on the shape of the attributes.

TAG review status
Not applicable

Origin Trial Name
Long Animation Frames - separate style and layout durations

Goals for experimentation
See that the new attributes provide useful data to developers as they debug their CSS performance issues.

Chromium Trial Name
LongAnimationFrameStyleDuration

Link to origin trial feedback summary
https://groups.google.com/a/chromium.org/g/blink-dev/c/qvGqBcSOFTQ/m/rU6rqKuMCAAJ

Origin Trial documentation link
https://github.com/w3c/long-animation-frames/pull/30#issue-3828859369

WebFeature UseCounter name
kLongAnimationFrameTimingStyleDuration

Risks


Interoperability and Compatibility
As these are new attributes, I don't expect them to have any compat impact. As far as interop goes, I'd expect that when other engines adopt LoAF, they'd also adopt these attributes.

Gecko: No signal 
Positive on the broader LoAF: https://github.com/mozilla/standards-positions/issues/929
I'm asking if I should file a more specific issue for these extra attributes.

WebKit: No signal (https://github.com/WebKit/standards-positions/issues/283) 
No signal for the broader LoAF feature. Unlikely they'd have a strong position on these attributes.

Web developers: Positive (https://groups.google.com/a/chromium.org/g/blink-dev/c/qvGqBcSOFTQ/m/5DCTOu9KCgAJ)

Other signals:

WebView application risks

Does this intent deprecate or change behavior of existing APIs, such that it has potentially high risk for Android WebView-based applications?

No information provided


Debuggability
No information provided

Will this feature be supported on all six Blink platforms (Windows, Mac, Linux, ChromeOS, Android, and Android WebView)?
Yes

Is this feature fully tested by web-platform-tests?
Yes

 - https://wpt.fyi/results/long-animation-frame/loaf-style-duration.html: styleDuration (9 subtests)
 - https://wpt.fyi/results/long-animation-frame/loaf-layout-duration.html: layoutDuration (7 subtests)
 - https://wpt.fyi/results/long-animation-frame/loaf-forced-style-duration.html: forcedStyleDuration (4 subtests)
 - https://wpt.fyi/results/long-animation-frame/loaf-forced-layout-duration.html: forcedLayoutDuration, including checking that forced style plus forced layout
   adds up to forcedStyleAndLayoutDuration (5 subtests)
 - https://wpt.fyi/results/long-animation-frame/loaf-container-queries.html: all four attributes when container queries mix style and layout work (6 subtests)
 - https://wpt.fyi/results/long-animation-frame/loaf-toJSON.html: now also checks styleDuration and layoutDuration in toJSON()

Flag name on about://flags
No information provided

Finch feature name
LongAnimationFrameStyleDuration

Rollout plan
Will ship enabled for all users

Requires code in //chrome?
False

Tracking bug
https://issues.chromium.org/issues/476826067

Estimated milestones
Shipping on desktop157
Origin trial desktop first148
Origin trial desktop last153
Shipping on Android157
Shipping on WebView157


Anticipated spec changes

Open questions about a feature may be a source of future web compat or interop issues. Please list open issues (e.g. links to known github issues in the project for the feature specification) whose resolution may introduce web compat/interop risk (e.g., changing to naming or structure of the API in a non-backward-compatible way).


No changes expected.


Link to entry on the Chrome Platform Status
https://chromestatus.com/feature/5171478175809536?gate=6516503656660992

Links to previous Intent discussions
Intent to Prototype: https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOmohSJxRuMp6Ha5RVCjzNfsG0Sj96Y%3Dgy9LnxtM%2Brq-S6DEew%40mail.gmail.com
Intent to Experiment: https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOmohSJ2PJ0dZxYH48PALOSUenSSV7VuZ9CzTHnGd8u_jTKkcg%40mail.gmail.com


This intent message was generated by Chrome Platform Status.

Alex Russell

unread,
Sep 30, 2026, 11:35:09 AMSep 30
to blink-dev, Yoav Weiss
LGTM1; this is an awesome addition. Thanks for making it happen.

On TAG review, can you please send an FYI?

Best,

Alex

Rick Byers

unread,
Oct 7, 2026, 11:18:53 AMOct 7
to Alex Russell, blink-dev, Yoav Weiss
Looks good to me, but is there any reason this PR can't land now?

--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
To view this discussion visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/9403784c-3fb5-47a6-b288-d6c4c26945bdn%40chromium.org.

Yoav Weiss (@Shopify)

unread,
Oct 15, 2026, 4:02:20 AMOct 15
to blink-dev, Rick Byers, blink-dev, Yoav Weiss, Alex Russell
On Wednesday, October 7, 2026 at 6:18:53 PM UTC+3 Rick Byers wrote:
Looks good to me, but is there any reason this PR can't land now?

It needed some more work. It has landed now.
 
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscribe@chromium.org.

Philip Jägenstedt

unread,
Oct 15, 2026, 4:28:54 AMOct 15
to Yoav Weiss (@Shopify), blink-dev, Rick Byers, Alex Russell
LGTM2

To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
To view this discussion visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/8cd3ccdd-657d-448a-83f9-363b14e03d94n%40chromium.org.

Philip Jägenstedt

unread,
Oct 15, 2026, 4:30:11 AMOct 15
to Yoav Weiss (@Shopify), blink-dev, Rick Byers, Alex Russell
Can you take care of the Security gate in chromestatus.com so that the last API owner approver does not need to bypass that?

Mike Taylor

unread,
Oct 15, 2026, 8:49:06 PMOct 15
to Philip Jägenstedt, Yoav Weiss (@Shopify), blink-dev, Rick Byers, Alex Russell
Reply all
Reply to author
Forward
0 new messages