@@ -101124,6 +101124,7 @@ callback <dfn callback>NavigationInterceptHandler</dfn> = <span data-x="idl-Prom
101124101124 <pre><code class="idl">[Exposed=Window]
101125101125 interface <dfn interface>NavigationPrecommitController</dfn> {
101126101126 undefined <span data-x="dom-NavigationPrecommitController-redirect">redirect</span>(USVString url, optional <span>NavigationNavigateOptions</span> options = {});
101127+ undefined <span data-x="dom-NavigationPrecommitController-addHandler">addHandler</span>(<span>NavigationInterceptHandler</span> handler);
101127101128 };
101128101129
101129101130 callback <dfn callback>NavigationPrecommitHandler</dfn> = <span data-x="idl-Promise">Promise</span><undefined> (<span>NavigationPrecommitController</span> controller);</code></pre>
@@ -101152,7 +101153,13 @@ callback <dfn callback>NavigationInterceptHandler</dfn> = <span data-x="idl-Prom
101152101153 <p>If the current <code>Document</code> <span data-x="can have its URL rewritten">cannot have
101153101154 its URL rewritten</span> to <var>url</var>, a <span>"<code>SecurityError</code>"</span>
101154101155 <code>DOMException</code> will be thrown.</p>
101155- </dd>
101156+ </dd>
101157+
101158+ <dt><code data-x=""><var>precommitController</var>.<span subdfn data-x="dom-NavigationPrecommitController-addHandler">addHandler</span>(<span>NavigationInterceptHandler</span> <var>handler</var>)</code></dt>
101159+ <dd><p>Adds a <span>NavigationInterceptHandler</span> callback that would be called once the navigation is committed,
101160+ as if this method was passed to the <code
101161+ data-x="dom-NavigateEvent-intercept">navigateEvent.intercept()</code> method as a <code
101162+ data-x="dom-NavigationInterceptOptions-handler">handler</code>.</p></dd>
101156101163 </dl>
101157101164
101158101165 <div w-nodev>
@@ -101246,6 +101253,33 @@ callback <dfn callback>NavigationInterceptHandler</dfn> = <span data-x="idl-Prom
101246101253 </ol>
101247101254 </div>
101248101255
101256+ <div algorithm>
101257+ <p>The <dfn method for="NavigationPrecommitController"><code
101258+ data-x="dom-NavigationPrecommitController-addHandler">addHandler(<var>handler</var>,)</code></dfn>
101259+ method steps are:</p>
101260+
101261+ <ol>
101262+ <li><p><span>Assert</span>: <span>this</span>'s <span
101263+ data-x="concept-NavigationPrecommitController-event">event</span>'s <span
101264+ data-x="concept-NavigateEvent-interception-state">interception state</span> is not "<code
101265+ data-x="">none</code>".</p></li>
101266+
101267+ <li><p><span data-x="NavigateEvent-perform-shared-checks">Perform shared checks</span> given
101268+ <span>this</span>'s <span
101269+ data-x="concept-NavigationPrecommitController-event">event</span>.</p></li>
101270+
101271+ <li><p>If <span>this</span>'s <span
101272+ data-x="concept-NavigationPrecommitController-event">event</span>'s <span
101273+ data-x="concept-NavigateEvent-interception-state">interception state</span> is not "<code
101274+ data-x="">intercepted</code>", then throw an <span>"<code>InvalidStateError</code>"</span>
101275+ <code>DOMException</code>.</p></li>
101276+
101277+ <li><p><span data-x="list append">Append</span> <var>handler</var> to <span>this</span>'s <span
101278+ data-x="concept-NavigationPrecommitController-event">event</span>'s <span
101279+ data-x="concept-NavigateEvent-navigation-handler-list">navigation handler list</span>.</p></li>
101280+ </ol>
101281+ </div>
101282+
101249101283
101250101284 </div>
101251101285
0 commit comments