As per https://wicg.github.io/scroll-animations/#dom-scrolltimeline-startscrolloffset
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/35837d9950226ffa8efde575ec723891ee442d73 commit 35837d9950226ffa8efde575ec723891ee442d73 Author: Stephen McGruer <smcgruer@chromium.org> Date: Wed Sep 19 16:07:56 2018 Allow {start,end}ScrollOffset to be specified on ScrollTimelines This CL adds startScrollOffset and endScrollOffset to the ScrollTimelineOptions and the equivalent accessors to the ScrollTimeline object. It includes the full parsing of the input DOMStrings into the relevant CSS types. Thie CL does not actually add use of the values in the currentTime algorithm - that is left for a follow-up. https://wicg.github.io/scroll-animations/#dom-scrolltimeline-startscrolloffset Bug: 885196 Change-Id: I85bd6698abe2acaa2d57d69cec17d99a186e22e7 Reviewed-on: https://chromium-review.googlesource.com/1231156 Reviewed-by: Anders Ruud <andruud@chromium.org> Reviewed-by: Majid Valipour <majidvp@chromium.org> Commit-Queue: Stephen McGruer <smcgruer@chromium.org> Cr-Commit-Position: refs/heads/master@{#592423} [modify] https://crrev.com/35837d9950226ffa8efde575ec723891ee442d73/third_party/WebKit/LayoutTests/external/wpt/scroll-animations/idlharness.window-expected.txt [add] https://crrev.com/35837d9950226ffa8efde575ec723891ee442d73/third_party/WebKit/LayoutTests/fast/animation/scroll-animations/scrolltimeline-parsing-scroll-offsets.html [modify] https://crrev.com/35837d9950226ffa8efde575ec723891ee442d73/third_party/WebKit/LayoutTests/webexposed/global-interface-listing-expected.txt [modify] https://crrev.com/35837d9950226ffa8efde575ec723891ee442d73/third_party/blink/renderer/core/animation/scroll_timeline.cc [modify] https://crrev.com/35837d9950226ffa8efde575ec723891ee442d73/third_party/blink/renderer/core/animation/scroll_timeline.h [modify] https://crrev.com/35837d9950226ffa8efde575ec723891ee442d73/third_party/blink/renderer/core/animation/scroll_timeline.idl [modify] https://crrev.com/35837d9950226ffa8efde575ec723891ee442d73/third_party/blink/renderer/core/animation/scroll_timeline_options.idl [modify] https://crrev.com/35837d9950226ffa8efde575ec723891ee442d73/third_party/blink/renderer/core/css/properties/css_parsing_utils.cc [modify] https://crrev.com/35837d9950226ffa8efde575ec723891ee442d73/third_party/blink/renderer/core/css/properties/css_parsing_utils.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/e2f934fe1d21a8c6eda2805fbc2a76984a3ee5c0 commit e2f934fe1d21a8c6eda2805fbc2a76984a3ee5c0 Author: Stephen McGruer <smcgruer@chromium.org> Date: Mon Oct 01 18:59:17 2018 Add main-thread support for {start,end}ScrollOffset on ScrollTimelines This CL changes the currentTime algorithm to respect the start and end scroll offset specified for the ScrollTimeline. It does not change the compositor logic - that is left for a followup. https://wicg.github.io/scroll-animations/#dom-scrolltimeline-startscrolloffset Bug: 885196 Change-Id: I732a39659f1f354a8dec982bf75e14f11c0f2134 Reviewed-on: https://chromium-review.googlesource.com/1238376 Commit-Queue: Stephen McGruer <smcgruer@chromium.org> Reviewed-by: Majid Valipour <majidvp@chromium.org> Reviewed-by: Anders Ruud <andruud@chromium.org> Cr-Commit-Position: refs/heads/master@{#595487} [modify] https://crrev.com/e2f934fe1d21a8c6eda2805fbc2a76984a3ee5c0/third_party/WebKit/LayoutTests/fast/animation/scroll-animations/scrolltimeline-currenttime.html [modify] https://crrev.com/e2f934fe1d21a8c6eda2805fbc2a76984a3ee5c0/third_party/blink/renderer/core/animation/scroll_timeline.cc [modify] https://crrev.com/e2f934fe1d21a8c6eda2805fbc2a76984a3ee5c0/third_party/blink/renderer/core/animation/scroll_timeline.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/411aca659926a0025b06c403aacbd77f18d7e6cf commit 411aca659926a0025b06c403aacbd77f18d7e6cf Author: Stephen McGruer <smcgruer@chromium.org> Date: Tue Oct 23 18:26:22 2018 Add compositor support for {start,end}ScrollOffset on ScrollTimelines This CL pushes the start/end scroll offset information through to the compositor and updates the currentTime algorithm to make use of it. Updates to the start/end scroll offset are wired through blink::WorkletAnimation::UpdateOnCompositor, however the animation is not invalidated yet if the scroller properties would change (e.g. due to layout changing). This will be done in a follow-up CL. Bug: 885196 Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;master.tryserver.blink:linux_trusty_blink_rel Change-Id: I67da2c1ef26b66314af5891a2356920164fa0b0f Reviewed-on: https://chromium-review.googlesource.com/c/1271398 Commit-Queue: Stephen McGruer <smcgruer@chromium.org> Reviewed-by: Majid Valipour <majidvp@chromium.org> Cr-Commit-Position: refs/heads/master@{#602028} [modify] https://crrev.com/411aca659926a0025b06c403aacbd77f18d7e6cf/cc/animation/animation_host_unittest.cc [modify] https://crrev.com/411aca659926a0025b06c403aacbd77f18d7e6cf/cc/animation/scroll_timeline.cc [modify] https://crrev.com/411aca659926a0025b06c403aacbd77f18d7e6cf/cc/animation/scroll_timeline.h [modify] https://crrev.com/411aca659926a0025b06c403aacbd77f18d7e6cf/cc/animation/scroll_timeline_unittest.cc [modify] https://crrev.com/411aca659926a0025b06c403aacbd77f18d7e6cf/cc/animation/worklet_animation.cc [modify] https://crrev.com/411aca659926a0025b06c403aacbd77f18d7e6cf/cc/animation/worklet_animation.h [modify] https://crrev.com/411aca659926a0025b06c403aacbd77f18d7e6cf/cc/animation/worklet_animation_unittest.cc [modify] https://crrev.com/411aca659926a0025b06c403aacbd77f18d7e6cf/third_party/blink/renderer/core/animation/scroll_timeline.cc [modify] https://crrev.com/411aca659926a0025b06c403aacbd77f18d7e6cf/third_party/blink/renderer/core/animation/scroll_timeline.h [modify] https://crrev.com/411aca659926a0025b06c403aacbd77f18d7e6cf/third_party/blink/renderer/modules/animationworklet/worklet_animation.cc [modify] https://crrev.com/411aca659926a0025b06c403aacbd77f18d7e6cf/third_party/blink/renderer/platform/animation/compositor_animation.cc [modify] https://crrev.com/411aca659926a0025b06c403aacbd77f18d7e6cf/third_party/blink/renderer/platform/animation/compositor_animation.h
Comment 1 by smcgruer@chromium.org
, Sep 18