LGTM2

/Daniel

On 2026-04-01 12:21, Alex Russell wrote:
LGTM1;  thanks for continuing to make the platform's APIs more rational.

Best,

Alex

On Wed, Apr 1, 2026, 4:32 AM Chromestatus <[email protected]> wrote:

    *Contact emails*
    [email protected]

    *Explainer*
    https://github.com/explainers-by-googlers/promisify-scroll

    *Specification*
    https://github.com/w3c/csswg-drafts/issues/1562

    *Design docs*

    https://github.com/explainers-by-googlers/promisify-scroll

    *Summary*
    Web developers currently have no way to know when a programmatic
    smooth-scroll has completed. This feature provides a solution to
    the problem: make the programmatic scroll methods return Promise
    objects that get resolved on scroll completion.

    *Blink component*
    Blink>Scroll
    
<https://issues.chromium.org/issues?q=customfield1222907:%22Blink%3EScroll%22>

    *Web Feature ID*
    Missing feature

    *Motivation*
    We have multiple scroll methods available through both Element and
    Window interfaces. These methods return immediately with the value
    undefined, which was fine during the early days of the web when
    scroll was assumed to be instant. This behavior no longer seems
    adequate from a web developer's perspective today: there is
    widespread support for smooth-scroll (see browser_compatibility
    [1] for the CSS property), and it is not easy for the developers
    to determine when a particular call for a smooth-scroll has
    completed. This feature makes the programmatic scroll methods
    return Promise objects that get resolved on scroll completion. [1]
    
https://developer.mozilla.org/en-US/docs/Web/CSS/scroll-behavior#browser_compatibility


    *Initial public proposal*
    /No information provided/

    *TAG review*
    https://github.com/w3ctag/design-reviews/issues/1210

    *TAG review status*
    Pending

    *Goals for experimentation*
    None

    *Risks*


    *Interoperability and Compatibility*
    Interop: Given the developers' support in the github discussion
    and the easy resolution in the CSWWG, we expect other major
    browsers to implement this feature in near future. Compat: To
    maintain the backward compatibility for the scroll methods, we
    would avoid rejecting the returned Promises (as much as possible).
    This is because unhandled Promise rejections are treated as
    exceptions, which could fail any JS callers that assume that those
    methods succeed unconditionally.

    /Gecko/: No
    signal (https://github.com/mozilla/standards-positions/issues/1379) Spec
    PR was approved by Mozilla:
    https://github.com/w3c/csswg-drafts/pull/12355

    /WebKit/: No
    signal (https://github.com/WebKit/standards-positions/issues/639) WebKit
    positive in a follow-up resolution:
    https://github.com/w3c/csswg-drafts/issues/12495#issuecomment-4040657058

    /Web developers/:
    Positive (https://github.com/w3c/csswg-drafts/issues/1562)

    /Other signals/:

    *Security*
    None.

    *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*
    Existing DevTools functionalities sufficiently cover this
    features: the return values of element/window scroll methods are
    switched from undefined to Promises, and the returned Promises can
    be inspected easily on console.

    *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
    
<https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>?*
    Yes
    
https://wpt.fyi/results/css/cssom-view?label=master&label=experimental&aligned&q=-scroll-arguments.html%20or%20-scroll-promises.html%20or%20-scroll-promise-interruption.html
    
<https://wpt.fyi/results/css/cssom-view?label=master&label=experimental&aligned&q=-scroll-arguments.html%20or%20-scroll-promises.html%20or%20-scroll-promise-interruption.html>

    *Flag name on about://flags*
    /No information provided/

    *Finch feature name*
    ProgrammaticScrollPromise

    *Rollout plan*
    Will ship enabled for all users

    *Requires code in //chrome?*
    False

    *Tracking bug*
    https://issues.chromium.org/41406914

    *Estimated milestones*
    Shipping on desktop         149
    Shipping on Android         149
    Shipping on WebView         149



    *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 information provided/

    *Link to entry on the Chrome Platform Status*
    https://chromestatus.com/feature/5082138340491264?gate=5098794827644928

    *Links to previous Intent discussions*
    Intent to Prototype:
    
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAB0cuO7QpgC2bUgHk6ZWLsNjaR%3DLb-O%3DA5hiOF5vgJicbR9igQ%40mail.gmail.com


    This intent message was generated by Chrome Platform Status
    <https://chromestatus.com>.
-- 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 [email protected].
    To view this discussion visit
    
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/69cc2140.2b0a0220.5f79f.04fa.GAE%40google.com
    
<https://groups.google.com/a/chromium.org/d/msgid/blink-dev/69cc2140.2b0a0220.5f79f.04fa.GAE%40google.com?utm_medium=email&utm_source=footer>.

--
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 [email protected]. To view this discussion visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAA44PQgwgYfxUMfZ_1cgqh32VRnPru2JJdjZskzoV3TdTRhkWQ%40mail.gmail.com <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAA44PQgwgYfxUMfZ_1cgqh32VRnPru2JJdjZskzoV3TdTRhkWQ%40mail.gmail.com?utm_medium=email&utm_source=footer>.

--
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 [email protected].
To view this discussion visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/456b9b23-3a64-4655-aac1-a0a01dfe8fb7%40gmail.com.

Reply via email to