Граф коммитов

19 Коммитов

Автор SHA1 Сообщение Дата
Simon Giesecke 5e3c24c886 Bug 1613985 - Use default for equivalent-to-default constructors/destructors in dom/payments. r=smaug
Depends on D66022

Differential Revision: https://phabricator.services.mozilla.com/D66023

--HG--
extra : moz-landing-system : lando
2020-03-09 15:17:16 +00:00
Eden Chuang 852445c77e Bug 1610881 - Get rid of ErrorResult.Throw(DOMException) in Payment code r=bzbarsky
Differential Revision: https://phabricator.services.mozilla.com/D61557

--HG--
extra : moz-landing-system : lando
2020-02-11 08:45:49 +00:00
Boris Zbarsky 33acac0a74 Bug 1582196 part 3. Stop using NS_ERROR_RANGE_ERR and NS_ERROR_TYPE_ERR in payments code. r=edenchuang
The changes to the return type of MerchantValidationEvent::init are because
Result doesn't allow having an ErrorResult (or any other type without a copy
constructor) as its error type.  Plus we would have had the impedance mismatch
between Result<Ok, nsresult> (which is what URL resolution on the document
returns) and Result<Ok, ErrorResult> anyway.

Differential Revision: https://phabricator.services.mozilla.com/D46461

--HG--
extra : moz-landing-system : lando
2019-09-19 23:53:14 +00:00
Boris Zbarsky 14c30e58d6 Bug 1578173 part 4. Switch event subclasses to constructor operations. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D45391

--HG--
extra : moz-landing-system : lando
2019-09-11 14:35:28 +00:00
Boris Zbarsky 3bf84b1452 Bug 1519284. Fix rooting hazards in PaymentRequest. r=baku
Differential Revision: https://phabricator.services.mozilla.com/D16891

--HG--
extra : moz-landing-system : lando
2019-01-18 09:18:18 +00:00
Eden Chuang 8d097c92d3 Bug 1497219 - Rejecting PaymentRequest::API calls when the PaymentRequest is not in fully active document. r=baku
PaymentRequest API is not supported when the PaymentRequest is not in the
    fully active document. Adding bool a PaymentRequest::InFullyActiveDocument()
    method to check if the PaymentRequest is in fully active document. This
    method should be called at the start of any PaymentRequest APIs. If the
    PaymentRequest is not in fully active document, ignoring the API call and
    throw the NS_ERROR_DOM_ABORT_ERR if needed.

--HG--
extra : histedit_source : 3e8e4a73f69c639f9cc528afa586af22597ff320
2018-12-05 15:01:45 -05:00
Sylvestre Ledru 265e672179 Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
# ignore-this-changeset

--HG--
extra : amend_source : 4d301d3b0b8711c4692392aa76088ba7fd7d1022
2018-11-30 11:46:48 +01:00
Eden Chuang 974f7da95a bug 1501823 - Force to call PaymentUIService.showPayment() when PaymentRequest.show called with a promise parameter. r=baku
1. Adding a new completeStatus 'initial' for nsIPaymentRequest.completeStatus
       to indicate the status of the showing PaymentRequest for Payment UI component.
    2. Removing the PaymentRequest::mDeferredShow and calling
       PaymentRequestManager::showPayment() when PaymentRequest::Show() called
       with a detailsUpdate parameter to inform UI component to support better
       user experience.
2018-11-21 11:03:21 +01:00
Jeff Gilbert 5b753da289 Bug 1470325 - s/FooBinding/Foo_Binding/g - r=qdot
MozReview-Commit-ID: JtTcLL5OPF0
2018-06-26 17:05:01 -07:00
Blake Kaplan 49d7053a3e Bug 1442453 - Create a single IPC actor per PaymentRequest. r=baku
There isn't any need to create an actor per call to the parent. This patch
lines up PaymentRequest with PPaymentRequestChild objects and links them
together. It also simplifies the maps and arrays we use to keep track of these
objects.

There's one tricky bit to note in this patch: in the case that a promise is
passed to paymentRequest.show(), we don't notify the parent process until the
promise resolves (when we call either UpdatePayment or AbortUpdate). In that
case, I needed to distinguish between an "update" because of the promise
resolving or a call to updateWith on an shippingaddresschange event in order
to get the bookkeeping right with the mActivePayments hashtable. In that case,
the PaymentRequest is kept alive by mShowingRequest alone. In all other cases,
mActivePayments keeps the PaymentRequest alive until we resolve or reject the
correct promise.

MozReview-Commit-ID: HoHjn8eqC4T

--HG--
extra : rebase_source : 4da1d65d1f791f4a5c18871ab3a3dcf94e833b90
2018-05-31 13:30:29 -07:00
Eden Chuang 1537e9d304 Bug 1441709 - Support PaymentRequest.show() with an optional PaymentDetailsUpdate promise parameter. r=baku
1. Add "optional Promise<PaymentDetailsUpdate> detailsPromise" as a parameter
   of PaymentRequest.show() in PaymentRequest.webidl.
2. Let PaymentRequest inherit from PromiseNativeHandler, and implement the
   ResolvedCallback() and RejectedCallback() to handle the PaymentDetailsUpdate
   promise.
3. Update PaymentRequest.show() implementation. If PaymentDetailsUpdate Promise
   is not nullptr, the show request would not be transferred to chrome process
   immediately until the promise is resolved/rejected.
4. Update selectedShippingOption when requestShipping is true.
5. Change the PaymentMethod id validation sequence according to the spec.

--HG--
extra : histedit_source : e591c759037cce4f66701b2faa5ecbe01c00e246
2018-04-02 23:12:21 +08:00
Andrew McCreight 298aa82710 Bug 1412125, part 2 - Fix dom/ mode lines. r=qdot
This was automatically generated by the script modeline.py.

MozReview-Commit-ID: BgulzkGteAL

--HG--
extra : rebase_source : a4b9d16a4c06c4e85d7d85f485221b1e4ebdfede
2017-10-26 15:08:41 -07:00
Eden Chuang 3d2f4c7cfc Bug 1403080 - Return null DOMString while PaymentOptions.requestShipping is false. r=baku
--HG--
extra : rebase_source : ec5f87928253c69d834f2a7a9a0c9b3b1f523c45
2017-09-28 15:20:19 +08:00
Eden Chuang 2638e37728 Bug 1388661 - Support currency validation in PaymentRequet API. r=baku
This patch implements currency validation algorithm according to the spec
    https://w3c.github.io/payment-request/#validity-checkers.

    1. amount.currencySystem must be "urn:iso:std:iso:4217".
    2. amount.currency is valid with following criteria
       1. The currency length must be 3.
       2. The currency contains any character that must be in the range "A" to
          "Z"(U+0041 to U+005A) or the range "a" to "z"(U+0061 to U+007A).

    According to the spec, converting the currency to upper case and save it in
    nsIPaymentRequest.
2017-09-06 14:36:24 +08:00
Andrew McCreight 78807d8776 Bug 1391005 - Eliminate NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION_INHERITED. r=peterv
Replace it with NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION, because it
has been the same for a while.

MozReview-Commit-ID: 5agRGFyUry1

--HG--
extra : rebase_source : 5388c56b2f6905c6ef969150f0c5b77bf247624d
2017-08-29 16:02:48 -07:00
btian c150a6ca01 Bug 1379925 - Part 2: Revise method |updateWith| based on spec change. r=baku
MozReview-Commit-ID: FpTGFlMvl0S
2017-07-14 09:56:33 +08:00
btian 68dea23805 Bug 1379925 - Part 1: Set PaymentRequestUpdateEvent.mRequest only when event target is a PaymentRequest. r=baku
MozReview-Commit-ID: AW9SDdL2uAd
2017-07-14 14:58:27 +08:00
btian b484c82423 Bug 1380552 - Do not override method |IsTrusted| in PaymentRequestUpdateEvent. r=baku
MozReview-Commit-ID: C1DoziVe6F0
2017-07-13 11:48:58 +08:00
Eden Chuang 4282643952 Bug 1318990 - PaymentRequestUpdateEvent interface and PaymentRequest API onshippingaddress/optionchange implementation. r=baku 2017-06-23 17:15:51 +08:00