| Index: chrome/browser/ui/webui/options2/language_options_handler2.cc
|
| diff --git a/chrome/browser/ui/webui/options2/language_options_handler2.cc b/chrome/browser/ui/webui/options2/language_options_handler2.cc
|
| index 3e43a56b6eb6bcce4fed34e6e5d2e7a1d4abd955..09d824f86430cf5f5ee03e8ccf16e19a31f34895 100644
|
| --- a/chrome/browser/ui/webui/options2/language_options_handler2.cc
|
| +++ b/chrome/browser/ui/webui/options2/language_options_handler2.cc
|
| @@ -80,7 +80,6 @@ ListValue* LanguageOptionsHandler::GetLanguageList() {
|
| string16 native_display_name =
|
| l10n_util::GetDisplayNameForLocale(language_codes[i], language_codes[i],
|
| false);
|
| - base::i18n::AdjustStringForLocaleDirection(&native_display_name);
|
| display_names.push_back(display_name);
|
| language_map[display_name] =
|
| std::make_pair(language_codes[i], native_display_name);
|
| @@ -93,15 +92,22 @@ ListValue* LanguageOptionsHandler::GetLanguageList() {
|
| // Build the language list from the language map.
|
| ListValue* language_list = new ListValue();
|
| for (size_t i = 0; i < display_names.size(); ++i) {
|
| - const LanguagePair& pair = language_map[display_names[i]];
|
| - bool has_rtl_chars = base::i18n::StringContainsStrongRTLChars(
|
| - display_names[i]);
|
| + string16& display_name = display_names[i];
|
| + string16 adjusted_display_name(display_name);
|
| + base::i18n::AdjustStringForLocaleDirection(&adjusted_display_name);
|
| +
|
| + const LanguagePair& pair = language_map[display_name];
|
| + string16 adjusted_native_display_name(pair.second);
|
| + base::i18n::AdjustStringForLocaleDirection(&adjusted_native_display_name);
|
| +
|
| + bool has_rtl_chars = base::i18n::StringContainsStrongRTLChars(display_name);
|
| std::string directionality = has_rtl_chars ? "rtl" : "ltr";
|
| +
|
| DictionaryValue* dictionary = new DictionaryValue();
|
| dictionary->SetString("code", pair.first);
|
| - dictionary->SetString("displayName", display_names[i]);
|
| + dictionary->SetString("displayName", adjusted_display_name);
|
| dictionary->SetString("textDirection", directionality);
|
| - dictionary->SetString("nativeDisplayName", pair.second);
|
| + dictionary->SetString("nativeDisplayName", adjusted_native_display_name);
|
| language_list->Append(dictionary);
|
| }
|
|
|
|
|