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

Unified Diff: chrome/android/java/src/org/chromium/chrome/browser/preferences/autofill/AutofillServerCardEditor.java

Issue 2109643003: Add billing address to masked server credit cards. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Add version_66.sql to the build file. Created 4 years, 6 months 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/preferences/autofill/AutofillServerCardEditor.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/autofill/AutofillServerCardEditor.java b/chrome/android/java/src/org/chromium/chrome/browser/preferences/autofill/AutofillServerCardEditor.java
new file mode 100644
index 0000000000000000000000000000000000000000..daeac4aed7098d71a919c5981e8556c6ac3dec07
--- /dev/null
+++ b/chrome/android/java/src/org/chromium/chrome/browser/preferences/autofill/AutofillServerCardEditor.java
@@ -0,0 +1,108 @@
+// Copyright 2016 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+package org.chromium.chrome.browser.preferences.autofill;
+
+import android.os.Bundle;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.AdapterView;
+import android.widget.Button;
+import android.widget.TextView;
+
+import org.chromium.chrome.R;
+import org.chromium.chrome.browser.EmbedContentViewActivity;
+import org.chromium.chrome.browser.autofill.PersonalDataManager;
+import org.chromium.chrome.browser.autofill.PersonalDataManager.AutofillProfile;
+
+/**
+ * Server credit card settings.
+ */
+public class AutofillServerCardEditor extends AutofillCreditCardEditor {
+ private View mLocalCopyLabel;
+ private View mClearLocalCopy;
+
+ @Override
+ public View onCreateView(LayoutInflater inflater, ViewGroup container,
+ Bundle savedInstanceState) {
+ final View v = super.onCreateView(inflater, container, savedInstanceState);
+ if (mCard == null) {
+ getActivity().finish();
+ return v;
+ }
+
+ ((TextView) v.findViewById(R.id.title)).setText(mCard.getObfuscatedNumber());
+ ((TextView) v.findViewById(R.id.summary)).setText(mCard.getFormattedExpirationDate(
+ getActivity()));
+ v.findViewById(R.id.edit_server_card).setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ EmbedContentViewActivity.show(getActivity(), R.string.autofill_edit_credit_card,
+ R.string.autofill_manage_wallet_cards_url);
+ }
+ });
+
+
+ mLocalCopyLabel = v.findViewById(R.id.local_copy_label);
+ mClearLocalCopy = v.findViewById(R.id.clear_local_copy);
+
+ if (mCard.getIsCached()) {
+ mClearLocalCopy.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ PersonalDataManager.getInstance().clearUnmaskedCache(mGUID);
+ removeLocalCopyViews();
+ }
+ });
+ } else {
+ removeLocalCopyViews();
+ }
+
+ initializeButtons(v);
+ return v;
+ }
+
+ private void removeLocalCopyViews() {
+ ViewGroup parent = (ViewGroup) mClearLocalCopy.getParent();
+ if (parent == null) return;
+
+ parent.removeView(mLocalCopyLabel);
+ parent.removeView(mClearLocalCopy);
+ }
+
+ @Override
+ protected int getLayoutId() {
+ return R.layout.autofill_server_card_editor;
+ }
+
+ @Override
+ protected int getTitleResourceId(boolean isNewEntry) {
+ return R.string.autofill_edit_credit_card;
+ }
+
+ @Override
+ public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
+ if (parent == mBillingAddress && position != mInitialBillingAddressPos) {
+ ((Button) getView().findViewById(R.id.button_primary)).setEnabled(true);
+ }
+ }
+
+ @Override
+ protected void saveEntry() {
+ PersonalDataManager.getInstance().updateServerCardBillingAddress(mGUID,
+ ((AutofillProfile) mBillingAddress.getSelectedItem()).getGUID());
+ }
+
+ @Override
+ protected boolean getIsDeletable() {
+ return false;
+ }
+
+ @Override
+ protected void initializeButtons(View v) {
+ super.initializeButtons(v);
+ mBillingAddress.setOnItemSelectedListener(this);
+ }
+}

Powered by Google App Engine
This is Rietveld 408576698