Intent to Ship: navigateEvent.scroll()

88 views
Skip to first unread message

Nate Chapin

unread,
Jul 18, 2022, 8:06:12 PM7/18/22
to blink-dev

Contact emails

jap...@chromium.org, dom...@chromium.org


Specification

https://github.com/WICG/navigation-api/pull/239

https://wicg.github.io/navigation-api/#dom-navigateevent-scroll


Summary

scroll() works very similarly to the existing restoreScroll() except that it can be called when the navigation is not a traversal. It also allows manually performing the scroll even when not in manual scroll mode.



Blink component

Blink>History


TAG review

https://github.com/w3ctag/design-reviews/issues/717


TAG review status

Issues open


Risks



Interoperability and Compatibility

Most of the compatibility risk comes from the removal of restoreScroll(), and will be discussed in that separate Intent. For those migrating to scroll(), all existing use cases should just work by changing the function name.



Gecko: No signal https://github.com/mozilla/standards-positions/issues/543 remains open as the positions request for the original API.


WebKit: No signal https://www.mail-archive.com/webki...@lists.webkit.org/msg30257.html remains open as the positions request for the original API. https://github.com/WebKit/standards-positions/issues/34 was recently opened by web developers and also remains open.


Web developers: Positive. https://github.com/WICG/navigation-api/issues/237 came out of discussions with web developers.


Activation

This is a slightly more featureful restoreScroll().



Security

None different than restoreScroll()



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?

None, this should work identically on all platforms.



Debuggability

Debugging should be no different than debugging restoreScroll().



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

Yes


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

The navigation-api/ directory makes extensive use of restoreScroll(), and we're updating it to use scroll() alongside the implementation.


Requires code in //chrome?

False


Tracking bug

https://bugs.chromium.org/p/chromium/issues/detail?id=1345507


Estimated milestones

M105



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).

None.


Link to entry on the Chrome Platform Status

https://chromestatus.com/feature/5194856243134464


This intent message was generated by Chrome Platform Status.


Chris Harrelson

unread,
Jul 18, 2022, 11:05:34 PM7/18/22
to Nate Chapin, blink-dev
LGTM1

--
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 on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CACf%3D2LJEWKt97W%3Db-PEvt6FZfhEhnw%3D1v1hdYL-1kPMZ2FGRSg%40mail.gmail.com.

Yoav Weiss

unread,
Jul 19, 2022, 9:11:52 AM7/19/22
to Chris Harrelson, Nate Chapin, blink-dev
LGTM2

Process note: I think it'd be easier if we had an "intent to change" that would enable you to send a single intent for this.

Mike Taylor

unread,
Jul 19, 2022, 9:35:01 AM7/19/22
to Yoav Weiss, Chris Harrelson, Nate Chapin, blink-dev
Reply all
Reply to author
Forward
0 new messages