| Index: components/payments/core/payments_profile_comparator.h
|
| diff --git a/components/payments/core/payments_profile_comparator.h b/components/payments/core/payments_profile_comparator.h
|
| index 2c8b934ad81204400dce0073105f89cc2a351ac7..e186e05efad34969007fa9198fb58d7049a07e35 100644
|
| --- a/components/payments/core/payments_profile_comparator.h
|
| +++ b/components/payments/core/payments_profile_comparator.h
|
| @@ -71,21 +71,25 @@ class PaymentsProfileComparator : public autofill::AutofillProfileComparator {
|
| // |profile|.
|
| bool IsContactInfoComplete(const autofill::AutofillProfile* profile) const;
|
|
|
| - // Comparison function suitable for sorting profiles by contact completeness
|
| - // score with std::sort.
|
| - bool IsContactMoreComplete(const autofill::AutofillProfile* p1,
|
| - const autofill::AutofillProfile* p2) const;
|
| + // Returns profiles for shipping, ordered by completeness. |profiles| should
|
| + // be passed in order of frecency, and this order will be preserved among
|
| + // equally-complete profiles.
|
| + std::vector<autofill::AutofillProfile*> FilterProfilesForShipping(
|
| + const std::vector<autofill::AutofillProfile*>& profiles) const;
|
|
|
| - // Returns a localized string to be displayed in UI indicating what action,
|
| - // if any, must be taken for the given profile to be used as contact info.
|
| - base::string16 GetStringForMissingContactFields(
|
| - const autofill::AutofillProfile& profile) const;
|
| + int GetShippingCompletenessScore(
|
| + const autofill::AutofillProfile* profile) const;
|
|
|
| // Returns true iff every field needed to use |profile| as a shipping address
|
| // is populated.
|
| bool IsShippingComplete(const autofill::AutofillProfile* profile) const;
|
|
|
| // Returns a localized string to be displayed in UI indicating what action,
|
| + // if any, must be taken for the given profile to be used as contact info.
|
| + base::string16 GetStringForMissingContactFields(
|
| + const autofill::AutofillProfile& profile) const;
|
| +
|
| + // Returns a localized string to be displayed in UI indicating what action,
|
| // if any, must be taken for the given profile to be used as a shipping
|
| // address.
|
| base::string16 GetStringForMissingShippingFields(
|
| @@ -103,6 +107,14 @@ class PaymentsProfileComparator : public autofill::AutofillProfileComparator {
|
| base::string16 GetStringForMissingFields(ProfileFields fields) const;
|
| bool AreRequiredAddressFieldsPresent(
|
| const autofill::AutofillProfile& profile) const;
|
| +
|
| + // Comparison functions suitable for sorting profiles by completeness
|
| + // score with std::sort.
|
| + bool IsContactMoreComplete(const autofill::AutofillProfile* p1,
|
| + const autofill::AutofillProfile* p2) const;
|
| + bool IsShippingMoreComplete(const autofill::AutofillProfile* p1,
|
| + const autofill::AutofillProfile* p2) const;
|
| +
|
| mutable std::map<std::string, ProfileFields> cache_;
|
| const PaymentOptionsProvider& options_;
|
| };
|
|
|