Intent to Ship: Navigation API: deferred commit (precommit handlers)

171 views
Skip to first unread message

Noam Rosenthal

unread,
Aug 20, 2025, 3:42:26 AMAug 20
to blink-dev
Contact emails

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

Explainer

https://github.com/WICG/navigation-api#precommit-handlers

Specification

https://github.com/whatwg/html/pull/10919

Summary

Normally, when navigateEvent.intercept() is called, the intercepted
navigation commits (and therefore the URL updates) as soon as the
NavigateEvent finishes dispatch. Adding a `precommitHandler` option to
navigateEvent.intercept(), similar to `handler`, would defer the
commit until that handler (and all other precommit handlers) are
resolved, also allowing the handler to change the navigation's URL,
info, status, and history handling behavior (push/replace).



Blink component

Blink>History

TAG review

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

TAG review status

Issues addressed

Risks



Interoperability and Compatibility



Gecko: No signal (https://github.com/mozilla/standards-positions/issues/1169)

WebKit: Support (https://github.com/WebKit/standards-positions/issues/449)

Web developers: Strongly positive
(https://github.com/WICG/navigation-api/issues/66) Developers are
clear that this capability is desired and useful, with the cited issue
containing several example use cases. During the Dev Trial we intend
to validate that the proposed API shape works well for them.

Other signals:

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?



Debuggability



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

No

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

Yes

Flag name on about://flags



Finch feature name

NavigateEventCommitBehavior

Rollout plan

Will ship enabled for all users

Requires code in //chrome?

False

Estimated milestones

Shipping on desktop141
Shipping on Android141
Shipping on WebView141


Anticipated spec changes

In the process of merging into the HTML standards. All substantive
issued addressed.

Link to entry on the Chrome Platform Status

https://chromestatus.com/feature/5134734612496384?gate=5141610720919552

Links to previous Intent discussions

Intent to Prototype:
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CACf%3D2LKc%2BACbg7odh-ddKJ9_WVQ8ojfeC7aSgKBPAwYHskFMDA%40mail.gmail.com


This intent message was generated by Chrome Platform Status.

Yoav Weiss (@Shopify)

unread,
Aug 20, 2025, 3:57:06 AMAug 20
to Noam Rosenthal, blink-dev
LGTM1

This seems like a useful addition and the HTML PR work + webkit support makes me hopeful it will be interoperable shortly after landing.
Please land the HTML PR before shipping, as I don't think anything is blocking it.

--
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 visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAJn%3DMYYW_F3aqiWvo0Y%2BVLLaYcj8JZ%2BTHqSGiHer_VFBra3HhQ%40mail.gmail.com.

Alex Russell

unread,
Aug 20, 2025, 11:20:57 AMAug 20
to blink-dev, Yoav Weiss, blink-dev, Noam Rosenthal
LGTM2

To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscribe@chromium.org.

Philip Jägenstedt

unread,
Aug 20, 2025, 11:22:16 AMAug 20
to Alex Russell, blink-dev, Yoav Weiss, Noam Rosenthal
LGTM3

LGTM2

To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.

--
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 visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/807b339b-6363-4d7a-9664-f0394be97236n%40chromium.org.
Reply all
Reply to author
Forward
0 new messages