Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
84 changes: 37 additions & 47 deletions source
Original file line number Diff line number Diff line change
Expand Up @@ -99975,51 +99975,6 @@ const p2 = navigation.navigate(url2).finished;</code></pre>
</ol>
</div>

<div algorithm>
<p>To <dfn>promote an upcoming API method tracker to ongoing</dfn> given a <code>Navigation</code>
<var>navigation</var> and a string-or-null <var>destinationKey</var>:</p>

<ol>
<li><p><span>Assert</span>: <var>navigation</var>'s <span>ongoing API method tracker</span> is
null.</p></li>

<li>
<p>If <var>destinationKey</var> is not null, then:</p>

<ol>
<li><p><span>Assert</span>: <var>navigation</var>'s <span>upcoming non-traverse API method
tracker</span> is null.</p></li>

<li>
<p>If <var>navigation</var>'s <span>upcoming traverse API method
trackers</span>[<var>destinationKey</var>] <span data-x="map exists">exists</span>, then:</p>

<ol>
<li><p>Set <var>navigation</var>'s <span>ongoing API method tracker</span> to
<var>navigation</var>'s <span>upcoming traverse API method
trackers</span>[<var>destinationKey</var>].</p></li>

<li><p><span data-x="map remove">Remove</span> <var>navigation</var>'s <span>upcoming
traverse API method trackers</span>[<var>destinationKey</var>].</p></li>
</ol>
</li>
</ol>
</li>

<li>
<p>Otherwise:</p>

<ol>
<li><p>Set <var>navigation</var>'s <span>ongoing API method tracker</span> to
<var>navigation</var>'s <span>upcoming non-traverse API method tracker</span>.</p></li>

<li><p>Set <var>navigation</var>'s <span>upcoming non-traverse API method tracker</span> to
null.</p></li>
</ol>
</li>
</ol>
</div>

<div algorithm>
<p>To <dfn data-x="navigation-api-method-tracker-clean-up">clean up</dfn> a <span>navigation API
method tracker</span> <var>apiMethodTracker</var>:</p>
Expand Down Expand Up @@ -101431,8 +101386,43 @@ interface <dfn interface>NavigationDestination</dfn> {

<li><p><span>Assert</span>: <var>destinationKey</var> is not the empty string.</p></li>

<li><p><span>Promote an upcoming API method tracker to ongoing</span> given
<var>navigation</var> and <var>destinationKey</var>.</p></li>
<li><p>Let <var>upcomingMethodTracker</var> be <var>navigation</var>'s <span>upcoming

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: I don't think we need this here. It should be fine the way it was in the old version (directly move the upcoming non-traverse API method tracker into the ongoing API method tracker slot).

non-traverse API method tracker</span>.</p></li>

<li><p>Set <var>navigation</var>'s <span>upcoming non-traverse API method tracker</span> to
null.</p></li>

<li><p><span>Assert</span>: <var>navigation</var>'s <span>ongoing API method tracker</span> is
null.</p></li>

<li>
<p><dfn>Promote an upcoming API method tracker to ongoing</dfn>:</p>
<ol>
<li>
<p>If <var>destinationKey</var> is not null, then:</p>

<ol>
<li>
<p>If <var>navigation</var>'s <span>upcoming traverse API method
trackers</span>[<var>destinationKey</var>] <span data-x="map exists">exists</span>,
then:</p>

<ol>
<li><p>Set <var>navigation</var>'s <span>ongoing API method tracker</span> to
<var>navigation</var>'s <span>upcoming traverse API method
trackers</span>[<var>destinationKey</var>].</p></li>

<li><p><span data-x="map remove">Remove</span> <var>navigation</var>'s <span>upcoming
traverse API method trackers</span>[<var>destinationKey</var>].</p></li>
</ol>
</li>
</ol>
</li>

<li><p>Otherwise, set <var>navigation</var>'s <span>ongoing API method tracker</span> to
<var>upcomingMethodTracker</var>.</p></li>
</ol>
</li>

<li><p>Let <var>apiMethodTracker</var> be <var>navigation</var>'s <span>ongoing API method
tracker</span>.</p></li>
Expand Down