| OLD | NEW |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 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 #include "components/autofill/core/browser/autofill_profile.h" | 5 #include "components/autofill/core/browser/autofill_profile.h" |
| 6 | 6 |
| 7 #include <algorithm> | 7 #include <algorithm> |
| 8 #include <functional> | 8 #include <functional> |
| 9 #include <map> | 9 #include <map> |
| 10 #include <ostream> | 10 #include <ostream> |
| (...skipping 841 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 852 AddressField address_field; | 852 AddressField address_field; |
| 853 if (!i18n::FieldForType(*it, &address_field) || | 853 if (!i18n::FieldForType(*it, &address_field) || |
| 854 !::i18n::addressinput::IsFieldUsed( | 854 !::i18n::addressinput::IsFieldUsed( |
| 855 address_field, address_region_code) || | 855 address_field, address_region_code) || |
| 856 address_field == ::i18n::addressinput::COUNTRY) { | 856 address_field == ::i18n::addressinput::COUNTRY) { |
| 857 remaining_fields.push_back(*it); | 857 remaining_fields.push_back(*it); |
| 858 continue; | 858 continue; |
| 859 } | 859 } |
| 860 | 860 |
| 861 AutofillType autofill_type(*it); | 861 AutofillType autofill_type(*it); |
| 862 const base::string16& field_value = GetInfo(autofill_type, app_locale); | 862 base::string16 field_value = GetInfo(autofill_type, app_locale); |
| 863 if (field_value.empty()) | 863 if (field_value.empty()) |
| 864 continue; | 864 continue; |
| 865 | 865 |
| 866 trimmed_profile.SetInfo(autofill_type, field_value, app_locale); | 866 trimmed_profile.SetInfo(autofill_type, field_value, app_locale); |
| 867 --num_fields_to_use; | 867 --num_fields_to_use; |
| 868 } | 868 } |
| 869 | 869 |
| 870 scoped_ptr<AddressData> address_data = | 870 scoped_ptr<AddressData> address_data = |
| 871 i18n::CreateAddressDataFromAutofillProfile(trimmed_profile, app_locale); | 871 i18n::CreateAddressDataFromAutofillProfile(trimmed_profile, app_locale); |
| 872 std::string address_line; | 872 std::string address_line; |
| 873 ::i18n::addressinput::GetFormattedNationalAddressLine( | 873 ::i18n::addressinput::GetFormattedNationalAddressLine( |
| 874 *address_data, &address_line); | 874 *address_data, &address_line); |
| 875 base::string16 label = base::UTF8ToUTF16(address_line); | 875 base::string16 label = base::UTF8ToUTF16(address_line); |
| 876 | 876 |
| 877 for (std::vector<ServerFieldType>::const_iterator it = | 877 for (std::vector<ServerFieldType>::const_iterator it = |
| 878 remaining_fields.begin(); | 878 remaining_fields.begin(); |
| 879 it != remaining_fields.end() && num_fields_to_use > 0; | 879 it != remaining_fields.end() && num_fields_to_use > 0; |
| 880 ++it) { | 880 ++it) { |
| 881 const base::string16& field_value = GetInfo(AutofillType(*it), app_locale); | 881 base::string16 field_value; |
| 882 // Special case whole numbers: we want the user-formatted (raw) version, not |
| 883 // the canonicalized version we'll fill into the page. |
| 884 if (*it == PHONE_HOME_WHOLE_NUMBER) |
| 885 field_value = GetRawInfo(*it); |
| 886 else |
| 887 field_value = GetInfo(AutofillType(*it), app_locale); |
| 882 if (field_value.empty()) | 888 if (field_value.empty()) |
| 883 continue; | 889 continue; |
| 884 | 890 |
| 885 if (!label.empty()) | 891 if (!label.empty()) |
| 886 label.append(separator); | 892 label.append(separator); |
| 887 | 893 |
| 888 label.append(field_value); | 894 label.append(field_value); |
| 889 --num_fields_to_use; | 895 --num_fields_to_use; |
| 890 } | 896 } |
| 891 | 897 |
| (...skipping 148 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1040 << " " << UTF16ToUTF8(profile.GetRawInfo(ADDRESS_HOME_CITY)) << " " | 1046 << " " << UTF16ToUTF8(profile.GetRawInfo(ADDRESS_HOME_CITY)) << " " |
| 1041 << UTF16ToUTF8(profile.GetRawInfo(ADDRESS_HOME_STATE)) << " " | 1047 << UTF16ToUTF8(profile.GetRawInfo(ADDRESS_HOME_STATE)) << " " |
| 1042 << UTF16ToUTF8(profile.GetRawInfo(ADDRESS_HOME_ZIP)) << " " | 1048 << UTF16ToUTF8(profile.GetRawInfo(ADDRESS_HOME_ZIP)) << " " |
| 1043 << UTF16ToUTF8(profile.GetRawInfo(ADDRESS_HOME_SORTING_CODE)) << " " | 1049 << UTF16ToUTF8(profile.GetRawInfo(ADDRESS_HOME_SORTING_CODE)) << " " |
| 1044 << UTF16ToUTF8(profile.GetRawInfo(ADDRESS_HOME_COUNTRY)) << " " | 1050 << UTF16ToUTF8(profile.GetRawInfo(ADDRESS_HOME_COUNTRY)) << " " |
| 1045 << profile.language_code() << " " | 1051 << profile.language_code() << " " |
| 1046 << UTF16ToUTF8(profile.GetRawInfo(PHONE_HOME_WHOLE_NUMBER)); | 1052 << UTF16ToUTF8(profile.GetRawInfo(PHONE_HOME_WHOLE_NUMBER)); |
| 1047 } | 1053 } |
| 1048 | 1054 |
| 1049 } // namespace autofill | 1055 } // namespace autofill |
| OLD | NEW |