| Index: chrome/browser/chromeos/input_method/input_method_util.cc
|
| diff --git a/chrome/browser/chromeos/input_method/input_method_util.cc b/chrome/browser/chromeos/input_method/input_method_util.cc
|
| index 69db27c379af9add29ca24f66092b06f90a51f17..9831c2dd31e36e1310e07032a8a8eeebfe25f2c5 100644
|
| --- a/chrome/browser/chromeos/input_method/input_method_util.cc
|
| +++ b/chrome/browser/chromeos/input_method/input_method_util.cc
|
| @@ -434,8 +434,8 @@ base::string16 InputMethodUtil::GetInputMethodMediumName(
|
| return GetInputMethodShortName(input_method);
|
| }
|
|
|
| -base::string16 InputMethodUtil::GetInputMethodLongName(
|
| - const InputMethodDescriptor& input_method) const {
|
| +base::string16 InputMethodUtil::GetInputMethodLongNameInternal(
|
| + const InputMethodDescriptor& input_method, bool strip) const {
|
| if (!input_method.name().empty() && !IsKeyboardLayout(input_method.id())) {
|
| // If the descriptor has a name, use it.
|
| return base::UTF8ToUTF16(input_method.name());
|
| @@ -443,25 +443,18 @@ base::string16 InputMethodUtil::GetInputMethodLongName(
|
|
|
| // We don't show language here. Name of keyboard layout or input method
|
| // usually imply (or explicitly include) its language.
|
| -
|
| // Special case for German, French and Dutch: these languages have multiple
|
| // keyboard layouts and share the same layout of keyboard (Belgian). We need
|
| - // to show explicitly the language for the layout. For Arabic, Amharic, and
|
| - // Indic languages: they share "Standard Input Method".
|
| - const base::string16 standard_input_method_text =
|
| - delegate_->GetLocalizedString(
|
| - IDS_OPTIONS_SETTINGS_LANGUAGES_M17N_STANDARD_INPUT_METHOD);
|
| + // to show explicitly the language for the layout.
|
| DCHECK(!input_method.language_codes().empty());
|
| const std::string language_code = input_method.language_codes().at(0);
|
|
|
| - base::string16 text = TranslateString(input_method.id());
|
| - if (text == standard_input_method_text ||
|
| - language_code == "de" ||
|
| - language_code == "fr" ||
|
| - language_code == "nl") {
|
| + base::string16 text = (strip || input_method.name().empty())
|
| + ? TranslateString(input_method.id())
|
| + : base::UTF8ToUTF16(input_method.name());
|
| + if (language_code == "de" || language_code == "fr" || language_code == "nl") {
|
| const base::string16 language_name = delegate_->GetDisplayLanguageName(
|
| language_code);
|
| -
|
| text = language_name + base::UTF8ToUTF16(" - ") + text;
|
| }
|
|
|
| @@ -469,6 +462,17 @@ base::string16 InputMethodUtil::GetInputMethodLongName(
|
| return text;
|
| }
|
|
|
| +
|
| +base::string16 InputMethodUtil::GetInputMethodLongNameStripped(
|
| + const InputMethodDescriptor& input_method) const {
|
| + return GetInputMethodLongNameInternal(input_method, true /* strip */);
|
| +}
|
| +
|
| +base::string16 InputMethodUtil::GetInputMethodLongName(
|
| + const InputMethodDescriptor& input_method) const {
|
| + return GetInputMethodLongNameInternal(input_method, false /* strip */);
|
| +}
|
| +
|
| const InputMethodDescriptor* InputMethodUtil::GetInputMethodDescriptorFromId(
|
| const std::string& input_method_id) const {
|
| InputMethodIdToDescriptorMap::const_iterator iter =
|
|
|