| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 "chrome/browser/extensions/api/autofill_private/autofill_private_api.h" | 5 #include "chrome/browser/extensions/api/autofill_private/autofill_private_api.h" |
| 6 | 6 |
| 7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 #include <utility> | 8 #include <utility> |
| 9 | 9 |
| 10 #include "base/guid.h" | 10 #include "base/guid.h" |
| (...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 60 address_components->language_code = best_address_language_code; | 60 address_components->language_code = best_address_language_code; |
| 61 DCHECK(!components.empty()); | 61 DCHECK(!components.empty()); |
| 62 | 62 |
| 63 autofill_private::AddressComponentRow* row = nullptr; | 63 autofill_private::AddressComponentRow* row = nullptr; |
| 64 for (size_t i = 0; i < components.size(); ++i) { | 64 for (size_t i = 0; i < components.size(); ++i) { |
| 65 if (!row || | 65 if (!row || |
| 66 components[i - 1].length_hint == | 66 components[i - 1].length_hint == |
| 67 addressinput::AddressUiComponent::HINT_LONG || | 67 addressinput::AddressUiComponent::HINT_LONG || |
| 68 components[i].length_hint == | 68 components[i].length_hint == |
| 69 addressinput::AddressUiComponent::HINT_LONG) { | 69 addressinput::AddressUiComponent::HINT_LONG) { |
| 70 row = new autofill_private::AddressComponentRow; | 70 address_components->components.push_back( |
| 71 address_components->components.push_back(make_linked_ptr(row)); | 71 autofill_private::AddressComponentRow()); |
| 72 row = &address_components->components.back(); |
| 72 } | 73 } |
| 73 | 74 |
| 74 scoped_ptr<autofill_private::AddressComponent> | 75 autofill_private::AddressComponent component; |
| 75 component(new autofill_private::AddressComponent); | 76 component.field_name = components[i].name; |
| 76 component->field_name = components[i].name; | |
| 77 | 77 |
| 78 switch (components[i].field) { | 78 switch (components[i].field) { |
| 79 case i18n::addressinput::COUNTRY: | 79 case i18n::addressinput::COUNTRY: |
| 80 component->field = | 80 component.field = |
| 81 autofill_private::AddressField::ADDRESS_FIELD_COUNTRY_CODE; | 81 autofill_private::AddressField::ADDRESS_FIELD_COUNTRY_CODE; |
| 82 break; | 82 break; |
| 83 case i18n::addressinput::ADMIN_AREA: | 83 case i18n::addressinput::ADMIN_AREA: |
| 84 component->field = | 84 component.field = |
| 85 autofill_private::AddressField::ADDRESS_FIELD_ADDRESS_LEVEL_1; | 85 autofill_private::AddressField::ADDRESS_FIELD_ADDRESS_LEVEL_1; |
| 86 break; | 86 break; |
| 87 case i18n::addressinput::LOCALITY: | 87 case i18n::addressinput::LOCALITY: |
| 88 component->field = | 88 component.field = |
| 89 autofill_private::AddressField::ADDRESS_FIELD_ADDRESS_LEVEL_2; | 89 autofill_private::AddressField::ADDRESS_FIELD_ADDRESS_LEVEL_2; |
| 90 break; | 90 break; |
| 91 case i18n::addressinput::DEPENDENT_LOCALITY: | 91 case i18n::addressinput::DEPENDENT_LOCALITY: |
| 92 component->field = | 92 component.field = |
| 93 autofill_private::AddressField::ADDRESS_FIELD_ADDRESS_LEVEL_3; | 93 autofill_private::AddressField::ADDRESS_FIELD_ADDRESS_LEVEL_3; |
| 94 break; | 94 break; |
| 95 case i18n::addressinput::SORTING_CODE: | 95 case i18n::addressinput::SORTING_CODE: |
| 96 component->field = | 96 component.field = |
| 97 autofill_private::AddressField::ADDRESS_FIELD_SORTING_CODE; | 97 autofill_private::AddressField::ADDRESS_FIELD_SORTING_CODE; |
| 98 break; | 98 break; |
| 99 case i18n::addressinput::POSTAL_CODE: | 99 case i18n::addressinput::POSTAL_CODE: |
| 100 component->field = | 100 component.field = |
| 101 autofill_private::AddressField::ADDRESS_FIELD_POSTAL_CODE; | 101 autofill_private::AddressField::ADDRESS_FIELD_POSTAL_CODE; |
| 102 break; | 102 break; |
| 103 case i18n::addressinput::STREET_ADDRESS: | 103 case i18n::addressinput::STREET_ADDRESS: |
| 104 component->field = | 104 component.field = |
| 105 autofill_private::AddressField::ADDRESS_FIELD_ADDRESS_LINES; | 105 autofill_private::AddressField::ADDRESS_FIELD_ADDRESS_LINES; |
| 106 break; | 106 break; |
| 107 case i18n::addressinput::ORGANIZATION: | 107 case i18n::addressinput::ORGANIZATION: |
| 108 component->field = | 108 component.field = |
| 109 autofill_private::AddressField::ADDRESS_FIELD_COMPANY_NAME; | 109 autofill_private::AddressField::ADDRESS_FIELD_COMPANY_NAME; |
| 110 break; | 110 break; |
| 111 case i18n::addressinput::RECIPIENT: | 111 case i18n::addressinput::RECIPIENT: |
| 112 component->field = | 112 component.field = |
| 113 autofill_private::AddressField::ADDRESS_FIELD_FULL_NAME; | 113 autofill_private::AddressField::ADDRESS_FIELD_FULL_NAME; |
| 114 break; | 114 break; |
| 115 } | 115 } |
| 116 | 116 |
| 117 switch (components[i].length_hint) { | 117 switch (components[i].length_hint) { |
| 118 case addressinput::AddressUiComponent::HINT_LONG: | 118 case addressinput::AddressUiComponent::HINT_LONG: |
| 119 component->is_long_field = true; | 119 component.is_long_field = true; |
| 120 break; | 120 break; |
| 121 case addressinput::AddressUiComponent::HINT_SHORT: | 121 case addressinput::AddressUiComponent::HINT_SHORT: |
| 122 component->is_long_field = false; | 122 component.is_long_field = false; |
| 123 break; | 123 break; |
| 124 } | 124 } |
| 125 | 125 |
| 126 row->row.push_back(make_linked_ptr(component.release())); | 126 row->row.push_back(std::move(component)); |
| 127 } | 127 } |
| 128 } | 128 } |
| 129 | 129 |
| 130 // Searches the |list| for the value at |index|. If this value is present in | 130 // Searches the |list| for the value at |index|. If this value is present in |
| 131 // any of the rest of the list, then the item (at |index|) is removed. The | 131 // any of the rest of the list, then the item (at |index|) is removed. The |
| 132 // comparison of phone number values is done on normalized versions of the phone | 132 // comparison of phone number values is done on normalized versions of the phone |
| 133 // number values. | 133 // number values. |
| 134 void RemoveDuplicatePhoneNumberAtIndex( | 134 void RemoveDuplicatePhoneNumberAtIndex( |
| 135 size_t index, const std::string& country_code, base::ListValue* list) { | 135 size_t index, const std::string& country_code, base::ListValue* list) { |
| 136 base::string16 new_value; | 136 base::string16 new_value; |
| (...skipping 292 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 429 error_ = kErrorDataUnavailable; | 429 error_ = kErrorDataUnavailable; |
| 430 return RespondNow(NoArguments()); | 430 return RespondNow(NoArguments()); |
| 431 } | 431 } |
| 432 | 432 |
| 433 personal_data->ResetFullServerCard(parameters->guid); | 433 personal_data->ResetFullServerCard(parameters->guid); |
| 434 | 434 |
| 435 return RespondNow(NoArguments()); | 435 return RespondNow(NoArguments()); |
| 436 } | 436 } |
| 437 | 437 |
| 438 } // namespace extensions | 438 } // namespace extensions |
| OLD | NEW |