diff options
author | tfarina@chromium.org <tfarina@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-07-20 12:51:28 +0000 |
---|---|---|
committer | tfarina@chromium.org <tfarina@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-07-20 12:51:28 +0000 |
commit | d08b6ce1370d4c5a9e26649065a5a907a4786b13 (patch) | |
tree | 69bfe3f04aa017dc8b54d3f5365c9f5480ef6d69 | |
parent | c100e56d6c42c4ce0fbd4b2bcad405a265f4920c (diff) | |
download | chromium_src-d08b6ce1370d4c5a9e26649065a5a907a4786b13.zip chromium_src-d08b6ce1370d4c5a9e26649065a5a907a4786b13.tar.gz chromium_src-d08b6ce1370d4c5a9e26649065a5a907a4786b13.tar.bz2 |
chromeos: Fix chromeos TODO in input_method_util.h
Note: This was a TODO for yusukes.
BUG=None
TEST=None
R=yusukes@chromium.org
Review URL: http://codereview.chromium.org/7385007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@93186 0039d316-1c4b-4281-b951-d872f2087c98
3 files changed, 21 insertions, 17 deletions
diff --git a/chrome/browser/chromeos/input_method/input_method_util.cc b/chrome/browser/chromeos/input_method/input_method_util.cc index 7bac1ce..97a4aba 100644 --- a/chrome/browser/chromeos/input_method/input_method_util.cc +++ b/chrome/browser/chromeos/input_method/input_method_util.cc @@ -77,7 +77,7 @@ struct IdMaps { } // Go through the languages listed in kExtraLanguages. - for (size_t i = 0; i < arraysize(kExtraLanguages); ++i) { + for (size_t i = 0; i < kExtraLanguagesLength; ++i) { const char* language_code = kExtraLanguages[i].language_code; const char* input_method_id = kExtraLanguages[i].input_method_id; InputMethodIdToDescriptorMap::const_iterator iter = @@ -358,6 +358,20 @@ bool GetLocalizedString(const std::string& english_string, } // namespace +const ExtraLanguage kExtraLanguages[] = { + // Language Code Input Method ID + { "en-AU", "xkb:us::eng" }, // For Austrailia, use US keyboard layout. + { "id", "xkb:us::eng" }, // For Indonesian, use US keyboard layout. + // The code "fil" comes from app/l10_util.cc. + { "fil", "xkb:us::eng" }, // For Filipino, use US keyboard layout. + // For Netherlands, use US international keyboard layout. + { "nl", "xkb:us:intl:eng" }, + // The code "es-419" comes from app/l10_util.cc. + // For Spanish in Latin America, use Latin American keyboard layout. + { "es-419", "xkb:latam::spa" }, +}; +const size_t kExtraLanguagesLength = arraysize(kExtraLanguages); + std::wstring GetString(const std::string& english_string, const std::string& input_method_id) { string16 localized_string; diff --git a/chrome/browser/chromeos/input_method/input_method_util.h b/chrome/browser/chromeos/input_method/input_method_util.h index 2b13f42..0dd7897 100644 --- a/chrome/browser/chromeos/input_method/input_method_util.h +++ b/chrome/browser/chromeos/input_method/input_method_util.h @@ -6,6 +6,7 @@ #define CHROME_BROWSER_CHROMEOS_INPUT_METHOD_INPUT_METHOD_UTIL_H_ #pragma once +#include <cstddef> #include <map> #include <string> #include <vector> @@ -18,21 +19,12 @@ namespace input_method { // The list of language that do not have associated input methods in IBus. // For these languages, we associate input methods here. -const struct ExtraLanguage { +struct ExtraLanguage { const char* language_code; const char* input_method_id; -} kExtraLanguages[] = { - { "en-AU", "xkb:us::eng" }, // For Austrailia, use US keyboard layout. - { "id", "xkb:us::eng" }, // For Indonesian, use US keyboard layout. - // The code "fil" comes from app/l10_util.cc. - { "fil", "xkb:us::eng" }, // For Filipino, use US keyboard layout. - // For Netherlands, use US international keyboard layout. - { "nl", "xkb:us:intl:eng" }, - // The code "es-419" comes from app/l10_util.cc. - // For Spanish in Latin America, use Latin American keyboard layout. - { "es-419", "xkb:latam::spa" }, }; -// TODO(yusukes): Move |kExtraLanguages| to input_method_util.cc. +extern const ExtraLanguage kExtraLanguages[]; +extern const size_t kExtraLanguagesLength; // Converts a string sent from IBus IME engines, which is written in English, // into Chrome's string ID, then pulls internationalized resource string from diff --git a/chrome/browser/ui/webui/options/chromeos/cros_language_options_handler.cc b/chrome/browser/ui/webui/options/chromeos/cros_language_options_handler.cc index ea5c9b9..69e1fec 100644 --- a/chrome/browser/ui/webui/options/chromeos/cros_language_options_handler.cc +++ b/chrome/browser/ui/webui/options/chromeos/cros_language_options_handler.cc @@ -101,8 +101,7 @@ ListValue* CrosLanguageOptionsHandler::GetInputMethodList( language_codes->SetBoolean(language_code, true); // Check kExtraLanguages to see if there are languages associated with // this input method. If these are present, add these. - for (size_t j = 0; j < arraysize(input_method::kExtraLanguages); - ++j) { + for (size_t j = 0; j < input_method::kExtraLanguagesLength; ++j) { const std::string extra_input_method_id = input_method::kExtraLanguages[j].input_method_id; const std::string extra_language_code = @@ -130,8 +129,7 @@ ListValue* CrosLanguageOptionsHandler::GetLanguageList( language_codes.insert(language_code); } // Collect the language codes from kExtraLanguages. - for (size_t i = 0; i < arraysize(input_method::kExtraLanguages); - ++i) { + for (size_t i = 0; i < input_method::kExtraLanguagesLength; ++i) { const char* language_code = input_method::kExtraLanguages[i].language_code; language_codes.insert(language_code); |