Chromium Code Reviews| Index: chrome/browser/autofill/android/phone_number_util_android.cc |
| diff --git a/chrome/browser/autofill/android/phone_number_util_android.cc b/chrome/browser/autofill/android/phone_number_util_android.cc |
| index 21501eaa314ae240b55c3cc63641d34c654f4fb7..7ca54a783da47328f01f3eae74f71f8a2c7ddd56 100644 |
| --- a/chrome/browser/autofill/android/phone_number_util_android.cc |
| +++ b/chrome/browser/autofill/android/phone_number_util_android.cc |
| @@ -20,16 +20,11 @@ using ::base::android::JavaParamRef; |
| using ::base::android::ScopedJavaLocalRef; |
| using ::i18n::phonenumbers::PhoneNumber; |
| using ::i18n::phonenumbers::PhoneNumberUtil; |
| -} // namespace |
| -// Formats the given number |jphone_number| to |
| -// i18n::phonenumbers::PhoneNumberUtil::PhoneNumberFormat::INTERNATIONAL format |
| -// by using i18n::phonenumbers::PhoneNumberUtil::Format. |
| -ScopedJavaLocalRef<jstring> Format( |
| - JNIEnv* env, |
| - const base::android::JavaParamRef<jclass>& jcaller, |
| - const JavaParamRef<jstring>& jphone_number) { |
| - const std::string phone_number = ConvertJavaStringToUTF8(env, jphone_number); |
| +// Formats the |phone_number| to the specified |format|. Returns the original |
| +// number if the operation is not possible. |
| +std::string FormatPhoneNumber(std::string phone_number, |
|
please use gerrit instead
2017/04/04 18:28:22
const-ref the input phone_number.
sebsg
2017/04/04 19:55:57
Done.
|
| + PhoneNumberUtil::PhoneNumberFormat format) { |
| const std::string default_region_code = |
| autofill::AutofillCountry::CountryCodeForLocale( |
| g_browser_process->GetApplicationLocale()); |
| @@ -39,15 +34,39 @@ ScopedJavaLocalRef<jstring> Format( |
| if (phone_number_util->Parse(phone_number, default_region_code, |
| &parsed_number) != |
| PhoneNumberUtil::NO_PARSING_ERROR) { |
| - return ConvertUTF8ToJavaString(env, phone_number); |
| + return phone_number; |
| } |
| std::string formatted_number; |
| - phone_number_util->Format(parsed_number, |
| - PhoneNumberUtil::PhoneNumberFormat::INTERNATIONAL, |
| - &formatted_number); |
| + phone_number_util->Format(parsed_number, format, &formatted_number); |
| + return formatted_number; |
| +} |
| + |
| +} // namespace |
| - return ConvertUTF8ToJavaString(env, formatted_number); |
| +// Formats the given number |jphone_number| to |
| +// i18n::phonenumbers::PhoneNumberUtil::PhoneNumberFormat::INTERNATIONAL format |
| +// by using i18n::phonenumbers::PhoneNumberUtil::Format. |
| +ScopedJavaLocalRef<jstring> FormatForDisplay( |
| + JNIEnv* env, |
| + const base::android::JavaParamRef<jclass>& jcaller, |
| + const JavaParamRef<jstring>& jphone_number) { |
| + return ConvertUTF8ToJavaString( |
| + env, |
| + FormatPhoneNumber(ConvertJavaStringToUTF8(env, jphone_number), |
| + PhoneNumberUtil::PhoneNumberFormat::INTERNATIONAL)); |
| +} |
| + |
| +// Formats the given number |jphone_number| to |
| +// i18n::phonenumbers::PhoneNumberUtil::PhoneNumberFormat::E164 format by using |
| +// i18n::phonenumbers::PhoneNumberUtil::Format. |
| +ScopedJavaLocalRef<jstring> FormatForResponse( |
| + JNIEnv* env, |
| + const base::android::JavaParamRef<jclass>& jcaller, |
| + const JavaParamRef<jstring>& jphone_number) { |
| + return ConvertUTF8ToJavaString( |
| + env, FormatPhoneNumber(ConvertJavaStringToUTF8(env, jphone_number), |
| + PhoneNumberUtil::PhoneNumberFormat::E164)); |
|
please use gerrit instead
2017/04/04 18:28:22
Link to spec text that mentions E164.
sebsg
2017/04/04 19:55:57
Done.
|
| } |
| // Checks whether the given number |jphone_number| is valid by using |