Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1537)

Unified Diff: chrome/android/java/src/org/chromium/chrome/browser/payments/CardEditor.java

Issue 2442933003: [Payments] Show the icon for the typed in credit card in editor (Closed)
Patch Set: fix assertion error and reland Created 4 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/android/java/src/org/chromium/chrome/browser/payments/CardEditor.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/payments/CardEditor.java b/chrome/android/java/src/org/chromium/chrome/browser/payments/CardEditor.java
index 071705d26e5f18f0c180008612f605713e25e386..43acdaa0850351dd42179445a9e9cffe79e60fe2 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/payments/CardEditor.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/payments/CardEditor.java
@@ -19,6 +19,7 @@ import org.chromium.chrome.browser.autofill.PersonalDataManager.CreditCard;
import org.chromium.chrome.browser.payments.PaymentRequestImpl.PaymentRequestServiceObserverForTest;
import org.chromium.chrome.browser.payments.ui.EditorFieldModel;
import org.chromium.chrome.browser.payments.ui.EditorFieldModel.EditorFieldValidator;
+import org.chromium.chrome.browser.payments.ui.EditorFieldModel.EditorValueIconGenerator;
import org.chromium.chrome.browser.payments.ui.EditorModel;
import org.chromium.chrome.browser.preferences.autofill.AutofillProfileBridge.DropdownKeyValue;
import org.chromium.content.browser.ContentViewCore;
@@ -113,6 +114,7 @@ public class CardEditor extends EditorBase<AutofillPaymentInstrument>
private final Handler mHandler;
private final EditorFieldValidator mCardNumberValidator;
+ private final EditorValueIconGenerator mCardIconGenerator;
private final AsyncTask<Void, Void, Calendar> mCalendar;
@Nullable private EditorFieldModel mIconHint;
@@ -183,9 +185,22 @@ public class CardEditor extends EditorBase<AutofillPaymentInstrument>
mCardNumberValidator = new EditorFieldValidator() {
@Override
public boolean isValid(@Nullable CharSequence value) {
- return value != null && mAcceptedCardTypes.contains(
- PersonalDataManager.getInstance().getBasicCardPaymentTypeIfValid(
- value.toString()));
+ return value != null
+ && mAcceptedCardTypes.contains(
+ PersonalDataManager.getInstance().getBasicCardPaymentType(
+ value.toString(), true));
+ }
+ };
+
+ mCardIconGenerator = new EditorValueIconGenerator() {
+ @Override
+ public int getIconResourceId(@Nullable CharSequence value) {
+ if (value == null) return 0;
+ CardTypeInfo cardTypeInfo =
+ mCardTypes.get(PersonalDataManager.getInstance().getBasicCardPaymentType(
+ value.toString(), false));
+ if (cardTypeInfo == null) return 0;
+ return cardTypeInfo.icon;
}
};
@@ -375,8 +390,8 @@ public class CardEditor extends EditorBase<AutofillPaymentInstrument>
if (mNumberField == null) {
mNumberField = EditorFieldModel.createTextInput(
EditorFieldModel.INPUT_TYPE_HINT_CREDIT_CARD,
- mContext.getString(R.string.autofill_credit_card_editor_number),
- null, mCardNumberValidator,
+ mContext.getString(R.string.autofill_credit_card_editor_number), null,
+ mCardNumberValidator, mCardIconGenerator,
mContext.getString(R.string.payments_field_required_validation_message),
mContext.getString(R.string.payments_card_number_invalid_validation_message),
null);
@@ -399,9 +414,9 @@ public class CardEditor extends EditorBase<AutofillPaymentInstrument>
if (mNameField == null) {
mNameField = EditorFieldModel.createTextInput(
EditorFieldModel.INPUT_TYPE_HINT_PERSON_NAME,
- mContext.getString(R.string.autofill_credit_card_editor_name), null, null,
- mContext.getString(R.string.payments_field_required_validation_message),
- null, null);
+ mContext.getString(R.string.autofill_credit_card_editor_name), null, null, null,
+ mContext.getString(R.string.payments_field_required_validation_message), null,
+ null);
}
mNameField.setValue(card.getName());
editor.addField(mNameField);

Powered by Google App Engine
This is Rietveld 408576698