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

Ok, just want to clarify something here... as I alluded to above, there are two cases we need to deal with:

 1. `updateWith()` / `retry()` - use same update logic.
 1.  Before `complete()` is called (i.e., "...processing...") stage. 

About 2, the spec says (my emphasis): 

> After the payment request has been accepted and the `PaymentResponse` returned to the caller but before the caller calls `complete()` the payment request user interface remains in a pending state. At this point **the user interface ought not offer a cancel command** because acceptance of the payment request has been returned.

So, at I mentioned above:

 * Chrome allows the user to abort on 2 by pressing "esc". 
 * Firefox does not provide any way to abort. 
 * Edge? @zouhir?     
 * Safari? @aestes? 

The annoying part of 2 is that it can get stuck (hence the timeout):

> For this reason, implementations MAY impose a timeout for developers to call complete(). If the timeout expires then the implementation will behave as if complete() was called with no arguments.

I think we can all agree that cancelling during 1 should be ok. 

So, question is, should a user be allowed to cancel by prior to calling `.complete()`? It should it be _only_ by timeout (in which case, Chrome might be accidentally doing it wrong)


-- 
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#issuecomment-439795493

Received on Monday, 19 November 2018 07:26:38 UTC