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

86 Коммитов

Автор SHA1 Сообщение Дата
Boris Zbarsky 6c66fa85a4 Bug 1615022 part 2. Require an rvalue reference to reject a Promise with an ErrorResult. r=farre,kvark
The rejection process consumes the ErrorResult, so an rvalue reference is the honest thing here.

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

--HG--
extra : moz-landing-system : lando
2020-02-14 15:42:30 +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
Zibi Braniecki 4fb4f2f900 Bug 1609585 - Migrate all possible uses from AppLocalesAsLangTag(s) to AppLocale(s)AsBCP47. r=marionette-reviewers,jfkthame,whimboo
Differential Revision: https://phabricator.services.mozilla.com/D60096

--HG--
extra : moz-landing-system : lando
2020-01-17 19:29:09 +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
Edgar Chen 5bc0854d2b Bug 1578355 - Part 1: Move user-activation code from EventStateManager to UserActivation; r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D45168

--HG--
extra : moz-landing-system : lando
2019-09-20 20:51:25 +00:00
Daniel Varga bc19cdb06d Backed out 3 changesets (bug 1578355) for build bustage at build/src/dom/base/nsSyncLoadService.h:48:21. On a CLOSED TREE
Backed out changeset d50ad759f129 (bug 1578355)
Backed out changeset 339ab54ca471 (bug 1578355)
Backed out changeset 284299dac42c (bug 1578355)
2019-09-20 14:05:12 +03:00
Edgar Chen 5b6fe53148 Bug 1578355 - Part 1: Move user-activation code from EventStateManager to UserActivation; r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D45168

--HG--
extra : moz-landing-system : lando
2019-09-20 10:31:55 +00:00
Kannan Vijayan 3fb6190ec6 Bug 1559414 - Rename unaudited pre-fission methods with SameProcess for future audit burndown. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D39378

--HG--
extra : moz-landing-system : lando
2019-07-26 16:48:31 +00:00
Nicholas Nethercote 18fae65f38 Bug 1563139 - Remove StaticPrefs.h. r=glandium
This requires replacing inclusions of it with inclusions of more specific prefs
files.

The exception is that StaticPrefsAll.h, which is equivalent to StaticPrefs.h,
and is used in `Codegen.py` because doing something smarter is tricky and
suitable for a follow-up. As a result, any change to StaticPrefList.yaml will
still trigger recompilation of all the generated DOM bindings files, but that's
still a big improvement over trigger recompilation of every file that uses
static prefs.

Most of the changes in this commit are very boring. The only changes that are
not boring are modules/libpref/*, Codegen.py, and ServoBindings.toml.

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

--HG--
extra : moz-landing-system : lando
2019-07-26 01:10:23 +00:00
Andrew McCreight 0ff15fc634 Bug 1521510 - Keep a reference to the document in PaymentRequest. r=qdot
The current document of a window can change in between the time when a
PaymentRequest registers as an activity observer and when it attempts
to unregister, so keep a strong reference to the document. This is the
same issue as bug 1317805.

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

--HG--
extra : moz-landing-system : lando
2019-01-25 22:12:39 +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
Emilio Cobos Álvarez d2ed260822 Bug 1517241 - Rename nsIDocument to mozilla::dom::Document. r=smaug
Summary: Really sorry for the size of the patch. It's mostly automatic
s/nsIDocument/Document/ but I had to fix up in a bunch of places manually to
add the right namespacing and such.

Overall it's not a very interesting patch I think.

nsDocument.cpp turns into Document.cpp, nsIDocument.h into Document.h and
nsIDocumentInlines.h into DocumentInlines.h.

I also changed a bunch of nsCOMPtr usage to RefPtr, but not all of it.

While fixing up some of the bits I also removed some unneeded OwnerDoc() null
checks and such, but I didn't do anything riskier than that.
2019-01-03 17:48:33 +01: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 f39987d3cc Bug 1477117 - Part 3 - dispatch the PaymentMethodChangeEvent. r=baku
Save the changing method information in PaymentMethodChangeEvent and
    dispatch it.

--HG--
extra : histedit_source : 583cc4efd19d22d21864527db9bb479f772839e4
2018-11-27 11:17:33 +01:00
Eden Chuang 931859451b Bug 1477117 - Part 2 - Add new IPC method for passing the changing method information. r=baku
1. Add a new method nsIPaymentRequestService::ChangePaymentMethod for UI to
       inform merchant the payment method is changed by user.
    2. Add a new method in PPaymentRequest.ipdl to passing the changing method
       information from chrome process to content process.
    3. Add BasicCardChangeDetails dictionary in BasicCardPayment.webidl
    4. Create ChangeDetails, GeneralDetails and BasicCardDetails for saving the
       the method information in content process.

--HG--
extra : histedit_source : 8426da9c1d070daa35623b3431341c13cb361aed
2018-11-27 14:05:00 +01:00
arthur.iakab e36b9a7f34 Backed out 4 changesets (bug 1477117) for causing hazard build bustage on payments/PaymentRequest.cpp:1066 CLOSED TREE
Backed out changeset 3b473ca68a57 (bug 1477117)
Backed out changeset 8ffc94b44c3e (bug 1477117)
Backed out changeset ddaac3335514 (bug 1477117)
Backed out changeset 1809212f5f29 (bug 1477117)
2018-11-28 02:28:36 +02:00
Eden Chuang 080a60e015 Bug 1477117 - Part 3 - dispatch the PaymentMethodChangeEvent. r=baku
Save the changing method information in PaymentMethodChangeEvent and
    dispatch it.
2018-11-27 11:17:33 +01:00
Eden Chuang c9058620cb bug 1477117 - Part 2 - Add new IPC method for passing the changing method information. r=baku
1. Add a new method nsIPaymentRequestService::ChangePaymentMethod for UI to
       inform merchant the payment method is changed by user.
    2. Add a new method in PPaymentRequest.ipdl to passing the changing method
       information from chrome process to content process.
    3. Add BasicCardChangeDetails dictionary in BasicCardPayment.webidl
    4. Create ChangeDetails, GeneralDetails and BasicCardDetails for saving the
       the method information in content process.
2018-11-27 14:05:00 +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
Diego Pino Garcia 84e713c49f Bug 1501102 - Move hard-coded 'supportedRegions' array to a pref to allow developers outside US/CA to test PaymentRequest. r=baku,MattN
--HG--
extra : rebase_source : 1661ff1d2b0ea9276a3a32953c94cedd5694fed8
2018-11-14 00:59:00 +02:00
Eden Chuang 9b43e53126 bug 1497111 - Remove unnecessarily null'ed out values of PaymentRequest.webidl. r=baku
--HG--
extra : histedit_source : 5a1a3f3a49540f92b32a0b94f07e65bb71382d09
2018-11-12 17:24:54 +01:00
Brindusan Cristian a14f91e1ee Backed out changeset 9ee2e7c7fa16 (bug 1497111) for wpt failures on payment-request-constructor.https.html. 2018-11-13 17:02:02 +02:00
Eden Chuang 330656ca6f bug 1497111 - Remove unnecessarily null'ed out values of PaymentRequest.webidl. r=baku 2018-11-12 17:24:54 +01:00
Eden Chuang 74e578d048 Bug 1497215 - Refactor the IPC structure for PaymentResponse.details r=baku
In original design, payment method response data is passed between processes
    through a simple nsString. It means a special encoder/decoder is needed for
    special response data, ex. BasicCardResponse, to serialize/deserialize
    into/from the nsString. However, when a token spliter, ':', ';' and '@', is
    used in response data, it makes the encoder/decoder can not work normally.
    It is hard to define a suitable token spliter set for encoder/decoder.
    So instead of using an error-prone encoder/decoder, this patch defining a new
    IPC structure for response data.

--HG--
extra : rebase_source : 4972033516bc861ea3f975a27b7688fc6eb89a94
2018-10-29 13:56:32 +01:00
Diego Pino Garcia 0ad023d797 Bug 1481971 - Enable PaymentRequest on Nightly for Windows/macOS for US/CA users on en-US builds r=MattN,baku,gandalf
--HG--
extra : rebase_source : afd01adfdfdd57b497dff28e674b69e2a7d9e73a
2018-10-16 16:14:12 -07:00
Marcos Cáceres 923fe8871a Bug 1497110 - remove currencySystem from PaymentRequest. r=edenchuang, peterv
--HG--
extra : amend_source : 2806c93a6cbab54261e9176f3f6426acdf28eb89
2018-10-07 21:00:00 +03:00
Eden Chuang c91739f1ee Bug 1495301 - Disbale payment-request web-platform tests on non-nightly build. r=a=test-only,revert
--HG--
extra : rebase_source : 750491c3776bb2154991d18c2e174b9ac83b3fb2
2018-10-12 14:40:43 +02:00
Eden Chuang 05093acbf4 Bug 1441752 - Adding an new attribute regionCode in PaymentAddress. r=baku
--HG--
extra : histedit_source : d71b94a611ff5cd3f5b556de9157ff46a5cfeda6
2018-09-28 12:21:59 +02:00
Andrea Marchesini da30b53c07 Bug 1496114 - PaymentRequest CTOR is controlled by pref, r=marcosc 2018-10-04 07:17:33 +02:00
Andrea Marchesini 319c43d823 Bug 1495303 - FeaturePolicy: payment, r=marcosc 2018-10-01 11:59:57 +02:00
arthur.iakab b5ec6b9d2b Backed out changeset 6daf4f561843 (bug 1495303)for failing web-platform tests on /payment-allowed-by-feature-policy-attribute-redirect-on-load.https.sub.html 2018-10-01 14:51:26 +03:00
Andrea Marchesini f48b6e8ca4 Bug 1495303 - FeaturePolicy: payment, r=marcosc 2018-10-01 11:59:57 +02:00
Matthew Noorenberghe 5cc8014d08 Bug 1491996 - Add a pref to disable the user activation/gesture requirement for PaymentRequest.show(). r=baku
Differential Revision: https://phabricator.services.mozilla.com/D6092

--HG--
extra : moz-landing-system : lando
2018-09-19 15:32:22 +00:00
Marcos Cáceres f616da00ba Bug 1472026 - Implement PaymentResponse.prototype.onpayerdetailchange. r=edenchuang,baku
Implement PaymentResponse.prototype.onpayerdetailchange, per spec.

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

--HG--
extra : moz-landing-system : lando
2018-09-19 11:23:33 +00:00
shindli 70bf79757d Backed out changeset 376c2bf5bcbf (bug 1472026) for PaymentRequest failures in dom/payments/test/test_block_none10s.html 2018-09-19 12:31:51 +03:00
Marcos Cáceres 9dd1b3aeae Bug 1472026 - Implement PaymentResponse.prototype.onpayerdetailchange. r=edenchuang,baku
Implement PaymentResponse.prototype.onpayerdetailchange, per spec.

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

--HG--
extra : moz-landing-system : lando
2018-09-19 08:41:53 +00:00
Marcos Cáceres eb155e743a Bug 1474499 - Add support for onmerchantvalidation and MerchantValidationEvent. r=edenchuang,baku 2018-09-12 22:56:00 +03:00
arthur.iakab 620bc5019f Backed out changeset ebe2c08a2454 (bug 1474499) for failing web platform tests on ValidationEvent/constructor.https.html 2018-09-11 19:30:23 +03:00
Marcos Cáceres e4203c1813 Bug 1474499 - Add support for onmerchantvalidation and MerchantValidationEvent. r=edenchuang,baku
--HG--
extra : rebase_source : 5b5488fb1bb6c9f901a8c22c12aa635ebf8381c8
2018-09-11 06:00:00 +03:00
Eden Chuang 7058aae68b Bug 1435161 - Part 2 supporting PaymentResponse.retry(). r=baku
1. Add PaymentValidationErrors and PayerErrorFields in PaymentRequest.webidl
       and PaymentResponse.retry() in PaymentResponse.webidl
    2. Implement PaymentRequest.retryPayment() and
       PaymentRequestManager.retryPayment() in content process.
    3. Add IPCPaymentRetryActionRequest in PPaymentRequest.ipdl to transfer the
       error fields to chrome process.
    4. Implement PaymentResponse.retry() by reusing the code of show() and
       updateWith() of PaymentRequestService in chrome process.
2018-09-04 12:28:40 +02:00
Marcos Cáceres 8128af9850 Bug 1485881 - Drop support for PaymentAddress.languageCode r=smaug
--HG--
extra : rebase_source : 6400765c8b669126c7a71f5094dd160b2b1a89ce
2018-08-27 16:30:00 +03:00
Eden Chuang a29e2c4da2 Bug 1483470 - Handling PaymentRequestUpdateEvent::updateWith() to a responed PaymentRequest. r=baku
1. Checking if the PaymentRequest::mState equals to eInteractive when calling
       PaymentRequest::UpdatePayment() and PaymentRequest::AbortUpdate.
    2. Removing the non-suitable MOZ_ASSERT in PaymentRequest::RespondShowPayment()
2018-08-22 03:10:45 +02:00
Eden Chuang 68bb5bfa3c Bug 1483470 - Handling PaymentRequestService::RespondPayment() to a closed PaymentRequest. r=baku
1. Returning NS_ERROR_FAILURE in PaymentRequestService::RespondPayment() when
       the specified PaymentRequest does not exist in PaymentRequestService.
    2. Renaming "cleanup" to "close" in DOM::WebPayment codes to fit the actual
       behavior.
2018-08-16 14:27:24 +02:00
Eden Chuang b4cd2e70aa Bug 1408234 - Cleanup the PaymentRequests when document close. r=baku
Let PaymentRequest inherit from nsIDocumentActivity interface.
    Calling RegisterActivityObserver() and UnregisterActivityObserver() in
    constructor and destructor to get activity notifications from document.
    When receiving the notification, NotifyOwnerDocumentActivityChanged() will
    check the owner document's activity status. If the status is disabled, calling
    PaymentRequestManager::CleanupPayment() to cleanup the PaymentRequest in
    content process and aslo sending the cleanup information to chrome process.
2018-08-13 11:24:54 +02: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 37c3abfe24 Bug 1470110 - Consistently disable payments off of Nightly. r=MattN
We only build the frontend parts of Web Payments on Nightly, but users could
futz with the prefs and expose the DOM API on Beta. We should be careful about
not allowing that mismatch.

This also adds some additional logging if we run into a bug like this again.

MozReview-Commit-ID: 9qcQTIsIHkg

--HG--
extra : rebase_source : cdaed71d79e6f8cedd1229ffd03cac21e3660367
2018-06-22 12:05:36 -07:00
Blake Kaplan 2597785450 Bug 1469433 - Handle shutdown more gracefully. r=smaug
If we end up shutting down the content process while there's a request active
we'll end up "leaking" the request and asserting. This makes sure that we
let go of the PaymentRequest in that edge case. I can cause this by forceably
closing the payment request window on Linux without hitting OK or cancel.

MozReview-Commit-ID: 6XDYIcqNkC6

--HG--
extra : rebase_source : d20d8fae4aa4fc3afcca8491d415c64b8af8bcb4
2018-06-19 15:55:32 -07:00
Blake Kaplan 5d09eec7de Bug 1469433 - Match the spec's error reporting more closely. r=smaug
MozReview-Commit-ID: LI13cA0okeu

--HG--
extra : rebase_source : 8ffb8db4fc0e4905f31cca2b41a954b89720e42a
2018-06-19 15:30:43 -07:00
Blake Kaplan dfb2d7b714 Bug 1442453 - Pass objects around instead of string IDs in the child. r=baku
The existing code only passed strings around to identify PaymentRequest
objects. That meant that we were constantly having to do hashtable lookups to
find the corresponding object. This patch just uses the single map that IPDL
maintains for us and passes objects around, obviating the need for more
hashtable lookups.

MozReview-Commit-ID: 6BBonrc6q4x

--HG--
extra : rebase_source : 041c6ce742d60a2c9e954a58582d09cd9ef7f2b1
2018-05-31 16:20:51 -07:00