Skip to content

Commit a1e773a

Browse files
Clarify when the user can abort the payment request algorithm (#810)
1 parent 3148aa3 commit a1e773a

File tree

1 file changed

+12
-10
lines changed

1 file changed

+12
-10
lines changed

index.html

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -4578,13 +4578,13 @@ <h2>
45784578
"PaymentResponse.payerPhone">payerPhone</a> value, the user agent
45794579
SHOULD format the phone number to adhere to [[E.164]].
45804580
</li>
4581+
<li>Set <var>request</var>.<a>[[\state]]</a> to "<a>closed</a>".
4582+
</li>
45814583
<li>If <var>isRetry</var> is true, resolve
45824584
<var>response</var>.<a>[[\retryPromise]]</a> with undefined.
45834585
Otherwise, resolve <var>request</var>.<a>[[\acceptPromise]]</a> with
45844586
<var>response</var>.
45854587
</li>
4586-
<li>Set <var>request</var>.<a>[[\state]]</a> to "<a>closed</a>".
4587-
</li>
45884588
</ol>
45894589
</section>
45904590
<section>
@@ -4602,10 +4602,6 @@ <h2>
46024602
<li>Let <var>request</var> be the <a>PaymentRequest</a> object that
46034603
the user is interacting with.
46044604
</li>
4605-
<li>If the <var>request</var>.<a>[[\updating]]</a> is true, then
4606-
terminate this algorithm and take no further action. The <a>user
4607-
agent</a> user interface SHOULD ensure that this never occurs.
4608-
</li>
46094605
<li>If <var>request</var>.<a>[[\state]]</a> is not
46104606
"<a>interactive</a>", then terminate this algorithm and take no
46114607
further action. The <a>user agent</a> user interface SHOULD ensure
@@ -4637,6 +4633,9 @@ <h2>
46374633
<li>Otherwise, reject <var>request</var>.<a>[[\acceptPromise]]</a>
46384634
with <var>error</var>.
46394635
</li>
4636+
<li>Abort the current user interaction and close down any remaining
4637+
user interface.
4638+
</li>
46404639
</ol>
46414640
</section>
46424641
<section>
@@ -4654,10 +4653,13 @@ <h2>
46544653
blocked. The user agent SHOULD provide the user with a means to abort
46554654
a payment request. Implementations MAY choose to implement a timeout
46564655
for pending updates if <var>detailsPromise</var> doesn't settle in a
4657-
reasonable amount of time. If an implementation chooses to implement
4658-
a timeout, they MUST execute the steps listed below in the "upon
4659-
rejection" path. Such a timeout is a fatal error for the payment
4660-
request.
4656+
reasonable amount of time.
4657+
</p>
4658+
<p>
4659+
In the case where a timeout occurs, or the user manually aborts, or
4660+
the <a>payment handler</a> decides to abort this particular payment,
4661+
the user agent MUST run the <a>user aborts the payment request
4662+
algorithm</a>.
46614663
</p>
46624664
<ol class="algorithm">
46634665
<li>Set <var>request</var>.<a>[[\updating]]</a> to true.

0 commit comments

Comments
 (0)