| Index: chrome/android/java/src/org/chromium/chrome/browser/autofill/PersonalDataManager.java
|
| diff --git a/chrome/android/java/src/org/chromium/chrome/browser/autofill/PersonalDataManager.java b/chrome/android/java/src/org/chromium/chrome/browser/autofill/PersonalDataManager.java
|
| index 3d4c3acbe054731a0d400916bffeca4121a4894b..28d36f4fb0ad1ae137e8aed452d42ee28248c1a4 100644
|
| --- a/chrome/android/java/src/org/chromium/chrome/browser/autofill/PersonalDataManager.java
|
| +++ b/chrome/android/java/src/org/chromium/chrome/browser/autofill/PersonalDataManager.java
|
| @@ -486,10 +486,12 @@ public class PersonalDataManager {
|
|
|
| String[] profileLabels = nativeGetProfileLabels(mPersonalDataManagerAndroid, addressOnly);
|
|
|
| - int profileCount = nativeGetProfileCount(mPersonalDataManagerAndroid);
|
| - List<AutofillProfile> profiles = new ArrayList<AutofillProfile>(profileCount);
|
| - for (int i = 0; i < profileCount; i++) {
|
| - AutofillProfile profile = nativeGetProfileByIndex(mPersonalDataManagerAndroid, i);
|
| + String[] profileGUIDs = nativeGetProfileGUIDsToSuggest(mPersonalDataManagerAndroid);
|
| +
|
| + List<AutofillProfile> profiles = new ArrayList<AutofillProfile>(profileGUIDs.length);
|
| + for (int i = 0; i < profileGUIDs.length; i++) {
|
| + AutofillProfile profile =
|
| + nativeGetProfileByGUID(mPersonalDataManagerAndroid, profileGUIDs[i]);
|
| profile.setLabel(profileLabels[i]);
|
| profiles.add(profile);
|
| }
|
| @@ -514,10 +516,12 @@ public class PersonalDataManager {
|
|
|
| public List<CreditCard> getCreditCards() {
|
| ThreadUtils.assertOnUiThread();
|
| - int count = nativeGetCreditCardCount(mPersonalDataManagerAndroid);
|
| - List<CreditCard> cards = new ArrayList<CreditCard>(count);
|
| - for (int i = 0; i < count; i++) {
|
| - cards.add(nativeGetCreditCardByIndex(mPersonalDataManagerAndroid, i));
|
| +
|
| + String[] creditCardGUIDs = nativeGetCreditCardGUIDsToSuggest(mPersonalDataManagerAndroid);
|
| +
|
| + List<CreditCard> cards = new ArrayList<CreditCard>(creditCardGUIDs.length);
|
| + for (int i = 0; i < creditCardGUIDs.length; i++) {
|
| + cards.add(nativeGetCreditCardByGUID(mPersonalDataManagerAndroid, creditCardGUIDs[i]));
|
| }
|
| return cards;
|
| }
|
| @@ -547,6 +551,18 @@ public class PersonalDataManager {
|
| mPersonalDataManagerAndroid, webContents, guid, delegate);
|
| }
|
|
|
| + @VisibleForTesting
|
| + public void setProfileUseStatsForTesting(String guid, int count, int date) {
|
| + ThreadUtils.assertOnUiThread();
|
| + nativeSetProfileUseStatsForTest(mPersonalDataManagerAndroid, guid, count, date);
|
| + }
|
| +
|
| + @VisibleForTesting
|
| + public void setCreditCardUseStatsForTesting(String guid, int count, int date) {
|
| + ThreadUtils.assertOnUiThread();
|
| + nativeSetCreditCardUseStatsForTest(mPersonalDataManagerAndroid, guid, count, date);
|
| + }
|
| +
|
| /**
|
| * @return Whether the Autofill feature is enabled.
|
| */
|
| @@ -585,23 +601,24 @@ public class PersonalDataManager {
|
| }
|
|
|
| private native long nativeInit();
|
| - private native int nativeGetProfileCount(long nativePersonalDataManagerAndroid);
|
| + private native String[] nativeGetProfileGUIDsToSuggest(long nativePersonalDataManagerAndroid);
|
| private native String[] nativeGetProfileLabels(long nativePersonalDataManagerAndroid,
|
| boolean addressOnly);
|
| - private native AutofillProfile nativeGetProfileByIndex(long nativePersonalDataManagerAndroid,
|
| - int index);
|
| private native AutofillProfile nativeGetProfileByGUID(long nativePersonalDataManagerAndroid,
|
| String guid);
|
| private native String nativeSetProfile(long nativePersonalDataManagerAndroid,
|
| AutofillProfile profile);
|
| - private native int nativeGetCreditCardCount(long nativePersonalDataManagerAndroid);
|
| - private native CreditCard nativeGetCreditCardByIndex(long nativePersonalDataManagerAndroid,
|
| - int index);
|
| + private native String[] nativeGetCreditCardGUIDsToSuggest(
|
| + long nativePersonalDataManagerAndroid);
|
| private native CreditCard nativeGetCreditCardByGUID(long nativePersonalDataManagerAndroid,
|
| String guid);
|
| private native String nativeSetCreditCard(long nativePersonalDataManagerAndroid,
|
| CreditCard card);
|
| private native void nativeRemoveByGUID(long nativePersonalDataManagerAndroid, String guid);
|
| + private native void nativeSetProfileUseStatsForTest(
|
| + long nativePersonalDataManagerAndroid, String guid, int count, int date);
|
| + private native void nativeSetCreditCardUseStatsForTest(
|
| + long nativePersonalDataManagerAndroid, String guid, int count, int date);
|
| private native void nativeClearUnmaskedCache(
|
| long nativePersonalDataManagerAndroid, String guid);
|
| private native void nativeGetFullCardForPaymentRequest(long nativePersonalDataManagerAndroid,
|
|
|