Commit graph

259 commits

Author SHA1 Message Date
Alexander Surkov
c60f2971fc Bug 1519533 - convert formautofill autocomplete-profile-listitem bindings to CE, r=MattN
Differential Revision: https://phabricator.services.mozilla.com/D19257

--HG--
rename : browser/extensions/formautofill/content/formautofill.xml => browser/extensions/formautofill/content/customElements.js
2019-02-08 22:57:03 -05:00
Brian Grinstead
04c18529e4 Bug 1487065 - Implement popup-notification as a Custom Element r=MattN
Differential Revision: https://phabricator.services.mozilla.com/D17699

--HG--
rename : toolkit/content/widgets/notification.xml => toolkit/content/widgets/popupnotification.js
extra : moz-landing-system : lando
2019-02-07 22:16:26 +00:00
Kris Maglione
e930b89c34 Bug 1514594: Part 3 - Change ChromeUtils.import API.
***
Bug 1514594: Part 3a - Change ChromeUtils.import to return an exports object; not pollute global. r=mccr8

This changes the behavior of ChromeUtils.import() to return an exports object,
rather than a module global, in all cases except when `null` is passed as a
second argument, and changes the default behavior not to pollute the global
scope with the module's exports. Thus, the following code written for the old
model:

  ChromeUtils.import("resource://gre/modules/Services.jsm");

is approximately the same as the following, in the new model:

  var {Services} = ChromeUtils.import("resource://gre/modules/Services.jsm");

Since the two behaviors are mutually incompatible, this patch will land with a
scripted rewrite to update all existing callers to use the new model rather
than the old.
***
Bug 1514594: Part 3b - Mass rewrite all JS code to use the new ChromeUtils.import API. rs=Gijs

This was done using the followng script:

https://bitbucket.org/kmaglione/m-c-rewrites/src/tip/processors/cu-import-exports.jsm
***
Bug 1514594: Part 3c - Update ESLint plugin for ChromeUtils.import API changes. r=Standard8

Differential Revision: https://phabricator.services.mozilla.com/D16747
***
Bug 1514594: Part 3d - Remove/fix hundreds of duplicate imports from sync tests. r=Gijs

Differential Revision: https://phabricator.services.mozilla.com/D16748
***
Bug 1514594: Part 3e - Remove no-op ChromeUtils.import() calls. r=Gijs

Differential Revision: https://phabricator.services.mozilla.com/D16749
***
Bug 1514594: Part 3f.1 - Cleanup various test corner cases after mass rewrite. r=Gijs
***
Bug 1514594: Part 3f.2 - Cleanup various non-test corner cases after mass rewrite. r=Gijs

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

--HG--
extra : rebase_source : 359574ee3064c90f33bf36c2ebe3159a24cc8895
extra : histedit_source : b93c8f42808b1599f9122d7842d2c0b3e656a594%2C64a3a4e3359dc889e2ab2b49461bab9e27fc10a7
2019-01-17 10:18:31 -08:00
Jared Wein
d5e162396a Bug 1474905 - Don't disable the Save button if the form is empty or not. Instead rely on form validation preventing the Save. r=MattN
Differential Revision: https://phabricator.services.mozilla.com/D14642

--HG--
extra : moz-landing-system : lando
2018-12-20 22:10:00 +00:00
Jared Wein
4bf1467ca5 Bug 1474905 - Use a dropdown for the state/province field when possible. r=MattN
Differential Revision: https://phabricator.services.mozilla.com/D11854

--HG--
extra : moz-landing-system : lando
2018-12-20 22:10:00 +00:00
Cosmin Sabou
1d49103119 Backed out changeset c4d1729c029e (bug 1474905) for browser chrome failures on browser_editCreditCardDialog.js. CLOSED TREE 2018-12-14 21:44:32 +02:00
Jared Wein
91e9a06355 Bug 1474905 - Use a dropdown for the state/province field when possible. r=MattN
Differential Revision: https://phabricator.services.mozilla.com/D11854

--HG--
extra : moz-landing-system : lando
2018-12-14 18:52:19 +00:00
Jeff Walden
2a8770b450 Bug 1492932 - Define various name reference details in FormAutofillNameUtils.jsm now that JS modules are loaded as UTF-8, rather than in a separate script through the subscript loader with UTF-8 explicitly specified. r=MattN
--HG--
extra : rebase_source : 79fd0036f308889754675d007b8fd230b1b99e41
2018-12-08 07:03:33 -05:00
Jared Wein
4f380956c6 Bug 1512309 - Set the month of the date object through the Date constructor instead of the UTC time. r=MattN
The UTC time was generating incorrect months when the browser was used in a timezone that has a negative UTC offset. The value returned from Date.UTC was then parsed by new Date() which was converted to the local timezone. Date.UTC(1970, 0, 1) would return a time of 0 which would then become December 1969.

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

--HG--
extra : moz-landing-system : lando
2018-12-07 14:12:53 +00:00
Diego Pino Garcia
d493028e02 Bug 1470196 - Show the month name after the month number in the cc-exp-month dropdown r=MattN
--HG--
extra : rebase_source : dab71b73d0f4e87e3d655f237d7bcc7a98dee01e
2018-11-22 23:22:00 +02:00
Matthew Noorenberghe
4d0cbeac7f Bug 1505141 - Always preserveOldProperties for payment request but blank mailing address fields by default. r=jaws
Differential Revision: https://phabricator.services.mozilla.com/D12190

--HG--
extra : moz-landing-system : lando
2018-11-21 00:46:23 +00:00
Timothy Guan-tin Chien
9ac2863a64 Bug 1504268 - Show proper OS login dialog labels when filling/editing credit cards r=MattN
Differential Revision: https://phabricator.services.mozilla.com/D11095

--HG--
extra : moz-landing-system : lando
2018-11-19 21:00:02 +00:00
Jared Wein
281dff55d5 Bug 1499869 - Allow displaying of masked credit card numbers when they're invalid. r=MattN
Differential Revision: https://phabricator.services.mozilla.com/D9048

--HG--
extra : moz-landing-system : lando
2018-11-13 17:35:29 +00:00
Sam Foster
8401d41400 Bug 1492399 - honor preserveFieldValues when generating billing address options. r=MattN
Differential Revision: https://phabricator.services.mozilla.com/D11129

--HG--
extra : moz-landing-system : lando
2018-11-07 18:41:37 +00:00
Jared Wein
9d2ad063d8 Bug 1483412 - Make the telephone number field required on the payer form if requestPayerPhone is true. r=MattN
Differential Revision: https://phabricator.services.mozilla.com/D10597

--HG--
extra : moz-landing-system : lando
2018-11-01 22:38:03 +00:00
Matthew Noorenberghe
fc94384b79 Bug 1486954 - Part IV, Recover from decryption errors in some places. r=MattN
In case of loss of OS key store key, we should still allow users to go into the manage credit cards dialog and fill the numbers back in.

This is not the migration strategy, see Part III.

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

--HG--
extra : rebase_source : dc710a2512b0d9b20e0fa74e641867525098eba2
extra : histedit_source : 4983a480565380ce4da6a0f099a5e4ae0e65797d
2018-10-22 22:57:29 -07:00
Matthew Noorenberghe
001567e898 Bug 1486954 - Part II, Remove OSKeyStore.isEnabled. r=MattN
Given that the new store is always considered enabled, the not-enabled code
is now dead code. This patch removes them.

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

--HG--
extra : rebase_source : d2940f77e26ba9f5c808eada5083df293d314214
extra : histedit_source : 29741eb6014489fcd179e90ee18ff876227baaf5
2018-10-22 22:57:28 -07:00
Timothy Guan-tin Chien
b2023e958b Bug 1486954 - Part I, Encrypt credit card numbers with OS key store. r=MattN
This patch morphs MasterPassword.jsm to OSKeyStore.jsm while keeping the same
API, as an adaptor between the API and the native API exposed as nsIOSKeyStore.idl.

Noted that OS Key Store has the concept of "recovery phrase" that we won't
be adopting here. The recovery phrase, together with our label, allow
the user to re-create the same key in OS key store.

Test case changes are needed because we have started asking for login in
places where we'll only do previously when "master password is enabled".
This also made some "when master password is enabled" tests invalid because
it is always considered enabled.

Some more test changes are needed simply because they previously rely on the
stable order of microtask resolutions (and the stable # of promises for a
specific operation). That has certainly changed with OSKeyStore.

The credit card form autofill is only enabled on Nightly.

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

--HG--
rename : browser/extensions/formautofill/MasterPassword.jsm => browser/extensions/formautofill/OSKeyStore.jsm
rename : browser/extensions/formautofill/test/browser/browser_creditCard_fill_master_password.js => browser/extensions/formautofill/test/browser/browser_creditCard_fill_cancel_login.js
extra : rebase_source : cabbd8cdec86e5b3965cf1c8b6e635b73b6c2095
extra : histedit_source : 65e71057104465553fefa1d0b293580efed53075
2018-10-17 02:31:04 +00:00
Jared Wein
e85599dc8f Bug 1494551 - Sort the formautofill data by the last used time. r=MattN
Differential Revision: https://phabricator.services.mozilla.com/D9174

--HG--
extra : moz-landing-system : lando
2018-10-19 17:00:31 +00:00
Margareta Eliza Balazs
53fc8ddacd Backed out 4 changesets (bug 1486954) for hangs on Linux. a=backout
Backed out changeset c895888bdddc (bug 1486954)
Backed out changeset 27e9286503e8 (bug 1486954)
Backed out changeset 87e64652386d (bug 1486954)
Backed out changeset 96a6e1ceb697 (bug 1486954)

--HG--
rename : browser/extensions/formautofill/OSKeyStore.jsm => browser/extensions/formautofill/MasterPassword.jsm
rename : browser/extensions/formautofill/test/browser/browser_creditCard_fill_cancel_login.js => browser/extensions/formautofill/test/browser/browser_creditCard_fill_master_password.js
2018-10-18 12:40:21 +03:00
Timothy Guan-tin Chien
3aaef61c6c Bug 1486954 - Part IV, Recover from decryption errors in some places r=MattN
In case of loss of OS key store key, we should still allow users to go into the manage credit cards dialog and fill the numbers back in.

This is not the migration strategy, see Part III.

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

--HG--
extra : moz-landing-system : lando
2018-10-17 02:34:22 +00:00
Timothy Guan-tin Chien
14d7be33ae Bug 1486954 - Part II, Remove OSKeyStore.isEnabled r=MattN
Given that the new store is always considered enabled, the not-enabled code
is now dead code. This patch removes them.

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

--HG--
extra : moz-landing-system : lando
2018-10-17 02:32:05 +00:00
Timothy Guan-tin Chien
f47a796bf6 Bug 1486954 - Part I, (Nighty-only feature) Encrypt credit card numbers with OS key store r=MattN
This patch morphs MasterPassword.jsm to OSKeyStore.jsm while keeping the same
API, as an adaptor between the API and the native API exposed as nsIOSKeyStore.idl.

Noted that OS Key Store has the concept of "recovery phrase" that we won't
be adopting here. The recovery phrase, together with our label, allow
the user to re-create the same key in OS key store.

Test case changes are needed because we have started asking for login in
places where we'll only do previously when "master password is enabled".
This also made some "when master password is enabled" tests invalid because
it is always considered enabled.

Some more test changes are needed simply because they previously rely on the
stable order of microtask resolutions (and the stable # of promises for a
specific operation). That has certainly changed with OSKeyStore.

The credit card form autofill is only enabled on Nightly.

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

--HG--
rename : browser/extensions/formautofill/MasterPassword.jsm => browser/extensions/formautofill/OSKeyStore.jsm
rename : browser/extensions/formautofill/test/browser/browser_creditCard_fill_master_password.js => browser/extensions/formautofill/test/browser/browser_creditCard_fill_cancel_login.js
extra : moz-landing-system : lando
2018-10-17 02:31:04 +00:00
Matthew Noorenberghe
3652e471de Bug 1496069 - Properly pass noValidate to EditAddress and set @novalidate. r=jaws
Differential Revision: https://phabricator.services.mozilla.com/D8808

--HG--
extra : moz-landing-system : lando
2018-10-16 18:01:35 +00:00
Matthew Noorenberghe
2e09e09822 Bug 1497523 - Link to '#privacy-form-autofill' prefs instead of '#privacy' from autofill. r=jaws
Differential Revision: https://phabricator.services.mozilla.com/D8599

--HG--
extra : moz-landing-system : lando
2018-10-16 17:47:38 +00:00
Jared Wein
4a3b48e09b Bug 1470199 - Add a tooltip for the CVV input. r=MattN
Differential Revision: https://phabricator.services.mozilla.com/D7473

--HG--
extra : moz-landing-system : lando
2018-10-13 00:39:02 +00:00
Sam Foster
8456761d3d Bug 1495530 - Use card icons in form autofill card preferences screen. r=MattN
Differential Revision: https://phabricator.services.mozilla.com/D7334

--HG--
extra : moz-landing-system : lando
2018-10-03 15:58:16 +00:00
Sam Foster
177b10d96f Bug 1477102 - Add third-party payment card logos, enable their use in official, branded builds. r=MattN
Depends on D7025

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

--HG--
extra : moz-landing-system : lando
2018-09-28 16:53:49 +00:00
Matthew Noorenberghe
05d5fb0939 Bug 1490805 - Add a required CSC/CVV field to the add card page. r=jaws
Depends on D6882

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

--HG--
extra : moz-landing-system : lando
2018-09-27 17:26:24 +00:00
Matthew Noorenberghe
5ba6f9aa93 Bug 1480717 - Fix credit card form billing address and persist checkbox layout. r=sfoster
Differential Revision: https://phabricator.services.mozilla.com/D4175

--HG--
extra : moz-landing-system : lando
2018-09-24 19:51:39 +00:00
Jared Wein
416ff8c392 Bug 1481972 - Add remaining countries to address autofill countries list. r=MattN
Saving and filling the countries via Form Autofill will still be limited to certain countries
but this allows the storage to be useful for Web Payments in other countries.

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

--HG--
extra : amend_source : c6810478b747cf51aaaafa73f83682cb23711231
2018-09-23 23:50:03 -07:00
Matthew Noorenberghe
514f9fcc29 Bug 1463545 - Replace grid layout of <address-option> with a new two line design. r=sfoster
Differential Revision: https://phabricator.services.mozilla.com/D5186

--HG--
extra : moz-landing-system : lando
2018-09-20 21:07:20 +00:00
Timothy Guan-tin Chien
4b8e9c3d4a Bug 1399367 - Remove MasterPassword.{encrypt|decrypt}Sync() methods r=MattN
This also makes various AutofillRecords methods async, with the exception of
remove() and removeAll().

Noted that I didn't implement any kind of "lock" for FormAutofillStorage --
please do not call these methods concurrently -- if you must please |await|
for the last call to resolve. This most likely would happen in tests, and
shouldn't happen in the real world, given that all user actions happen on
macrotasks, and probably not at the next tick, unless Quicksilver is a
Firefox user.

FormAutofillStorage can be improved if there are complex use cases for it.

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

--HG--
extra : moz-landing-system : lando
2018-09-05 17:54:48 +00:00
Csoregi Natalia
0ee540d6b5 Backed out changeset 56aa054d4cc0 (bug 1399367) for browser/extensions/formautofill/test/unit/test_activeStatus.js failures. CLOSED TREE 2018-09-05 05:47:21 +03:00
Timothy Guan-tin Chien
a3d7d3c3d1 Bug 1399367 - Remove MasterPassword.{encrypt|decrypt}Sync() methods r=MattN
This also makes various AutofillRecords methods async, with the exception of
remove() and removeAll().

Noted that I didn't implement any kind of "lock" for FormAutofillStorage --
please do not call these methods concurrently -- if you must please |await|
for the last call to resolve. This most likely would happen in tests, and
shouldn't happen in the real world, given that all user actions happen on
macrotasks, and probably not at the next tick, unless Quicksilver is a
Firefox user.

FormAutofillStorage can be improved if there are complex use cases for it.

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

--HG--
extra : moz-landing-system : lando
2018-09-05 00:32:57 +00:00
Jared Wein
cd49c65e14 Bug 1480719 - Require credit card expiration month and year before saving credit cards. r=MattN
Differential Revision: https://phabricator.services.mozilla.com/D4485

--HG--
extra : moz-landing-system : lando
2018-08-31 16:36:34 +00:00
Sam Foster
2f87b0ad28 Bug 1477105 - Support cc-type as valid field for credit cards in form autofill. r=MattN
* Add cc-type as a valid field for credit card forms
* Add a select menu and new string for designating a card type in the add/edit form
* Enforce matching of cc-type to one of the list of supported network ids for Basic Card
* Expose the network ids list as CreditCard.SUPPORTED_TYPES
* Populate the cc-type options using a getCreditCardTypes util method passed into the EditCreditCard constructor

* Web Payment tests: verify cc-type picker is presented, populated as expected and selections received in the response

MozReview-Commit-ID: 9QyU1UwTRay

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

--HG--
extra : rebase_source : 4ffffa97e845d727f1bfbcc88218992ed7d6c5a0
2018-08-28 15:59:57 -07:00
Matthew Noorenberghe
ddbfdc7178 Bug 1480886 - Position the form fields for the address-form and basic-card-form according to the spec. r=sfoster
Based on work by Jared Wein.

A follow-up will handle the persist checkbox and billing address.

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

--HG--
extra : rebase_source : 2d06beed9083f5f565ed83f8ec0fdcaf66b10eea
2018-08-28 15:34:50 -07:00
Matthew Noorenberghe
7e8909079a Bug 1480886 - Move the autofill country warning message out of the <form>. r=sfoster
Differential Revision: https://phabricator.services.mozilla.com/D4164

--HG--
extra : rebase_source : bcf2f541297b653a7c30badd74de56a57ee93806
2018-08-23 14:00:25 -07:00
Dorel Luca
5d1ad5e454 Backed out 2 changesets (bug 1480886) for browser-chrome failures on browser/extensions/formautofill/test/browser/browser_editAddressDialog.js. CLOSED TREE
Backed out changeset 55f933e0609f (bug 1480886)
Backed out changeset 63b68934f813 (bug 1480886)
2018-08-29 01:06:38 +03:00
Dorel Luca
ebe1bfb726 Backed out changeset c066358cf6fc (bug 1480886) for Browser-chrome failures on browser/extensions/formautofill/test/browser/browser_editAddressDialog.js. CLOSED TREE 2018-08-29 01:05:42 +03:00
Matthew Noorenberghe
5e07cc5b91 Bug 1480886 - Follow-up to disable the cc-type field. r=MattN
--HG--
extra : rebase_source : 4c2b0419bbc47c7f248b13b6c06a15e7331649d3
2018-08-28 13:43:38 -07:00
Matthew Noorenberghe
38d855ba7c Bug 1480886 - Position the form fields for the address-form and basic-card-form according to the spec. r=sfoster
Based on work by Jared Wein.

A follow-up will handle the persist checkbox and billing address.

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

--HG--
extra : rebase_source : ebca2596db11846da171ddc7d34db3dd6e161a6f
2018-08-24 16:49:53 -07:00
Matthew Noorenberghe
6a14238016 Bug 1480886 - Move the autofill country warning message out of the <form>. r=sfoster
Differential Revision: https://phabricator.services.mozilla.com/D4164

--HG--
extra : rebase_source : 3ffb645eba707b1968339977dd69d99aed2dc9c3
2018-08-23 14:00:25 -07:00
Matthew Noorenberghe
487d770cc3 Bug 1485473 - Combine the borders of the name fields on the address form. r=sfoster
Differential Revision: https://phabricator.services.mozilla.com/D4031

--HG--
extra : moz-landing-system : lando
2018-08-24 23:21:30 +00:00
Matthew Noorenberghe
0cf516ec70 Bug 1482220 - Listen for the autofill edit forms being appended for localization. r=sfoster
Differential Revision: https://phabricator.services.mozilla.com/D3846

--HG--
extra : moz-landing-system : lando
2018-08-22 02:58:38 +00:00
Jared Wein
066ed9e934 Bug 1477100 - Show the labels as placeholders inside of the fields. r=MattN
Show the labels as placeholders inside of the fields.

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

--HG--
extra : rebase_source : 4ca24b7b6833c3c1bcd4821ec127fe07c24b44d0
2018-08-17 16:25:46 -07:00
Matthew Noorenberghe
10c07d673d Bug 1483425 - Don't mark form fields as invalid/dirty on load in an 'add' form. r=sfoster
When editing an existing record, invalid fields should be indicated on load.

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

MozReview-Commit-ID: CbrqEyCUoyC

--HG--
extra : rebase_source : f44dc1b66d0c37d2b301a6b5c33ddde9fa7181bf
2018-08-17 16:27:21 -07:00
Andrew Swan
3badf01810 Bug 1449055 Convert formautofill to a webextension r=MattN,kmag
--HG--
rename : browser/extensions/formautofill/bootstrap.js => browser/extensions/formautofill/api.js
rename : browser/extensions/formautofill/install.rdf.in => browser/extensions/formautofill/manifest.json
rename : browser/extensions/formautofill/skin/shared/autocomplete-item.css => browser/extensions/formautofill/skin/shared/autocomplete-item-shared.css
rename : browser/extensions/formautofill/skin/shared/editDialog.css => browser/extensions/formautofill/skin/shared/editDialog-shared.css
extra : rebase_source : 8ddd40e3bbf84fadb7ef07b30822030e346ae341
extra : intermediate-source : 45306ff933fe8dfad0ab11b2f4072389b15fd993
extra : source : ecda6532c852b3f225fce998e3ce83ad157760e6
2018-07-28 14:06:07 -07:00
Csoregi Natalia
b0afa69be5 Backed out 3 changesets (bug 1449055) for multiple xpcshell failures on browser/extensions/formautofill/test/ . CLOSED TREE
Backed out changeset fc97f5b5e65d (bug 1449055)
Backed out changeset 45306ff933fe (bug 1449055)
Backed out changeset da3100049ef2 (bug 1449055)

--HG--
rename : browser/extensions/formautofill/api.js => browser/extensions/formautofill/bootstrap.js
rename : browser/extensions/formautofill/manifest.json => browser/extensions/formautofill/install.rdf.in
rename : browser/extensions/formautofill/skin/shared/autocomplete-item-shared.css => browser/extensions/formautofill/skin/shared/autocomplete-item.css
rename : browser/extensions/formautofill/skin/shared/editDialog-shared.css => browser/extensions/formautofill/skin/shared/editDialog.css
2018-08-16 00:15:19 +03:00