diff options
author | isherman@chromium.org <isherman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-07-13 02:32:34 +0000 |
---|---|---|
committer | isherman@chromium.org <isherman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-07-13 02:32:34 +0000 |
commit | 59e74fe3c5312b7f168a80c74ef09df808af746e (patch) | |
tree | 23de7791b33792433da630d239cbe58af1bbe261 /chrome/browser/autocomplete_history_manager.cc | |
parent | fb50bc9c6c0de329ee795e9776b56ed034db61c2 (diff) | |
download | chromium_src-59e74fe3c5312b7f168a80c74ef09df808af746e.zip chromium_src-59e74fe3c5312b7f168a80c74ef09df808af746e.tar.gz chromium_src-59e74fe3c5312b7f168a80c74ef09df808af746e.tar.bz2 |
Save autocomplete text for search fields and other specialized text fields.
BUG=69847
TEST=unit_tests --gtest_filter=AutocompleteHistoryManagerTest.SearchField
Review URL: http://codereview.chromium.org/7349001
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@92299 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/autocomplete_history_manager.cc')
-rw-r--r-- | chrome/browser/autocomplete_history_manager.cc | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/chrome/browser/autocomplete_history_manager.cc b/chrome/browser/autocomplete_history_manager.cc index 4362283..bf64c35 100644 --- a/chrome/browser/autocomplete_history_manager.cc +++ b/chrome/browser/autocomplete_history_manager.cc @@ -19,6 +19,7 @@ #include "webkit/glue/form_data.h" using webkit_glue::FormData; +using webkit_glue::FormField; namespace { @@ -85,6 +86,16 @@ bool IsSSN(const string16& text) { return true; } +bool IsTextField(const FormField& field) { + return + field.form_control_type == ASCIIToUTF16("text") || + field.form_control_type == ASCIIToUTF16("search") || + field.form_control_type == ASCIIToUTF16("tel") || + field.form_control_type == ASCIIToUTF16("url") || + field.form_control_type == ASCIIToUTF16("email") || + field.form_control_type == ASCIIToUTF16("text"); +} + } // namespace AutocompleteHistoryManager::AutocompleteHistoryManager( @@ -130,13 +141,13 @@ void AutocompleteHistoryManager::OnFormSubmitted(const FormData& form) { // - text field // - value is not a credit card number // - value is not a SSN - std::vector<webkit_glue::FormField> values; - for (std::vector<webkit_glue::FormField>::const_iterator iter = + std::vector<FormField> values; + for (std::vector<FormField>::const_iterator iter = form.fields.begin(); iter != form.fields.end(); ++iter) { if (!iter->value.empty() && !iter->name.empty() && - iter->form_control_type == ASCIIToUTF16("text") && + IsTextField(*iter) && !CreditCard::IsValidCreditCardNumber(iter->value) && !IsSSN(iter->value)) { values.push_back(*iter); |