| Index: chrome/browser/autofill/form_structure.h
|
| diff --git a/chrome/browser/autofill/form_structure.h b/chrome/browser/autofill/form_structure.h
|
| index 8b162828a9230873022109367b5879e0d199b7b2..e8cdc1f9f7e8b102761a514d69a6ae3512e63bc5 100644
|
| --- a/chrome/browser/autofill/form_structure.h
|
| +++ b/chrome/browser/autofill/form_structure.h
|
| @@ -49,7 +49,7 @@ class XmlElement;
|
| // in the fields along with additional information needed by Autofill.
|
| class FormStructure {
|
| public:
|
| - explicit FormStructure(const FormData& form);
|
| + FormStructure(const FormData& form, std::string autocheckout_url_prefix);
|
| virtual ~FormStructure();
|
|
|
| // Runs several heuristics against the form fields to determine their possible
|
| @@ -164,6 +164,7 @@ class FormStructure {
|
| private:
|
| friend class FormStructureTest;
|
| FRIEND_TEST_ALL_PREFIXES(AutofillDownloadTest, QueryAndUploadTest);
|
| +
|
| // 64-bit hash of the string - used in FormSignature and unit-tests.
|
| static std::string Hash64Bit(const std::string& str);
|
|
|
| @@ -186,6 +187,11 @@ class FormStructure {
|
| // distinguishing credit card sections from non-credit card ones -- is made.
|
| void IdentifySections(bool has_author_specified_sections);
|
|
|
| + bool IsAutocheckoutEnabled() const;
|
| +
|
| + // Returns the minimal number of fillable fields required to start autofill.
|
| + size_t RequiredFillableFields() const;
|
| +
|
| // The name of the form.
|
| string16 form_name_;
|
|
|
| @@ -224,8 +230,9 @@ class FormStructure {
|
| // author, via the |autocompletetype| attribute.
|
| bool has_author_specified_types_;
|
|
|
| - // State of the kEnableExperimentalFormFilling flag.
|
| - bool experimental_form_filling_enabled_;
|
| + // The URL prefix matched in autocheckout whitelist. An empty string implies
|
| + // autocheckout is not enabled for this form.
|
| + std::string autocheckout_url_prefix_;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(FormStructure);
|
| };
|
|
|