OLD | NEW |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "chrome/browser/chromeos/status/language_menu_l10n_util.h" | 5 #include "chrome/browser/chromeos/status/language_menu_l10n_util.h" |
6 | 6 |
7 #include "base/hash_tables.h" | 7 #include "base/hash_tables.h" |
8 #include "base/utf_string_conversions.h" | 8 #include "base/utf_string_conversions.h" |
9 #include "chrome/browser/chrome_thread.h" | 9 #include "chrome/browser/chrome_thread.h" |
10 #include "grit/generated_resources.h" | 10 #include "grit/generated_resources.h" |
(...skipping 24 matching lines...) Expand all Loading... |
35 IDS_STATUSBAR_IME_CHINESE_PINYIN_TOGGLE_FULL_HALF_PUNCTUATION }, | 35 IDS_STATUSBAR_IME_CHINESE_PINYIN_TOGGLE_FULL_HALF_PUNCTUATION }, |
36 { "Simplfied/Traditional Chinese", | 36 { "Simplfied/Traditional Chinese", |
37 IDS_STATUSBAR_IME_CHINESE_PINYIN_TOGGLE_S_T_CHINESE }, | 37 IDS_STATUSBAR_IME_CHINESE_PINYIN_TOGGLE_S_T_CHINESE }, |
38 | 38 |
39 // TODO(yusukes): Support ibus-chewing and ibus-table-* if needed. | 39 // TODO(yusukes): Support ibus-chewing and ibus-table-* if needed. |
40 | 40 |
41 // For the "Languages and Input" dialog. | 41 // For the "Languages and Input" dialog. |
42 { "kbd (m17n)", IDS_OPTIONS_SETTINGS_LANGUAGES_M17N_STANDARD_INPUT_METHOD }, | 42 { "kbd (m17n)", IDS_OPTIONS_SETTINGS_LANGUAGES_M17N_STANDARD_INPUT_METHOD }, |
43 { "itrans (m17n)", // also uses the "STANDARD_INPUT_METHOD" id. | 43 { "itrans (m17n)", // also uses the "STANDARD_INPUT_METHOD" id. |
44 IDS_OPTIONS_SETTINGS_LANGUAGES_M17N_STANDARD_INPUT_METHOD }, | 44 IDS_OPTIONS_SETTINGS_LANGUAGES_M17N_STANDARD_INPUT_METHOD }, |
| 45 { "quick (m17n)", |
| 46 IDS_OPTIONS_SETTINGS_LANGUAGES_M17N_CHINESE_QUICK_INPUT_METHOD }, |
45 { "isiri (m17n)", | 47 { "isiri (m17n)", |
46 IDS_OPTIONS_SETTINGS_LANGUAGES_M17N_PERSIAN_ISIRI_2901_INPUT_METHOD }, | 48 IDS_OPTIONS_SETTINGS_LANGUAGES_M17N_PERSIAN_ISIRI_2901_INPUT_METHOD }, |
47 { "kesmanee (m17n)", | 49 { "kesmanee (m17n)", |
48 IDS_OPTIONS_SETTINGS_LANGUAGES_M17N_THAI_KESMANEE_INPUT_METHOD }, | 50 IDS_OPTIONS_SETTINGS_LANGUAGES_M17N_THAI_KESMANEE_INPUT_METHOD }, |
49 { "tis820 (m17n)", | 51 { "tis820 (m17n)", |
50 IDS_OPTIONS_SETTINGS_LANGUAGES_M17N_THAI_TIS820_INPUT_METHOD }, | 52 IDS_OPTIONS_SETTINGS_LANGUAGES_M17N_THAI_TIS820_INPUT_METHOD }, |
51 { "pattachote (m17n)", | 53 { "pattachote (m17n)", |
52 IDS_OPTIONS_SETTINGS_LANGUAGES_M17N_THAI_PATTACHOTE_INPUT_METHOD }, | 54 IDS_OPTIONS_SETTINGS_LANGUAGES_M17N_THAI_PATTACHOTE_INPUT_METHOD }, |
53 { "tcvn (m17n)", | 55 { "tcvn (m17n)", |
54 IDS_OPTIONS_SETTINGS_LANGUAGES_M17N_VIETNAMESE_TCVN_INPUT_METHOD }, | 56 IDS_OPTIONS_SETTINGS_LANGUAGES_M17N_VIETNAMESE_TCVN_INPUT_METHOD }, |
(...skipping 12 matching lines...) Expand all Loading... |
67 { "Pinyin", IDS_OPTIONS_SETTINGS_LANGUAGES_PINYIN_INPUT_METHOD }, | 69 { "Pinyin", IDS_OPTIONS_SETTINGS_LANGUAGES_PINYIN_INPUT_METHOD }, |
68 { "Mozc (US keyboard layout)", | 70 { "Mozc (US keyboard layout)", |
69 IDS_OPTIONS_SETTINGS_LANGUAGES_JAPANESE_MOZC_US_INPUT_METHOD }, | 71 IDS_OPTIONS_SETTINGS_LANGUAGES_JAPANESE_MOZC_US_INPUT_METHOD }, |
70 { "Mozc (Japanese keyboard layout)", | 72 { "Mozc (Japanese keyboard layout)", |
71 IDS_OPTIONS_SETTINGS_LANGUAGES_JAPANESE_MOZC_JP_INPUT_METHOD }, | 73 IDS_OPTIONS_SETTINGS_LANGUAGES_JAPANESE_MOZC_JP_INPUT_METHOD }, |
72 { "Google Japanese Input (US keyboard layout)", | 74 { "Google Japanese Input (US keyboard layout)", |
73 IDS_OPTIONS_SETTINGS_LANGUAGES_JAPANESE_GOOGLE_US_INPUT_METHOD }, | 75 IDS_OPTIONS_SETTINGS_LANGUAGES_JAPANESE_GOOGLE_US_INPUT_METHOD }, |
74 { "Google Japanese Input (Japanese keyboard layout)", | 76 { "Google Japanese Input (Japanese keyboard layout)", |
75 IDS_OPTIONS_SETTINGS_LANGUAGES_JAPANESE_GOOGLE_JP_INPUT_METHOD }, | 77 IDS_OPTIONS_SETTINGS_LANGUAGES_JAPANESE_GOOGLE_JP_INPUT_METHOD }, |
76 { "Korean", IDS_OPTIONS_SETTINGS_LANGUAGES_KOREAN_INPUT_METHOD }, | 78 { "Korean", IDS_OPTIONS_SETTINGS_LANGUAGES_KOREAN_INPUT_METHOD }, |
77 // TODO(yusukes): Support input methods in the ibus-xkb-layouts engine. | 79 |
| 80 // For ibus-xkb-layouts engine: third_party/ibus-xkb-layouts/files |
| 81 { "Japan", IDS_STATUSBAR_LAYOUT_JAPAN }, |
| 82 { "Slovenia", IDS_STATUSBAR_LAYOUT_SLOVENIA }, |
| 83 { "Germany", IDS_STATUSBAR_LAYOUT_GERMANY }, |
| 84 { "Italy", IDS_STATUSBAR_LAYOUT_ITALY }, |
| 85 { "Estonia", IDS_STATUSBAR_LAYOUT_ESTONIA }, |
| 86 { "Hungary", IDS_STATUSBAR_LAYOUT_HUNGARY }, |
| 87 { "Poland", IDS_STATUSBAR_LAYOUT_POLAND }, |
| 88 { "Denmark", IDS_STATUSBAR_LAYOUT_DENMARK }, |
| 89 { "Croatia", IDS_STATUSBAR_LAYOUT_CROATIA }, |
| 90 { "Brazil", IDS_STATUSBAR_LAYOUT_BRAZIL }, |
| 91 { "Serbia", IDS_STATUSBAR_LAYOUT_SERBIA }, |
| 92 { "Czechia", IDS_STATUSBAR_LAYOUT_CZECHIA }, |
| 93 { "USA - Dvorak", IDS_STATUSBAR_LAYOUT_USA_DVORAK }, |
| 94 { "Romania", IDS_STATUSBAR_LAYOUT_ROMANIA }, |
| 95 { "USA", IDS_STATUSBAR_LAYOUT_USA }, |
| 96 { "Lithuania", IDS_STATUSBAR_LAYOUT_LITHUANIA }, |
| 97 { "United Kingdom", IDS_STATUSBAR_LAYOUT_UNITED_KINGDOM }, |
| 98 { "Slovakia", IDS_STATUSBAR_LAYOUT_SLOVAKIA }, |
| 99 { "Russia", IDS_STATUSBAR_LAYOUT_RUSSIA }, |
| 100 { "Greece", IDS_STATUSBAR_LAYOUT_GREECE }, |
| 101 { "Belgium", IDS_STATUSBAR_LAYOUT_BELGIUM }, |
| 102 { "Bulgaria", IDS_STATUSBAR_LAYOUT_BULGARIA }, |
| 103 { "Switzerland", IDS_STATUSBAR_LAYOUT_SWITZERLAND }, |
| 104 { "Turkey", IDS_STATUSBAR_LAYOUT_TURKEY }, |
| 105 { "Portugal", IDS_STATUSBAR_LAYOUT_PORTUGAL }, |
| 106 { "Spain", IDS_STATUSBAR_LAYOUT_SPAIN }, |
| 107 { "Finland", IDS_STATUSBAR_LAYOUT_FINLAND }, |
| 108 { "Ukraine", IDS_STATUSBAR_LAYOUT_UKRAINE }, |
| 109 { "Spain - Catalan variant with middle-dot L", |
| 110 IDS_STATUSBAR_LAYOUT_SPAIN_CATALAN }, |
| 111 { "France", IDS_STATUSBAR_LAYOUT_FRANCE }, |
| 112 { "Norway", IDS_STATUSBAR_LAYOUT_NORWAY }, |
| 113 { "Sweden", IDS_STATUSBAR_LAYOUT_SWEDEN }, |
| 114 { "Netherlands", IDS_STATUSBAR_LAYOUT_NETHERLANDS }, |
| 115 { "Latvia", IDS_STATUSBAR_LAYOUT_LATVIA }, |
78 }; | 116 }; |
79 const size_t kNumEntries = arraysize(kEnglishToResourceIdArray); | 117 const size_t kNumEntries = arraysize(kEnglishToResourceIdArray); |
80 | 118 |
81 bool GetLocalizedString( | 119 bool GetLocalizedString( |
82 const std::string& english_string, string16 *out_string) { | 120 const std::string& english_string, string16 *out_string) { |
83 DCHECK(out_string); | 121 DCHECK(out_string); |
84 typedef base::hash_map<std::string, int> HashType; | 122 typedef base::hash_map<std::string, int> HashType; |
85 static HashType* english_to_resource_id = NULL; | 123 static HashType* english_to_resource_id = NULL; |
86 | 124 |
87 // Initialize the map if needed. | 125 // Initialize the map if needed. |
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
147 | 185 |
148 bool LanguageMenuL10nUtil::StringIsSupported( | 186 bool LanguageMenuL10nUtil::StringIsSupported( |
149 const std::string& english_string) { | 187 const std::string& english_string) { |
150 // Do not check the current thread since the function is supposed to be called | 188 // Do not check the current thread since the function is supposed to be called |
151 // from unit tests. | 189 // from unit tests. |
152 string16 localized_string; | 190 string16 localized_string; |
153 return GetLocalizedString(english_string, &localized_string); | 191 return GetLocalizedString(english_string, &localized_string); |
154 } | 192 } |
155 | 193 |
156 } // namespace chromeos | 194 } // namespace chromeos |
OLD | NEW |