New issue
Advanced search Search tips

Issue 675634 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Jun 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 2
Type: Bug



Sign in to add a comment

[Payment Request] Address Editor: use actual dropdowns for state/subregion entry.

Project Member Reported by ma...@chromium.org, Dec 19 2016

Issue description

In the Payment Request add or edit flow for an address (see AddressEditor.java [1]), the fields to enter a state/subregion are text inputs. They should be dropdowns, using data from libaddressinput (example: [2])


[1] https://cs.chromium.org/chromium/src/chrome/android/java/src/org/chromium/chrome/browser/payments/AddressEditor.java?rcl=0&l=125

[2] https://chromium-i18n.appspot.com/ssl-aggregate-address/data/CA

 
Project Member

Comment 1 by bugdroid1@chromium.org, Apr 6 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/69b196d676ecbbb986009aaf9f5627fd6e332de1

commit 69b196d676ecbbb986009aaf9f5627fd6e332de1
Author: parastoog <parastoog@google.com>
Date: Thu Apr 06 20:49:20 2017

Use drop-down list for admin areas (state, province, ..)

-- In the payment request form (instead of the previous text-field).

- For this purpose, the rules of the specified country are loaded from
 the i18n aggregate server, and the country's sub-keys are retrieved from the right rule.

- If the server doesn't respond, or there is a time-out, or if no
  admin areas are recorded for that country, show text-field.

   -- Add all the fields to the form, only when admin areas are loaded.
      This way we can have the fields in order. Otherwise, admin areas
      would show up at the end (since they are fetched asynchronously.)

- In the Payment Request tests, the admin area field would always be a
  text field (and not a drop down). This way, the tests would be
  independent of the network connection state.

- Tests were added to the AddressValidatorTest according to the
  changes.

BUG= 675634 

Review-Url: https://codereview.chromium.org/2680143002
Cr-Commit-Position: refs/heads/master@{#462611}

[modify] https://crrev.com/69b196d676ecbbb986009aaf9f5627fd6e332de1/chrome/android/java/src/org/chromium/chrome/browser/autofill/PersonalDataManager.java
[modify] https://crrev.com/69b196d676ecbbb986009aaf9f5627fd6e332de1/chrome/android/java/src/org/chromium/chrome/browser/payments/AddressEditor.java
[modify] https://crrev.com/69b196d676ecbbb986009aaf9f5627fd6e332de1/chrome/android/java/src/org/chromium/chrome/browser/payments/PaymentRequestImpl.java
[modify] https://crrev.com/69b196d676ecbbb986009aaf9f5627fd6e332de1/chrome/android/java/src/org/chromium/chrome/browser/payments/ui/EditorDropdownField.java
[modify] https://crrev.com/69b196d676ecbbb986009aaf9f5627fd6e332de1/chrome/android/java/src/org/chromium/chrome/browser/payments/ui/EditorFieldModel.java
[modify] https://crrev.com/69b196d676ecbbb986009aaf9f5627fd6e332de1/chrome/android/java/src/org/chromium/chrome/browser/payments/ui/EditorView.java
[modify] https://crrev.com/69b196d676ecbbb986009aaf9f5627fd6e332de1/chrome/android/java/src/org/chromium/chrome/browser/preferences/autofill/AutofillProfileBridge.java
[modify] https://crrev.com/69b196d676ecbbb986009aaf9f5627fd6e332de1/chrome/android/javatests/src/org/chromium/chrome/browser/autofill/AutofillTestHelper.java
[modify] https://crrev.com/69b196d676ecbbb986009aaf9f5627fd6e332de1/chrome/browser/autofill/android/personal_data_manager_android.cc
[modify] https://crrev.com/69b196d676ecbbb986009aaf9f5627fd6e332de1/chrome/browser/autofill/android/personal_data_manager_android.h
[modify] https://crrev.com/69b196d676ecbbb986009aaf9f5627fd6e332de1/components/payments/core/address_normalizer.cc
[modify] https://crrev.com/69b196d676ecbbb986009aaf9f5627fd6e332de1/components/payments/core/address_normalizer.h
[modify] https://crrev.com/69b196d676ecbbb986009aaf9f5627fd6e332de1/third_party/libaddressinput/chromium/chrome_address_validator.cc
[modify] https://crrev.com/69b196d676ecbbb986009aaf9f5627fd6e332de1/third_party/libaddressinput/chromium/chrome_address_validator.h
[modify] https://crrev.com/69b196d676ecbbb986009aaf9f5627fd6e332de1/third_party/libaddressinput/chromium/chrome_address_validator_unittest.cc

Project Member

Comment 2 by bugdroid1@chromium.org, Apr 7 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/d93ff442df53bb6e2ac7ccb153192ab73524477b

commit d93ff442df53bb6e2ac7ccb153192ab73524477b
Author: hanxi <hanxi@chromium.org>
Date: Fri Apr 07 15:39:44 2017

Revert of Use dropdown list for admin areas in pr form. (patchset #18 id:1000001 of https://codereview.chromium.org/2680143002/ )

Reason for revert:
The patch causes chrome_public_test_apk failing on chromium.android/Marshmallow Tablet Tester:  crbug.com/709491 .

Original issue's description:
> Use drop-down list for admin areas (state, province, ..)
>
> -- In the payment request form (instead of the previous text-field).
>
> - For this purpose, the rules of the specified country are loaded from
>  the i18n aggregate server, and the country's sub-keys are retrieved from the right rule.
>
> - If the server doesn't respond, or there is a time-out, or if no
>   admin areas are recorded for that country, show text-field.
>
>    -- Add all the fields to the form, only when admin areas are loaded.
>       This way we can have the fields in order. Otherwise, admin areas
>       would show up at the end (since they are fetched asynchronously.)
>
> - In the Payment Request tests, the admin area field would always be a
>   text field (and not a drop down). This way, the tests would be
>   independent of the network connection state.
>
> - Tests were added to the AddressValidatorTest according to the
>   changes.
>
> BUG= 675634 
>
> Review-Url: https://codereview.chromium.org/2680143002
> Cr-Commit-Position: refs/heads/master@{#462611}
> Committed: https://chromium.googlesource.com/chromium/src/+/69b196d676ecbbb986009aaf9f5627fd6e332de1

TBR=sebsg@chromium.org,mathp@chromium.org,rouslan@chromium.org,dfalcantara@chromium.org,parastoog@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG= 675634 

Review-Url: https://codereview.chromium.org/2800013004
Cr-Commit-Position: refs/heads/master@{#462867}

[modify] https://crrev.com/d93ff442df53bb6e2ac7ccb153192ab73524477b/chrome/android/java/src/org/chromium/chrome/browser/autofill/PersonalDataManager.java
[modify] https://crrev.com/d93ff442df53bb6e2ac7ccb153192ab73524477b/chrome/android/java/src/org/chromium/chrome/browser/payments/AddressEditor.java
[modify] https://crrev.com/d93ff442df53bb6e2ac7ccb153192ab73524477b/chrome/android/java/src/org/chromium/chrome/browser/payments/PaymentRequestImpl.java
[modify] https://crrev.com/d93ff442df53bb6e2ac7ccb153192ab73524477b/chrome/android/java/src/org/chromium/chrome/browser/payments/ui/EditorDropdownField.java
[modify] https://crrev.com/d93ff442df53bb6e2ac7ccb153192ab73524477b/chrome/android/java/src/org/chromium/chrome/browser/payments/ui/EditorFieldModel.java
[modify] https://crrev.com/d93ff442df53bb6e2ac7ccb153192ab73524477b/chrome/android/java/src/org/chromium/chrome/browser/payments/ui/EditorView.java
[modify] https://crrev.com/d93ff442df53bb6e2ac7ccb153192ab73524477b/chrome/android/java/src/org/chromium/chrome/browser/preferences/autofill/AutofillProfileBridge.java
[modify] https://crrev.com/d93ff442df53bb6e2ac7ccb153192ab73524477b/chrome/android/javatests/src/org/chromium/chrome/browser/autofill/AutofillTestHelper.java
[modify] https://crrev.com/d93ff442df53bb6e2ac7ccb153192ab73524477b/chrome/browser/autofill/android/personal_data_manager_android.cc
[modify] https://crrev.com/d93ff442df53bb6e2ac7ccb153192ab73524477b/chrome/browser/autofill/android/personal_data_manager_android.h
[modify] https://crrev.com/d93ff442df53bb6e2ac7ccb153192ab73524477b/components/payments/core/address_normalizer.cc
[modify] https://crrev.com/d93ff442df53bb6e2ac7ccb153192ab73524477b/components/payments/core/address_normalizer.h
[modify] https://crrev.com/d93ff442df53bb6e2ac7ccb153192ab73524477b/third_party/libaddressinput/chromium/chrome_address_validator.cc
[modify] https://crrev.com/d93ff442df53bb6e2ac7ccb153192ab73524477b/third_party/libaddressinput/chromium/chrome_address_validator.h
[modify] https://crrev.com/d93ff442df53bb6e2ac7ccb153192ab73524477b/third_party/libaddressinput/chromium/chrome_address_validator_unittest.cc

Comment 3 by ma...@chromium.org, Jun 15 2017

Can we mark this fixed?
Status: Fixed (was: Assigned)
Components: -UI>Browser>Autofill>Payments UI>Browser>Payments

Sign in to add a comment