Skip to content

Commit 691c816

Browse files
authored
[scroll-animations-1] Also rerun style/layout for changed timeline ranges (#8704)
Fixes #8694.
1 parent 7597888 commit 691c816

File tree

1 file changed

+13
-5
lines changed

1 file changed

+13
-5
lines changed

scroll-animations-1/Overview.bs

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1051,12 +1051,20 @@ spec: cssom-view-1; type: dfn;
10511051
as step 1 of [=update animations and send events=].
10521052

10531053
During step 7.14.1 of the [HTML Processing Model](https://html.spec.whatwg.org/multipage/webappapis.html#processing-model-8),
1054-
any created [=scroll progress timelines=] or [=view progress timelines=] are collected into an <dfn export>initially stale</dfn> set.
1055-
After step 7.14.1 if there are any [=initially stale=] timelines, they update their current time,
1056-
the set of [=initially stale=] timelines is cleared and
1054+
any created [=scroll progress timelines=] or [=view progress timelines=] are collected into a <dfn export>stale timelines</dfn> set.
1055+
After step 7.14 if any timelines' [=named timeline ranges=] have changed,
1056+
these timelines are added to the [=stale timelines=] set.
1057+
If there are any [=stale timelines=], they now update their current time and associated ranges,
1058+
the set of [=stale timelines=] is cleared and
10571059
we run and we run an additional step to recalculate styles and update layout.
1058-
As we only gather stale timelines during the first style and layout calculation,
1060+
1061+
Note: We check for layout changes after dispatching any {{ResizeObserver}}s intentionally
1062+
to take programmatically sized elements into account.
1063+
1064+
Note: As we only gather stale timelines during the first style and layout calculation,
10591065
this can only directly cause one additional style recalculation.
1066+
Other APIs which require another update should be checked in the same step
1067+
and be updated at the same time.
10601068

10611069
Note: Without this additional round of style and layout,
10621070
[=initially stale=] timelines would remain stale
@@ -1072,7 +1080,7 @@ spec: cssom-view-1; type: dfn;
10721080
In other words, [=initially stale=] timelines are visible as such
10731081
through those APIs.
10741082

1075-
If the step 7.14 of the [HTML Processing Model](https://html.spec.whatwg.org/multipage/webappapis.html#processing-model-8)
1083+
If the final style and layout update
10761084
would result in a change of time for any [=scroll progress timelines=] or
10771085
[=view progress timelines=], they will not be re-sampled to reflect the
10781086
new offset until the next update of the rendering.

0 commit comments

Comments
 (0)