| Index: chrome/browser/ui/webui/options2/font_settings_handler2.cc
|
| diff --git a/chrome/browser/ui/webui/options2/font_settings_handler2.cc b/chrome/browser/ui/webui/options2/font_settings_handler2.cc
|
| index bac3faab785c09f2fd2b2b66553919228c99ebad..1fc18fcb42a0037c8e953da7215b3733358b4e4d 100644
|
| --- a/chrome/browser/ui/webui/options2/font_settings_handler2.cc
|
| +++ b/chrome/browser/ui/webui/options2/font_settings_handler2.cc
|
| @@ -133,6 +133,18 @@ void FontSettingsHandler::HandleFetchFontsData(const ListValue* args) {
|
|
|
| void FontSettingsHandler::FontsListHasLoaded(
|
| scoped_ptr<base::ListValue> list) {
|
| + // Selects the directionality for the fonts in the given list.
|
| + for (size_t i = 0; i < list->GetSize(); i++) {
|
| + ListValue* font;
|
| + bool has_font = list->GetList(i, &font);
|
| + DCHECK(has_font);
|
| + string16 value;
|
| + bool has_value = font->GetString(1, &value);
|
| + DCHECK(has_value);
|
| + bool has_rtl_chars = base::i18n::StringContainsStrongRTLChars(value);
|
| + font->Append(Value::CreateStringValue(has_rtl_chars ? "rtl" : "ltr"));
|
| + }
|
| +
|
| ListValue encoding_list;
|
| const std::vector<CharacterEncoding::EncodingInfo>* encodings;
|
| PrefService* pref_service = Profile::FromWebUI(web_ui())->GetPrefs();
|
| @@ -151,9 +163,10 @@ void FontSettingsHandler::FontsListHasLoaded(
|
| std::string encoding =
|
| CharacterEncoding::GetCanonicalEncodingNameByCommandId(cmd_id);
|
| string16 name = it->encoding_display_name;
|
| - base::i18n::AdjustStringForLocaleDirection(&name);
|
| + bool has_rtl_chars = base::i18n::StringContainsStrongRTLChars(name);
|
| option->Append(Value::CreateStringValue(encoding));
|
| option->Append(Value::CreateStringValue(name));
|
| + option->Append(Value::CreateStringValue(has_rtl_chars ? "rtl" : "ltr"));
|
| } else {
|
| // Add empty name/value to indicate a separator item.
|
| option->Append(Value::CreateStringValue(""));
|
|
|