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

Side by Side Diff: components/autofill/browser/form_structure.cc

Issue 12721004: Autofill:Autocomplete: Enable autocheckout of input elements of type password. This will support fi… (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 9 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "components/autofill/browser/form_structure.h" 5 #include "components/autofill/browser/form_structure.h"
6 6
7 #include <utility> 7 #include <utility>
8 8
9 #include "base/basictypes.h" 9 #include "base/basictypes.h"
10 #include "base/command_line.h" 10 #include "base/command_line.h"
(...skipping 229 matching lines...) Expand 10 before | Expand all | Expand 10 after
240 autocheckout_url_prefix_(autocheckout_url_prefix) { 240 autocheckout_url_prefix_(autocheckout_url_prefix) {
241 // Copy the form fields. 241 // Copy the form fields.
242 std::map<string16, size_t> unique_names; 242 std::map<string16, size_t> unique_names;
243 for (std::vector<FormFieldData>::const_iterator field = 243 for (std::vector<FormFieldData>::const_iterator field =
244 form.fields.begin(); 244 form.fields.begin();
245 field != form.fields.end(); field++) { 245 field != form.fields.end(); field++) {
246 246
247 // Skipping checkable elements when Autocheckout is not enabled, else 247 // Skipping checkable elements when Autocheckout is not enabled, else
248 // these fields will interfere with existing field signatures with Autofill 248 // these fields will interfere with existing field signatures with Autofill
249 // servers. 249 // servers.
250 if (!field->is_checkable || IsAutocheckoutEnabled()) { 250 if ((!field->is_checkable && !field->is_password_field) ||
Ilya Sherman 2013/03/15 23:43:27 You should also make sure that password fields do
Raman Kakilate 2013/03/18 17:54:00 Done.
251 IsAutocheckoutEnabled()) {
251 // Add all supported form fields (including with empty names) to the 252 // Add all supported form fields (including with empty names) to the
252 // signature. This is a requirement for Autofill servers. 253 // signature. This is a requirement for Autofill servers.
253 form_signature_field_names_.append("&"); 254 form_signature_field_names_.append("&");
254 form_signature_field_names_.append(UTF16ToUTF8(field->name)); 255 form_signature_field_names_.append(UTF16ToUTF8(field->name));
255 } 256 }
256 257
257 // Generate a unique name for this field by appending a counter to the name. 258 // Generate a unique name for this field by appending a counter to the name.
258 // Make sure to prepend the counter with a non-numeric digit so that we are 259 // Make sure to prepend the counter with a non-numeric digit so that we are
259 // guaranteed to avoid collisions. 260 // guaranteed to avoid collisions.
260 if (!unique_names.count(field->name)) 261 if (!unique_names.count(field->name))
(...skipping 887 matching lines...) Expand 10 before | Expand all | Expand 10 after
1148 for (std::vector<AutofillField*>::iterator field = fields_.begin(); 1149 for (std::vector<AutofillField*>::iterator field = fields_.begin();
1149 field != fields_.end(); ++field) { 1150 field != fields_.end(); ++field) {
1150 AutofillType::FieldTypeGroup field_type_group = 1151 AutofillType::FieldTypeGroup field_type_group =
1151 AutofillType((*field)->type()).group(); 1152 AutofillType((*field)->type()).group();
1152 if (field_type_group == AutofillType::CREDIT_CARD) 1153 if (field_type_group == AutofillType::CREDIT_CARD)
1153 (*field)->set_section((*field)->section() + "-cc"); 1154 (*field)->set_section((*field)->section() + "-cc");
1154 else 1155 else
1155 (*field)->set_section((*field)->section() + "-default"); 1156 (*field)->set_section((*field)->section() + "-default");
1156 } 1157 }
1157 } 1158 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698