[w3c/payment-request] Clarify when the user can abort the payment request algorithm (#796)

The [user aborts the payment request algorithm](https://w3c.github.io/payment-request/#user-aborts-the-payment-request-algorithm) says this:

> If the request.[[updating]] is true, then terminate this algorithm and take no further action. The user agent user interface SHOULD ensure that this never occurs.

I believe this is because user agents are expected to disable the payment UI while merchants are updating details.

In Apple Pay, we do prevent the user from authorizing payment while the merchant is updating, but we don't completely disable the interface. Notably, we don't disable the "cancel" button. So that means the user could abort a transaction in the midst of a details update.

To comply with the spec as-written, WebKit defers processing a user abort until the pending details update promise settles (see https://trac.webkit.org/r236922).

Should the spec acknowledge that some implementations might allow the user to abort in the midst of updating? Should it allow an abort during details update, or suggest that implementors defer the abort until the details settle?

cc: @marcoscaceres 

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/w3c/payment-request/issues/796

Received on Monday, 22 October 2018 11:17:18 UTC