Implement ScrollTimeline class without ScrollTimeline interface (i.e. without webidl) and use it for CSS animations
Categories
(Core :: Layout, enhancement)
Tracking
()
Tracking | Status | |
---|---|---|
firefox97 | --- | fixed |
People
(Reporter: hiro, Assigned: boris)
References
(Blocks 2 open bugs)
Details
(Keywords: dev-doc-complete)
Attachments
(10 files)
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review |
This bug might be better to split into a smaller bugs, but I am not sure right now.
The basic mechanism can be re-used what Botond wrote in bug 1321428, the new spec now has element-based offset, that's a big difference.
Reporter | ||
Updated•4 years ago
|
Reporter | ||
Updated•4 years ago
|
Reporter | ||
Updated•3 years ago
|
Assignee | ||
Comment 1•3 years ago
|
||
We add the placeholder to keep the scroll-timeline rule, so layout code
can access it in the future (i.e. Bug 1676791).
Assignee | ||
Updated•3 years ago
|
Assignee | ||
Comment 2•3 years ago
|
||
Define a simple version of ScrollTimeline and update AnimationTimeline
to provide a way to distinguish different types of timelines.
Assignee | ||
Comment 3•3 years ago
|
||
The basic part of the infrastrucure of scroll-linked animations. This is
designed based on scroll-linked animation generated by CSS.
Assignee | ||
Comment 4•3 years ago
|
||
We have to make sure we compute the correct progress at least.
Assignee | ||
Comment 5•3 years ago
|
||
So we don't expose scroll-linked animations for now.
Assignee | ||
Comment 6•3 years ago
|
||
Updated•3 years ago
|
Updated•3 years ago
|
Assignee | ||
Comment 7•3 years ago
|
||
Based on https://github.com/w3c/csswg-drafts/pull/4842, we define
"has finite timeline", which is a timeline that's not monotonically increasing.
We need this to update start time and hold time for scroll-timeline, so
we play scroll-linked animations as we expected, e.g. GetLocalTime() returns
the correct time value from GetCurrentTimeAsDuration().
Known issue: we still have bugs when setting "animation-play-state:paused".
Will do that in Bug 1741255.
Updated•3 years ago
|
Updated•3 years ago
|
Updated•3 years ago
|
Updated•3 years ago
|
Assignee | ||
Comment 8•3 years ago
|
||
And so we can make ScrollTimeline::GetTiming() be a constexpr function.
Updated•3 years ago
|
Updated•3 years ago
|
Updated•3 years ago
|
Updated•3 years ago
|
Updated•3 years ago
|
Assignee | ||
Comment 9•3 years ago
|
||
Updated•3 years ago
|
Updated•3 years ago
|
Assignee | ||
Comment 10•3 years ago
|
||
Based on our previous patches, we only support default behavior for
source and scroll-offsets:
- source:auto
- scroll-offsets: none
- scroll-offsets: auto, auto, ...
So update the parser for them. We expect to remove whole
@scroll-timeline in Bug 1733260, so now only do a tiny update in parser.
Comment 11•3 years ago
|
||
Comment 13•3 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/b4834a00bf66
https://hg.mozilla.org/mozilla-central/rev/42d064474082
https://hg.mozilla.org/mozilla-central/rev/237f69b0017b
https://hg.mozilla.org/mozilla-central/rev/b62bd1a92fdc
https://hg.mozilla.org/mozilla-central/rev/a2ab78c846cf
https://hg.mozilla.org/mozilla-central/rev/d5a68dd4b920
https://hg.mozilla.org/mozilla-central/rev/bb7d70549ed2
https://hg.mozilla.org/mozilla-central/rev/508ba675a8ec
https://hg.mozilla.org/mozilla-central/rev/949961aca7b5
https://hg.mozilla.org/mozilla-central/rev/0c50f26910b5
Description
•