OLD | NEW |
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 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 #import "chrome/browser/ui/cocoa/autofill/autofill_section_container.h" | 5 #import "chrome/browser/ui/cocoa/autofill/autofill_section_container.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 | 8 |
9 #include "base/mac/foundation_util.h" | 9 #include "base/mac/foundation_util.h" |
10 #include "base/strings/sys_string_conversions.h" | 10 #include "base/strings/sys_string_conversions.h" |
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
66 *line2 = text.substr(position + line_return.length()); | 66 *line2 = text.substr(position + line_return.length()); |
67 } | 67 } |
68 } | 68 } |
69 | 69 |
70 // If the Autofill data comes from a credit card, make sure to overwrite the | 70 // If the Autofill data comes from a credit card, make sure to overwrite the |
71 // CC comboboxes (even if they already have something in them). If the | 71 // CC comboboxes (even if they already have something in them). If the |
72 // Autofill data comes from an AutofillProfile, leave the comboboxes alone. | 72 // Autofill data comes from an AutofillProfile, leave the comboboxes alone. |
73 // TODO(groby): This kind of logic should _really_ live on the controller. | 73 // TODO(groby): This kind of logic should _really_ live on the controller. |
74 bool ShouldOverwriteComboboxes(autofill::DialogSection section, | 74 bool ShouldOverwriteComboboxes(autofill::DialogSection section, |
75 autofill::AutofillFieldType type) { | 75 autofill::AutofillFieldType type) { |
76 using autofill::AutofillType; | 76 if (autofill::AutofillType(type).group() != autofill::CREDIT_CARD) { |
77 if (AutofillType(type).group() != AutofillType::CREDIT_CARD) { | |
78 return false; | 77 return false; |
79 } | 78 } |
80 | 79 |
81 if (section == autofill::SECTION_CC) { | 80 if (section == autofill::SECTION_CC) { |
82 return true; | 81 return true; |
83 } | 82 } |
84 | 83 |
85 return section == autofill::SECTION_CC_BILLING; | 84 return section == autofill::SECTION_CC_BILLING; |
86 } | 85 } |
87 | 86 |
(...skipping 232 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
320 [field setFieldValue:@""]; | 319 [field setFieldValue:@""]; |
321 | 320 |
322 if (ShouldOverwriteComboboxes(section_, input.type)) { | 321 if (ShouldOverwriteComboboxes(section_, input.type)) { |
323 for (NSControl* control in [inputs_ subviews]) { | 322 for (NSControl* control in [inputs_ subviews]) { |
324 AutofillPopUpButton* popup = | 323 AutofillPopUpButton* popup = |
325 base::mac::ObjCCast<AutofillPopUpButton>(control); | 324 base::mac::ObjCCast<AutofillPopUpButton>(control); |
326 if (popup) { | 325 if (popup) { |
327 autofill::AutofillFieldType fieldType = | 326 autofill::AutofillFieldType fieldType = |
328 [self fieldTypeForControl:popup]; | 327 [self fieldTypeForControl:popup]; |
329 if (autofill::AutofillType(fieldType).group() == | 328 if (autofill::AutofillType(fieldType).group() == |
330 autofill::AutofillType::CREDIT_CARD) { | 329 autofill::CREDIT_CARD) { |
331 ui::ComboboxModel* model = | 330 ui::ComboboxModel* model = |
332 controller_->ComboboxModelForAutofillType(fieldType); | 331 controller_->ComboboxModelForAutofillType(fieldType); |
333 DCHECK(model); | 332 DCHECK(model); |
334 [popup selectItemAtIndex:model->GetDefaultIndex()]; | 333 [popup selectItemAtIndex:model->GetDefaultIndex()]; |
335 } | 334 } |
336 } | 335 } |
337 } | 336 } |
338 } | 337 } |
339 | 338 |
340 [self updateAndClobber:NO]; | 339 [self updateAndClobber:NO]; |
(...skipping 283 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
624 | 623 |
625 - (void)activateFieldForInput:(const autofill::DetailInput&)input { | 624 - (void)activateFieldForInput:(const autofill::DetailInput&)input { |
626 if ([self detailInputForType:input.type] != &input) | 625 if ([self detailInputForType:input.type] != &input) |
627 return; | 626 return; |
628 | 627 |
629 NSControl<AutofillInputField>* field = [inputs_ viewWithTag:input.type]; | 628 NSControl<AutofillInputField>* field = [inputs_ viewWithTag:input.type]; |
630 [[field window] makeFirstResponder:field]; | 629 [[field window] makeFirstResponder:field]; |
631 } | 630 } |
632 | 631 |
633 @end | 632 @end |
OLD | NEW |