Chromium Code Reviews
[email protected] (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(441)

Side by Side Diff: chrome/browser/chromeos/language_preferences.cc

Issue 11573014: Break cyclic dependency between c/b/chromeos and c/b/chromeos/input_method... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Sync and rebase. Created 8 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 "base/basictypes.h" 5 #include "base/basictypes.h"
6 #include "chrome/browser/chromeos/input_method/input_method_constants.h"
6 #include "chrome/browser/chromeos/language_preferences.h" 7 #include "chrome/browser/chromeos/language_preferences.h"
7 #include "chrome/common/pref_names.h" 8 #include "chrome/common/pref_names.h"
8 #include "grit/generated_resources.h" 9 #include "grit/generated_resources.h"
9 10
10 namespace chromeos { 11 namespace chromeos {
11 namespace language_prefs { 12 namespace language_prefs {
12 13
13 // --------------------------------------------------------------------------- 14 // ---------------------------------------------------------------------------
14 // For ibus-daemon
15 // ---------------------------------------------------------------------------
16 const char kGeneralSectionName[] = "general";
17 const char kPreloadEnginesConfigName[] = "preload_engines";
18
19 // ---------------------------------------------------------------------------
20 // For Traditional Chinese input method (ibus-mozc-chewing) 15 // For Traditional Chinese input method (ibus-mozc-chewing)
21 // --------------------------------------------------------------------------- 16 // ---------------------------------------------------------------------------
22 const char kChewingSectionName[] = "engine/Chewing";
23 17
24 // We have to sync the |ibus_config_name|s with those in 18 // We have to sync the |ibus_config_name|s with those in
25 // ibus-chewing/files/src/Config.cc. 19 // ibus-chewing/files/src/Config.cc.
26 const LanguageBooleanPrefs kChewingBooleanPrefs[] = { 20 const LanguageBooleanPrefs kChewingBooleanPrefs[] = {
27 { prefs::kLanguageChewingAutoShiftCur, false, "autoShiftCur", 21 { prefs::kLanguageChewingAutoShiftCur, false, input_method::kChewingAutoShiftC ur,
Seigo Nonaka 2012/12/17 12:29:45 <=80 characters.
28 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SETTING_AUTO_SHIFT_CUR, 22 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SETTING_AUTO_SHIFT_CUR,
29 PrefService::SYNCABLE_PREF }, 23 PrefService::SYNCABLE_PREF },
30 { prefs::kLanguageChewingAddPhraseDirection, false, "addPhraseDirection", 24 { prefs::kLanguageChewingAddPhraseDirection, false, input_method::kChewingAddP hraseDirection,
31 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SETTING_ADD_PHRASE_DIRECTION, 25 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SETTING_ADD_PHRASE_DIRECTION,
32 PrefService::SYNCABLE_PREF }, 26 PrefService::SYNCABLE_PREF },
33 /* Temporarily disabled. (crosbug.com/14185) 27 /* Temporarily disabled. (crosbug.com/14185)
34 { prefs::kLanguageChewingEasySymbolInput, true, "easySymbolInput", 28 { prefs::kLanguageChewingEasySymbolInput, true, "easySymbolInput",
35 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SETTING_EASY_SYMBOL_INPUT, 29 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SETTING_EASY_SYMBOL_INPUT,
36 PrefService::SYNCABLE_PREF }, 30 PrefService::SYNCABLE_PREF },
37 */ 31 */
38 { prefs::kLanguageChewingEscCleanAllBuf, false, "escCleanAllBuf", 32 { prefs::kLanguageChewingEscCleanAllBuf, false, input_method::kChewingEscClean AllBuf,
39 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SETTING_ESC_CLEAN_ALL_BUF, 33 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SETTING_ESC_CLEAN_ALL_BUF,
40 PrefService::SYNCABLE_PREF }, 34 PrefService::SYNCABLE_PREF },
41 { prefs::kLanguageChewingForceLowercaseEnglish, false, 35 { prefs::kLanguageChewingForceLowercaseEnglish, false,
42 "forceLowercaseEnglish", 36 "forceLowercaseEnglish",
43 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SETTING_FORCE_LOWER_CASE_ENGLISH, 37 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SETTING_FORCE_LOWER_CASE_ENGLISH,
44 PrefService::SYNCABLE_PREF }, 38 PrefService::SYNCABLE_PREF },
45 /* Temporarily disabled. (crosbug.com/14185) 39 /* Temporarily disabled. (crosbug.com/14185)
46 { prefs::kLanguageChewingPlainZhuyin, false, "plainZhuyin", 40 { prefs::kLanguageChewingPlainZhuyin, false, input_method::kChewingPlainZhuyin ,
47 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SETTING_PLAIN_ZHUYIN, 41 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SETTING_PLAIN_ZHUYIN,
48 PrefService::SYNCABLE_PREF }, 42 PrefService::SYNCABLE_PREF },
49 */ 43 */
50 { prefs::kLanguageChewingPhraseChoiceRearward, true, "phraseChoiceRearward", 44 { prefs::kLanguageChewingPhraseChoiceRearward, true, input_method::kChewingPhr aseChoiceRearward,
51 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SETTING_PHRASE_CHOICE_REARWARD, 45 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SETTING_PHRASE_CHOICE_REARWARD,
52 PrefService::SYNCABLE_PREF }, 46 PrefService::SYNCABLE_PREF },
53 { prefs::kLanguageChewingSpaceAsSelection, true, "spaceAsSelection", 47 { prefs::kLanguageChewingSpaceAsSelection, true, input_method::kChewingSpaceAs Selection,
54 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SETTING_SPACE_AS_SELECTION, 48 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SETTING_SPACE_AS_SELECTION,
55 PrefService::SYNCABLE_PREF }, 49 PrefService::SYNCABLE_PREF },
56 }; 50 };
57 COMPILE_ASSERT(kNumChewingBooleanPrefs == arraysize(kChewingBooleanPrefs), 51 COMPILE_ASSERT(kNumChewingBooleanPrefs == arraysize(kChewingBooleanPrefs),
58 TheSizeShouldMatch); 52 TheSizeShouldMatch);
59 53
60 const LanguageIntegerRangePreference kChewingIntegerPrefs[] = { 54 const LanguageIntegerRangePreference kChewingIntegerPrefs[] = {
61 { prefs::kLanguageChewingMaxChiSymbolLen, 20, 8, 40, "maxChiSymbolLen", 55 { prefs::kLanguageChewingMaxChiSymbolLen, 20, 8, 40, input_method::kChewingMax ChiSymbolLen,
62 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SETTING_MAX_CHI_SYMBOL_LEN, 56 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SETTING_MAX_CHI_SYMBOL_LEN,
63 PrefService::SYNCABLE_PREF 57 PrefService::SYNCABLE_PREF
64 }, 58 },
65 { prefs::kLanguageChewingCandPerPage, 10, 8, 10, "candPerPage", 59 { prefs::kLanguageChewingCandPerPage, 10, 8, 10, input_method::kChewingCandPer Page,
66 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SETTING_CAND_PER_PAGE, 60 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SETTING_CAND_PER_PAGE,
67 PrefService::SYNCABLE_PREF 61 PrefService::SYNCABLE_PREF
68 }, 62 },
69 }; 63 };
70 COMPILE_ASSERT(kNumChewingIntegerPrefs == arraysize(kChewingIntegerPrefs), 64 COMPILE_ASSERT(kNumChewingIntegerPrefs == arraysize(kChewingIntegerPrefs),
71 TheSizeShouldMatch); 65 TheSizeShouldMatch);
72 66
73 const LanguageMultipleChoicePreference<const char*> 67 const LanguageMultipleChoicePreference<const char*>
74 kChewingMultipleChoicePrefs[] = { 68 kChewingMultipleChoicePrefs[] = {
75 { prefs::kLanguageChewingKeyboardType, 69 { prefs::kLanguageChewingKeyboardType,
76 "default", 70 input_method::kChewingKeyboardTypeDefault,
77 "KBType", 71 input_method::kChewingKeyboardType,
78 {{ "default", 72 {{ input_method::kChewingKeyboardTypeDefault,
79 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_KEYBOARD_TYPE_DEFAULT }, 73 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_KEYBOARD_TYPE_DEFAULT },
80 { "hsu", IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_KEYBOARD_TYPE_HSU }, 74 { input_method::kChewingKeyboardTypeHsu, IDS_OPTIONS_SETTINGS_LANGUAGES_CHE WING_KEYBOARD_TYPE_HSU },
81 { "ibm", IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_KEYBOARD_TYPE_IBM }, 75 { input_method::kChewingKeyboardTypeIbm, IDS_OPTIONS_SETTINGS_LANGUAGES_CHE WING_KEYBOARD_TYPE_IBM },
82 { "gin_yieh", 76 { input_method::kChewingKeyboardTypeGinYieh,
83 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_KEYBOARD_TYPE_GIN_YIEH }, 77 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_KEYBOARD_TYPE_GIN_YIEH },
84 { "eten", IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_KEYBOARD_TYPE_ETEN }, 78 { input_method::kChewingKeyboardTypeEten, IDS_OPTIONS_SETTINGS_LANGUAGES_CH EWING_KEYBOARD_TYPE_ETEN },
85 { "eten26", IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_KEYBOARD_TYPE_ETEN26 }, 79 { input_method::kChewingKeyboardTypeEten26, IDS_OPTIONS_SETTINGS_LANGUAGES_ CHEWING_KEYBOARD_TYPE_ETEN26 },
86 { "dvorak", IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_KEYBOARD_TYPE_DVORAK }, 80 { input_method::kChewingKeyboardTypeDvorak, IDS_OPTIONS_SETTINGS_LANGUAGES_ CHEWING_KEYBOARD_TYPE_DVORAK },
87 { "dvorak_hsu", 81 { input_method::kChewingKeyboardTypeDvorakHsu,
88 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_KEYBOARD_TYPE_DVORAK_HSU }, 82 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_KEYBOARD_TYPE_DVORAK_HSU },
89 { "dachen_26", 83 { input_method::kChewingKeyboardTypeDachen26,
90 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_KEYBOARD_TYPE_DACHEN_26 }, 84 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_KEYBOARD_TYPE_DACHEN_26 },
91 { "hanyu", IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_KEYBOARD_TYPE_HANYU }}, 85 { input_method::kChewingKeyboardTypeHanyu, IDS_OPTIONS_SETTINGS_LANGUAGES_C HEWING_KEYBOARD_TYPE_HANYU }},
92 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_KEYBOARD_TYPE, 86 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_KEYBOARD_TYPE,
93 PrefService::SYNCABLE_PREF, 87 PrefService::SYNCABLE_PREF,
94 }, 88 },
95 { prefs::kLanguageChewingSelKeys, 89 { prefs::kLanguageChewingSelKeys,
96 "1234567890", 90 input_method::kChewingSelKeys1234567890,
97 "selKeys", 91 input_method::kChewingSelKeys,
98 {{ "1234567890", 92 {{ input_method::kChewingSelKeys1234567890,
99 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SEL_KEYS_1234567890 }, 93 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SEL_KEYS_1234567890 },
100 { "asdfghjkl;", 94 { input_method::kChewingSelKeysAsdfghjkl_,
101 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SEL_KEYS_ASDFGHJKLS }, 95 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SEL_KEYS_ASDFGHJKLS },
102 { "asdfzxcv89", 96 { input_method::kChewingSelKeysAsdfzxcv89,
103 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SEL_KEYS_ASDFZXCV89 }, 97 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SEL_KEYS_ASDFZXCV89 },
104 { "asdfjkl789", 98 { input_method::kChewingSelKeysAsdfjkl789,
105 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SEL_KEYS_ASDFJKL789 }, 99 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SEL_KEYS_ASDFJKL789 },
106 { "aoeu;qjkix", 100 { input_method::kChewingSelKeysAoeu_qjkix,
107 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SEL_KEYS_AOEUSQJKIX }, 101 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SEL_KEYS_AOEUSQJKIX },
108 { "aoeuhtnsid", 102 { input_method::kChewingSelKeysAoeuhtnsid,
109 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SEL_KEYS_AOEUHTNSID }, 103 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SEL_KEYS_AOEUHTNSID },
110 { "aoeuidhtns", 104 { input_method::kChewingSelKeysAoeuidhtns,
111 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SEL_KEYS_AOEUIDHTNS }, 105 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SEL_KEYS_AOEUIDHTNS },
112 { "1234qweras", 106 { input_method::kChewingSelKeys1234qweras,
113 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SEL_KEYS_1234QWERAS }}, 107 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SEL_KEYS_1234QWERAS }},
114 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SEL_KEYS, 108 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SEL_KEYS,
115 PrefService::SYNCABLE_PREF, 109 PrefService::SYNCABLE_PREF,
116 }, 110 },
117 }; 111 };
118 COMPILE_ASSERT(kNumChewingMultipleChoicePrefs == 112 COMPILE_ASSERT(kNumChewingMultipleChoicePrefs ==
119 arraysize(kChewingMultipleChoicePrefs), 113 arraysize(kChewingMultipleChoicePrefs),
120 TheSizeShouldMatch); 114 TheSizeShouldMatch);
121 115
122 const LanguageMultipleChoicePreference<int> kChewingHsuSelKeyType = { 116 const LanguageMultipleChoicePreference<int> kChewingHsuSelKeyType = {
123 prefs::kLanguageChewingHsuSelKeyType, 117 prefs::kLanguageChewingHsuSelKeyType,
124 1, 118 input_method::kChewingHsuSelKeyType1,
125 "hsuSelKeyType", 119 input_method::kChewingHsuSelKeyType,
126 {{ 1, IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_HSU_SEL_KEY_TYPE_1 }, 120 {{ input_method::kChewingHsuSelKeyType1, IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWIN G_HSU_SEL_KEY_TYPE_1 },
127 { 2, IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_HSU_SEL_KEY_TYPE_2 }}, 121 { input_method::kChewingHsuSelKeyType2, IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWIN G_HSU_SEL_KEY_TYPE_2 }},
128 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_HSU_SEL_KEY_TYPE, 122 IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_HSU_SEL_KEY_TYPE,
129 PrefService::SYNCABLE_PREF, 123 PrefService::SYNCABLE_PREF,
130 }; 124 };
131 125
132 // --------------------------------------------------------------------------- 126 // ---------------------------------------------------------------------------
133 // For Korean input method (ibus-mozc-hangul) 127 // For Korean input method (ibus-mozc-hangul)
134 // --------------------------------------------------------------------------- 128 // ---------------------------------------------------------------------------
135 const char kHangulSectionName[] = "engine/Hangul";
136 const char kHangulKeyboardConfigName[] = "HangulKeyboard";
137 129
138 const char kHangulHanjaBindingKeysConfigName[] = "HanjaKeyBindings";
139 // Mozc-hangul treats Hangul_Hanja key as hanja key event even if it is not set. 130 // Mozc-hangul treats Hangul_Hanja key as hanja key event even if it is not set.
140 // We add Control+9 since F9 key is reserved by the window manager. 131 // We add Control+9 since F9 key is reserved by the window manager.
141 // TODO(nona): Hanja keys are not configurable yet (and we're not sure if it 132 // TODO(nona): Hanja keys are not configurable yet (and we're not sure if it
142 // should.) 133 // should.)
143 const char kHangulHanjaBindingKeys[] = "F9,Ctrl 9"; 134 const char kHangulHanjaBindingKeys[] = "F9,Ctrl 9";
144 135
145 const HangulKeyboardNameIDPair kHangulKeyboardNameIDPairs[] = { 136 const HangulKeyboardNameIDPair kHangulKeyboardNameIDPairs[] = {
146 // We have to sync the |keyboard_id|s with those in libhangul. 137 // We have to sync the |keyboard_id|s with those in libhangul.
147 { IDS_OPTIONS_SETTINGS_LANGUAGES_HANGUL_SETTINGS_KEYBOARD_2_SET, "2" }, 138 { IDS_OPTIONS_SETTINGS_LANGUAGES_HANGUL_SETTINGS_KEYBOARD_2_SET, input_method: :kHangulKeyboard2Set },
148 { IDS_OPTIONS_SETTINGS_LANGUAGES_HANGUL_SETTINGS_KEYBOARD_3_SET_FINAL, 139 { IDS_OPTIONS_SETTINGS_LANGUAGES_HANGUL_SETTINGS_KEYBOARD_3_SET_FINAL,
149 "3f" }, 140 input_method::kHangulKeyboard3SetFinal },
150 { IDS_OPTIONS_SETTINGS_LANGUAGES_HANGUL_SETTINGS_KEYBOARD_3_SET_390, "39" }, 141 { IDS_OPTIONS_SETTINGS_LANGUAGES_HANGUL_SETTINGS_KEYBOARD_3_SET_390, input_met hod::kHangulKeyboard3Set390 },
151 { IDS_OPTIONS_SETTINGS_LANGUAGES_HANGUL_SETTINGS_KEYBOARD_3_SET_NO_SHIFT, 142 { IDS_OPTIONS_SETTINGS_LANGUAGES_HANGUL_SETTINGS_KEYBOARD_3_SET_NO_SHIFT,
152 "3s" }, 143 input_method::kHangulKeyboard3SetNoShift },
153 { IDS_OPTIONS_SETTINGS_LANGUAGES_HANGUL_SETTINGS_KEYBOARD_ROMAJA, "ro" }, 144 { IDS_OPTIONS_SETTINGS_LANGUAGES_HANGUL_SETTINGS_KEYBOARD_ROMAJA, input_method ::kHangulKeyboardRomaja },
154 // We don't support "Sebeolsik 2 set" keyboard. 145 // We don't support "Sebeolsik 2 set" keyboard.
155 }; 146 };
156 COMPILE_ASSERT(kNumHangulKeyboardNameIDPairs == 147 COMPILE_ASSERT(kNumHangulKeyboardNameIDPairs ==
157 arraysize(kHangulKeyboardNameIDPairs), 148 arraysize(kHangulKeyboardNameIDPairs),
158 TheSizeShouldMatch); 149 TheSizeShouldMatch);
159 150
160 // --------------------------------------------------------------------------- 151 // ---------------------------------------------------------------------------
161 // For Simplified Chinese input method (ibus-mozc-pinyin) 152 // For Simplified Chinese input method (ibus-mozc-pinyin)
162 // --------------------------------------------------------------------------- 153 // ---------------------------------------------------------------------------
163 const char kPinyinSectionName[] = "engine/Pinyin";
164 154
165 // We have to sync the |ibus_config_name|s with those in 155 // We have to sync the |ibus_config_name|s with those in
166 // ibus-mozc-pinyin/files/languages/pinyin/unix/ibus/config_updater.cc. 156 // ibus-mozc-pinyin/files/languages/pinyin/unix/ibus/config_updater.cc.
167 const LanguageBooleanPrefs kPinyinBooleanPrefs[] = { 157 const LanguageBooleanPrefs kPinyinBooleanPrefs[] = {
168 { prefs::kLanguagePinyinCorrectPinyin, true, "CorrectPinyin", 158 { prefs::kLanguagePinyinCorrectPinyin, true, input_method::kPinyinCorrectPinyi n,
169 IDS_OPTIONS_SETTINGS_LANGUAGES_PINYIN_SETTING_CORRECT_PINYIN, 159 IDS_OPTIONS_SETTINGS_LANGUAGES_PINYIN_SETTING_CORRECT_PINYIN,
170 PrefService::SYNCABLE_PREF }, 160 PrefService::SYNCABLE_PREF },
171 { prefs::kLanguagePinyinFuzzyPinyin, false, "FuzzyPinyin", 161 { prefs::kLanguagePinyinFuzzyPinyin, false, input_method::kPinyinFuzzyPinyin,
172 IDS_OPTIONS_SETTINGS_LANGUAGES_PINYIN_SETTING_FUZZY_PINYIN, 162 IDS_OPTIONS_SETTINGS_LANGUAGES_PINYIN_SETTING_FUZZY_PINYIN,
173 PrefService::SYNCABLE_PREF }, 163 PrefService::SYNCABLE_PREF },
174 { prefs::kLanguagePinyinShiftSelectCandidate, false, "ShiftSelectCandidate", 164 { prefs::kLanguagePinyinShiftSelectCandidate, false, input_method::kPinyinShif tSelectCandidate,
175 IDS_OPTIONS_SETTINGS_LANGUAGES_PINYIN_SETTING_SHIFT_SELECT_PINYIN, 165 IDS_OPTIONS_SETTINGS_LANGUAGES_PINYIN_SETTING_SHIFT_SELECT_PINYIN,
176 PrefService::SYNCABLE_PREF }, 166 PrefService::SYNCABLE_PREF },
177 { prefs::kLanguagePinyinMinusEqualPage, true, "MinusEqualPage", 167 { prefs::kLanguagePinyinMinusEqualPage, true, input_method::kPinyinMinusEqualP age,
178 IDS_OPTIONS_SETTINGS_LANGUAGES_PINYIN_SETTING_MINUS_EQUAL_PAGE, 168 IDS_OPTIONS_SETTINGS_LANGUAGES_PINYIN_SETTING_MINUS_EQUAL_PAGE,
179 PrefService::SYNCABLE_PREF }, 169 PrefService::SYNCABLE_PREF },
180 { prefs::kLanguagePinyinCommaPeriodPage, true, "CommaPeriodPage", 170 { prefs::kLanguagePinyinCommaPeriodPage, true, input_method::kPinyinCommaPerio dPage,
181 IDS_OPTIONS_SETTINGS_LANGUAGES_PINYIN_SETTING_COMMA_PERIOD_PAGE, 171 IDS_OPTIONS_SETTINGS_LANGUAGES_PINYIN_SETTING_COMMA_PERIOD_PAGE,
182 PrefService::SYNCABLE_PREF }, 172 PrefService::SYNCABLE_PREF },
183 { prefs::kLanguagePinyinAutoCommit, false, "AutoCommit", 173 { prefs::kLanguagePinyinAutoCommit, false, input_method::kPinyinAutoCommit,
184 IDS_OPTIONS_SETTINGS_LANGUAGES_PINYIN_SETTING_AUTO_COMMIT, 174 IDS_OPTIONS_SETTINGS_LANGUAGES_PINYIN_SETTING_AUTO_COMMIT,
185 PrefService::SYNCABLE_PREF }, 175 PrefService::SYNCABLE_PREF },
186 { prefs::kLanguagePinyinDoublePinyin, false, "DoublePinyin", 176 { prefs::kLanguagePinyinDoublePinyin, false, input_method::kPinyinDoublePinyin ,
187 IDS_OPTIONS_SETTINGS_LANGUAGES_PINYIN_SETTING_DOUBLE_PINYIN, 177 IDS_OPTIONS_SETTINGS_LANGUAGES_PINYIN_SETTING_DOUBLE_PINYIN,
188 PrefService::SYNCABLE_PREF }, 178 PrefService::SYNCABLE_PREF },
189 { prefs::kLanguagePinyinInitChinese, true, "InitChinese", 179 { prefs::kLanguagePinyinInitChinese, true, input_method::kPinyinInitChinese,
190 IDS_OPTIONS_SETTINGS_LANGUAGES_PINYIN_SETTING_INIT_CHINESE, 180 IDS_OPTIONS_SETTINGS_LANGUAGES_PINYIN_SETTING_INIT_CHINESE,
191 PrefService::SYNCABLE_PREF }, 181 PrefService::SYNCABLE_PREF },
192 { prefs::kLanguagePinyinInitFull, false, "InitFull", 182 { prefs::kLanguagePinyinInitFull, false, input_method::kPinyinInitFull,
193 IDS_OPTIONS_SETTINGS_LANGUAGES_PINYIN_SETTING_INIT_FULL, 183 IDS_OPTIONS_SETTINGS_LANGUAGES_PINYIN_SETTING_INIT_FULL,
194 PrefService::SYNCABLE_PREF }, 184 PrefService::SYNCABLE_PREF },
195 { prefs::kLanguagePinyinInitFullPunct, true, "InitFullPunct", 185 { prefs::kLanguagePinyinInitFullPunct, true, input_method::kPinyinInitFullPunc t,
196 IDS_OPTIONS_SETTINGS_LANGUAGES_PINYIN_SETTING_INIT_FULL_PUNCT, 186 IDS_OPTIONS_SETTINGS_LANGUAGES_PINYIN_SETTING_INIT_FULL_PUNCT,
197 PrefService::SYNCABLE_PREF }, 187 PrefService::SYNCABLE_PREF },
198 { prefs::kLanguagePinyinInitSimplifiedChinese, true, "InitSimplifiedChinese", 188 { prefs::kLanguagePinyinInitSimplifiedChinese, true, input_method::kPinyinInit SimplifiedChinese,
199 IDS_OPTIONS_SETTINGS_LANGUAGES_PINYIN_SETTING_INIT_SIMPLIFIED_CHINESE, 189 IDS_OPTIONS_SETTINGS_LANGUAGES_PINYIN_SETTING_INIT_SIMPLIFIED_CHINESE,
200 PrefService::SYNCABLE_PREF }, 190 PrefService::SYNCABLE_PREF },
201 // TODO(yusukes): Support PINYIN_{INCOMPLETE,CORRECT,FUZZY}_... prefs (32 191 // TODO(yusukes): Support PINYIN_{INCOMPLETE,CORRECT,FUZZY}_... prefs (32
202 // additional boolean prefs.) 192 // additional boolean prefs.)
203 }; 193 };
204 COMPILE_ASSERT(kNumPinyinBooleanPrefs == arraysize(kPinyinBooleanPrefs), 194 COMPILE_ASSERT(kNumPinyinBooleanPrefs == arraysize(kPinyinBooleanPrefs),
205 TheSizeShouldMatch); 195 TheSizeShouldMatch);
206 // TODO(yusukes): Support HalfWidthPuncts and IncompletePinyin prefs if needed. 196 // TODO(yusukes): Support HalfWidthPuncts and IncompletePinyin prefs if needed.
207 197
208 const LanguageMultipleChoicePreference<int> kPinyinDoublePinyinSchema = { 198 const LanguageMultipleChoicePreference<int> kPinyinDoublePinyinSchema = {
209 prefs::kLanguagePinyinDoublePinyinSchema, 199 prefs::kLanguagePinyinDoublePinyinSchema,
210 0, 200 input_method::kPinyinDoublePinyinSchemaMspy,
211 "DoublePinyinSchema", 201 input_method::kPinyinDoublePinyinSchema,
212 {{ 0, IDS_OPTIONS_SETTINGS_LANGUAGES_PINYIN_DOUBLE_SCHEMA_MSPY}, 202 {{ input_method::kPinyinDoublePinyinSchemaMspy, IDS_OPTIONS_SETTINGS_LANGUAGES _PINYIN_DOUBLE_SCHEMA_MSPY},
213 { 1, IDS_OPTIONS_SETTINGS_LANGUAGES_PINYIN_DOUBLE_SCHEMA_ZRM}, 203 { input_method::kPinyinDoublePinyinSchemaZrm, IDS_OPTIONS_SETTINGS_LANGUAGES_ PINYIN_DOUBLE_SCHEMA_ZRM},
214 { 2, IDS_OPTIONS_SETTINGS_LANGUAGES_PINYIN_DOUBLE_SCHEMA_ABC}, 204 { input_method::kPinyinDoublePinyinSchemaAbc, IDS_OPTIONS_SETTINGS_LANGUAGES_ PINYIN_DOUBLE_SCHEMA_ABC},
215 { 3, IDS_OPTIONS_SETTINGS_LANGUAGES_PINYIN_DOUBLE_SCHEMA_ZGPY}, 205 { input_method::kPinyinDoublePinyinSchemaZgpy, IDS_OPTIONS_SETTINGS_LANGUAGES _PINYIN_DOUBLE_SCHEMA_ZGPY},
216 { 4, IDS_OPTIONS_SETTINGS_LANGUAGES_PINYIN_DOUBLE_SCHEMA_PYJJ}}, 206 { input_method::kPinyinDoublePinyinSchemaPyjj, IDS_OPTIONS_SETTINGS_LANGUAGES _PINYIN_DOUBLE_SCHEMA_PYJJ}},
217 IDS_OPTIONS_SETTINGS_LANGUAGES_PINYIN_DOUBLE_SCHEMA, 207 IDS_OPTIONS_SETTINGS_LANGUAGES_PINYIN_DOUBLE_SCHEMA,
218 PrefService::SYNCABLE_PREF, 208 PrefService::SYNCABLE_PREF,
219 }; 209 };
220 210
221 const PinyinIntegerPref kPinyinIntegerPrefs[] = { 211 const PinyinIntegerPref kPinyinIntegerPrefs[] = {
222 // TODO(yusukes): the type of lookup_table_page_size on ibus should be uint. 212 // TODO(yusukes): the type of lookup_table_page_size on ibus should be uint.
223 { prefs::kLanguagePinyinLookupTablePageSize, 5, "LookupTablePageSize", 213 { prefs::kLanguagePinyinLookupTablePageSize, 5, input_method::kPinyinLookupTab lePageSize,
224 PrefService::UNSYNCABLE_PREF } // don't sync as it's not user configurable. 214 PrefService::UNSYNCABLE_PREF } // don't sync as it's not user configurable.
225 }; 215 };
226 COMPILE_ASSERT(kNumPinyinIntegerPrefs == arraysize(kPinyinIntegerPrefs), 216 COMPILE_ASSERT(kNumPinyinIntegerPrefs == arraysize(kPinyinIntegerPrefs),
227 TheSizeShouldMatch); 217 TheSizeShouldMatch);
228 218
229 // --------------------------------------------------------------------------- 219 // ---------------------------------------------------------------------------
230 // For Japanese input method (ibus-mozc) 220 // For Japanese input method (ibus-mozc)
231 // --------------------------------------------------------------------------- 221 // ---------------------------------------------------------------------------
232 const char kMozcSectionName[] = "engine/Mozc";
233 222
234 const LanguageBooleanPrefs kMozcBooleanPrefs[] = { 223 const LanguageBooleanPrefs kMozcBooleanPrefs[] = {
235 { prefs::kLanguageMozcIncognitoMode, 224 { prefs::kLanguageMozcIncognitoMode,
236 false, 225 false,
237 "incognito_mode", 226 input_method::kMozcIncognitoMode,
238 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_INCOGNITO_MODE, 227 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_INCOGNITO_MODE,
239 PrefService::SYNCABLE_PREF }, 228 PrefService::SYNCABLE_PREF },
240 { prefs::kLanguageMozcUseAutoImeTurnOff, 229 { prefs::kLanguageMozcUseAutoImeTurnOff,
241 true, 230 true,
242 "use_auto_ime_turn_off", 231 input_method::kMozcUseAutoImeTurnOff,
243 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_USE_AUTO_IME_TURN_OFF, 232 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_USE_AUTO_IME_TURN_OFF,
244 PrefService::SYNCABLE_PREF }, 233 PrefService::SYNCABLE_PREF },
245 { prefs::kLanguageMozcUseHistorySuggest, 234 { prefs::kLanguageMozcUseHistorySuggest,
246 true, 235 true,
247 "use_history_suggest", 236 input_method::kMozcUseHistorySuggest,
248 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_USE_HISTORY_SUGGEST, 237 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_USE_HISTORY_SUGGEST,
249 PrefService::SYNCABLE_PREF }, 238 PrefService::SYNCABLE_PREF },
250 { prefs::kLanguageMozcUseDictionarySuggest, 239 { prefs::kLanguageMozcUseDictionarySuggest,
251 true, 240 true,
252 "use_dictionary_suggest", 241 input_method::kMozcUseDictionarySuggest,
253 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_USE_DICTIONARY_SUGGEST, 242 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_USE_DICTIONARY_SUGGEST,
254 PrefService::SYNCABLE_PREF }, 243 PrefService::SYNCABLE_PREF },
255 }; 244 };
256 COMPILE_ASSERT(kNumMozcBooleanPrefs == arraysize(kMozcBooleanPrefs), 245 COMPILE_ASSERT(kNumMozcBooleanPrefs == arraysize(kMozcBooleanPrefs),
257 TheSizeShouldMatch); 246 TheSizeShouldMatch);
258 247
259 extern const LanguageMultipleChoicePreference<const char*> 248 extern const LanguageMultipleChoicePreference<const char*>
260 kMozcMultipleChoicePrefs[] = { 249 kMozcMultipleChoicePrefs[] = {
261 { prefs::kLanguageMozcPreeditMethod, 250 { prefs::kLanguageMozcPreeditMethod,
262 "ROMAN", 251 input_method::kMozcPreeditMethodRoman,
263 "preedit_method", 252 input_method::kMozcPreeditMethod,
264 {{ "ROMAN", IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_PREEDIT_METHOD_ROMAN }, 253 {{ input_method::kMozcPreeditMethodRoman, IDS_OPTIONS_SETTINGS_LANGUAGES_MOZ C_PREEDIT_METHOD_ROMAN },
265 { "KANA", IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_PREEDIT_METHOD_KANA }}, 254 { input_method::kMozcPreeditMethodKana, IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC _PREEDIT_METHOD_KANA }},
266 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_PREEDIT_METHOD, 255 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_PREEDIT_METHOD,
267 PrefService::SYNCABLE_PREF, 256 PrefService::SYNCABLE_PREF,
268 }, 257 },
269 { prefs::kLanguageMozcSessionKeymap, 258 { prefs::kLanguageMozcSessionKeymap,
270 "MSIME", 259 input_method::kMozcSessionKeymapMsime,
271 "session_keymap", 260 input_method::kMozcSessionKeymap,
272 {{ "ATOK", IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_SESSION_KEYMAP_ATOK }, 261 {{ input_method::kMozcSessionKeymapAtok, IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC _SESSION_KEYMAP_ATOK },
273 { "MSIME", IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_SESSION_KEYMAP_MSIME }, 262 { input_method::kMozcSessionKeymapMsime, IDS_OPTIONS_SETTINGS_LANGUAGES_MOZ C_SESSION_KEYMAP_MSIME },
274 { "KOTOERI", IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_SESSION_KEYMAP_KOTOERI }}, 263 { input_method::kMozcSessionKeymapKotoeri, IDS_OPTIONS_SETTINGS_LANGUAGES_M OZC_SESSION_KEYMAP_KOTOERI }},
275 // TODO: Support "CUSTOM" keymap. 264 // TODO: Support "CUSTOM" keymap.
276 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_SESSION_KEYMAP, 265 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_SESSION_KEYMAP,
277 PrefService::SYNCABLE_PREF, 266 PrefService::SYNCABLE_PREF,
278 }, 267 },
279 { prefs::kLanguageMozcPunctuationMethod, 268 { prefs::kLanguageMozcPunctuationMethod,
280 "KUTEN_TOUTEN", 269 input_method::kMozcPunctuationMethodKutenTouten,
281 "punctuation_method", 270 input_method::kMozcPunctuationMethod,
282 {{ "KUTEN_TOUTEN", 271 {{ input_method::kMozcPunctuationMethodKutenTouten,
283 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_PUNCTUATION_METHOD_KUTEN_TOUTEN }, 272 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_PUNCTUATION_METHOD_KUTEN_TOUTEN },
284 { "COMMA_PERIOD", 273 { input_method::kMozcPunctuationMethodCommaPeriod,
285 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_PUNCTUATION_METHOD_COMMA_PERIOD }, 274 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_PUNCTUATION_METHOD_COMMA_PERIOD },
286 { "KUTEN_PERIOD", 275 { input_method::kMozcPunctuationMethodKutenPeriod,
287 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_PUNCTUATION_METHOD_KUTEN_PERIOD }, 276 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_PUNCTUATION_METHOD_KUTEN_PERIOD },
288 { "COMMA_TOUTEN", 277 { input_method::kMozcPunctuationMethodCommaTouten,
289 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_PUNCTUATION_METHOD_COMMA_TOUTEN }}, 278 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_PUNCTUATION_METHOD_COMMA_TOUTEN }},
290 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_PUNCTUATION_METHOD, 279 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_PUNCTUATION_METHOD,
291 PrefService::SYNCABLE_PREF, 280 PrefService::SYNCABLE_PREF,
292 }, 281 },
293 { prefs::kLanguageMozcSymbolMethod, 282 { prefs::kLanguageMozcSymbolMethod,
294 "CORNER_BRACKET_MIDDLE_DOT", 283 input_method::kMozcSymbolMethodCornerBracketMiddleDot,
295 "symbol_method", 284 input_method::kMozcSymbolMethod,
296 {{ "CORNER_BRACKET_MIDDLE_DOT", 285 {{ input_method::kMozcSymbolMethodCornerBracketMiddleDot,
297 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_SYMBOL_METHOD_CORNER_BRACKET_MIDDLE_D OT }, 286 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_SYMBOL_METHOD_CORNER_BRACKET_MIDDLE_D OT },
298 { "SQUARE_BRACKET_SLASH", 287 { input_method::kMozcSymbolMethodSquareBracketSlash,
299 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_SYMBOL_METHOD_SQUARE_BRACKET_SLASH }, 288 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_SYMBOL_METHOD_SQUARE_BRACKET_SLASH },
300 { "CORNER_BRACKET_SLASH", 289 { input_method::kMozcSymbolMethodCornerBracketSlash,
301 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_SYMBOL_METHOD_CORNER_BRACKET_SLASH }, 290 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_SYMBOL_METHOD_CORNER_BRACKET_SLASH },
302 { "SQUARE_BRACKET_MIDDLE_DOT", 291 { input_method::kMozcSymbolMethodSquareBracketMiddleDot,
303 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_SYMBOL_METHOD_SQUARE_BRACKET_MIDDLE_D OT }}, 292 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_SYMBOL_METHOD_SQUARE_BRACKET_MIDDLE_D OT }},
304 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_SYMBOL_METHOD, 293 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_SYMBOL_METHOD,
305 PrefService::SYNCABLE_PREF, 294 PrefService::SYNCABLE_PREF,
306 }, 295 },
307 { prefs::kLanguageMozcSpaceCharacterForm, 296 { prefs::kLanguageMozcSpaceCharacterForm,
308 "FUNDAMENTAL_INPUT_MODE", 297 input_method::kMozcSpaceCharacterFormFundamentalInputMode,
309 "space_character_form", 298 input_method::kMozcSpaceCharacterForm,
310 {{ "FUNDAMENTAL_INPUT_MODE", 299 {{ input_method::kMozcSpaceCharacterFormFundamentalInputMode,
311 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_SPACE_CHARACTER_FORM_FUNDAMENTAL_INPU T_MODE }, 300 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_SPACE_CHARACTER_FORM_FUNDAMENTAL_INPU T_MODE },
312 { "FUNDAMENTAL_FULL_WIDTH", 301 { input_method::kMozcSpaceCharacterFormFundamentalFullWidth,
313 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_SPACE_CHARACTER_FORM_FUNDAMENTAL_FULL _WIDTH }, 302 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_SPACE_CHARACTER_FORM_FUNDAMENTAL_FULL _WIDTH },
314 { "FUNDAMENTAL_HALF_WIDTH", 303 { input_method::kMozcSpaceCharacterFormFundamentalHalfWidth,
315 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_SPACE_CHARACTER_FORM_FUNDAMENTAL_HALF _WIDTH }}, 304 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_SPACE_CHARACTER_FORM_FUNDAMENTAL_HALF _WIDTH }},
316 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_SPACE_CHARACTER_FORM, 305 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_SPACE_CHARACTER_FORM,
317 PrefService::SYNCABLE_PREF, 306 PrefService::SYNCABLE_PREF,
318 }, 307 },
319 { prefs::kLanguageMozcHistoryLearningLevel, 308 { prefs::kLanguageMozcHistoryLearningLevel,
320 "DEFAULT_HISTORY", 309 input_method::kMozcHistoryLearningLevelDefaultHistory,
321 "history_learning_level", 310 input_method::kMozcHistoryLearningLevel,
322 {{ "DEFAULT_HISTORY", 311 {{ input_method::kMozcHistoryLearningLevelDefaultHistory,
323 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_HISTORY_LEARNING_LEVEL_DEFAULT_HISTOR Y }, 312 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_HISTORY_LEARNING_LEVEL_DEFAULT_HISTOR Y },
324 { "READ_ONLY", 313 { input_method::kMozcHistoryLearningLevelReadOnly,
325 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_HISTORY_LEARNING_LEVEL_READ_ONLY }, 314 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_HISTORY_LEARNING_LEVEL_READ_ONLY },
326 { "NO_HISTORY", 315 { input_method::kMozcHistoryLearningLevelNoHistory,
327 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_HISTORY_LEARNING_LEVEL_NO_HISTORY }}, 316 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_HISTORY_LEARNING_LEVEL_NO_HISTORY }},
328 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_HISTORY_LEARNING_LEVEL, 317 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_HISTORY_LEARNING_LEVEL,
329 PrefService::SYNCABLE_PREF, 318 PrefService::SYNCABLE_PREF,
330 }, 319 },
331 // TODO(mazda): Uncomment this block once the candidate window in Chrome OS 320 // TODO(mazda): Uncomment this block once the candidate window in Chrome OS
332 // supports changing shortcut labels. 321 // supports changing shortcut labels.
333 // { prefs::kLanguageMozcSelectionShortcut, 322 // { prefs::kLanguageMozcSelectionShortcut,
334 // "SHORTCUT_123456789", 323 // input_method::kMozcSelectionShortcutShortcut123456789,
335 // "selection_shortcut", 324 // input_method::kMozcSelectionShortcut,
336 // {{ "NO_SHORTCUT", 325 // {{ input_method::kMozcSelectionShortcutNoShortcut,
337 // IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_SELECTION_SHORTCUT_NO_SHORTCUT }, 326 // IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_SELECTION_SHORTCUT_NO_SHORTCUT },
338 // { "SHORTCUT_123456789", 327 // { input_method::kMozcSelectionShortcutShortcut123456789,
339 // IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_SELECTION_SHORTCUT_SHORTCUT_123456 789 }, 328 // IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_SELECTION_SHORTCUT_SHORTCUT_123456 789 },
340 // { "SHORTCUT_ASDFGHJKL", 329 // { input_method::kMozcSelectionShortcutShortcutAsdfghjkl,
341 // IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_SELECTION_SHORTCUT_SHORTCUT_ASDFGH JKL }}, 330 // IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_SELECTION_SHORTCUT_SHORTCUT_ASDFGH JKL }},
342 // IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_SELECTION_SHORTCUT, 331 // IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_SELECTION_SHORTCUT,
343 // PrefService::SYNCABLE_PREF, 332 // PrefService::SYNCABLE_PREF,
344 // }, 333 // },
345 { prefs::kLanguageMozcShiftKeyModeSwitch, 334 { prefs::kLanguageMozcShiftKeyModeSwitch,
346 "ASCII_INPUT_MODE", 335 input_method::kMozcShiftKeyModeSwitchAsciiInputMode,
347 "shift_key_mode_switch", 336 input_method::kMozcShiftKeyModeSwitch,
348 {{ "OFF", 337 {{ input_method::kMozcShiftKeyModeSwitchOff,
349 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_SHIFT_KEY_MODE_SWITCH_OFF }, 338 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_SHIFT_KEY_MODE_SWITCH_OFF },
350 { "ASCII_INPUT_MODE", 339 { input_method::kMozcShiftKeyModeSwitchAsciiInputMode,
351 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_SHIFT_KEY_MODE_SWITCH_ASCII_INPUT_MOD E }, 340 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_SHIFT_KEY_MODE_SWITCH_ASCII_INPUT_MOD E },
352 { "KATAKANA_INPUT_MODE", 341 { input_method::kMozcShiftKeyModeSwitchKatakanaInputMode,
353 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_SHIFT_KEY_MODE_SWITCH_KATAKANA_INPUT_ MODE }}, 342 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_SHIFT_KEY_MODE_SWITCH_KATAKANA_INPUT_ MODE }},
354 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_SHIFT_KEY_MODE_SWITCH, 343 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_SHIFT_KEY_MODE_SWITCH,
355 PrefService::SYNCABLE_PREF, 344 PrefService::SYNCABLE_PREF,
356 }, 345 },
357 { prefs::kLanguageMozcNumpadCharacterForm, 346 { prefs::kLanguageMozcNumpadCharacterForm,
358 "NUMPAD_HALF_WIDTH", 347 input_method::kMozcNumpadCharacterFormNumpadHalfWidth,
359 "numpad_character_form", 348 input_method::kMozcNumpadCharacterForm,
360 {{ "NUMPAD_INPUT_MODE", 349 {{ input_method::kMozcNumpadCharacterFormNumpadInputMode,
361 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_NUMPAD_CHARACTER_FORM_NUMPAD_INPUT_MO DE }, 350 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_NUMPAD_CHARACTER_FORM_NUMPAD_INPUT_MO DE },
362 { "NUMPAD_FULL_WIDTH", 351 { input_method::kMozcNumpadCharacterFormNumpadFullWidth,
363 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_NUMPAD_CHARACTER_FORM_NUMPAD_FULL_WID TH }, 352 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_NUMPAD_CHARACTER_FORM_NUMPAD_FULL_WID TH },
364 { "NUMPAD_HALF_WIDTH", 353 { input_method::kMozcNumpadCharacterFormNumpadHalfWidth,
365 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_NUMPAD_CHARACTER_FORM_NUMPAD_HALF_WID TH }, 354 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_NUMPAD_CHARACTER_FORM_NUMPAD_HALF_WID TH },
366 { "NUMPAD_DIRECT_INPUT", 355 { input_method::kMozcNumpadCharacterFormNumpadDirectInput,
367 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_NUMPAD_CHARACTER_FORM_NUMPAD_DIRECT_I NPUT }}, 356 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_NUMPAD_CHARACTER_FORM_NUMPAD_DIRECT_I NPUT }},
368 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_NUMPAD_CHARACTER_FORM, 357 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_NUMPAD_CHARACTER_FORM,
369 PrefService::SYNCABLE_PREF, 358 PrefService::SYNCABLE_PREF,
370 }, 359 },
371 }; 360 };
372 COMPILE_ASSERT(kNumMozcMultipleChoicePrefs == 361 COMPILE_ASSERT(kNumMozcMultipleChoicePrefs ==
373 arraysize(kMozcMultipleChoicePrefs), 362 arraysize(kMozcMultipleChoicePrefs),
374 TheSizeShouldMatch); 363 TheSizeShouldMatch);
375 364
376 const LanguageIntegerRangePreference kMozcIntegerPrefs[] = { 365 const LanguageIntegerRangePreference kMozcIntegerPrefs[] = {
377 { prefs::kLanguageMozcSuggestionsSize, 3, 1, 9, "suggestions_size", 366 { prefs::kLanguageMozcSuggestionsSize, 3, 1, 9, input_method::kMozcSuggestions Size,
378 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_SUGGESTIONS_SIZE, 367 IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_SUGGESTIONS_SIZE,
379 PrefService::SYNCABLE_PREF } 368 PrefService::SYNCABLE_PREF }
380 }; 369 };
381 COMPILE_ASSERT(kNumMozcIntegerPrefs == arraysize(kMozcIntegerPrefs), 370 COMPILE_ASSERT(kNumMozcIntegerPrefs == arraysize(kMozcIntegerPrefs),
382 TheSizeShouldMatch); 371 TheSizeShouldMatch);
383 372
384 // --------------------------------------------------------------------------- 373 // ---------------------------------------------------------------------------
385 // For keyboard stuff 374 // For keyboard stuff
386 // --------------------------------------------------------------------------- 375 // ---------------------------------------------------------------------------
387 const int kXkbAutoRepeatDelayInMs = 500; 376 const int kXkbAutoRepeatDelayInMs = 500;
388 const int kXkbAutoRepeatIntervalInMs = 50; 377 const int kXkbAutoRepeatIntervalInMs = 50;
389 const char kPreferredKeyboardLayout[] = "PreferredKeyboardLayout"; 378 const char kPreferredKeyboardLayout[] = "PreferredKeyboardLayout";
390 379
391 void RegisterPrefs(PrefService* local_state) { 380 void RegisterPrefs(PrefService* local_state) {
392 // We use an empty string here rather than a hardware keyboard layout name 381 // We use an empty string here rather than a hardware keyboard layout name
393 // since input_method::GetHardwareInputMethodId() might return a fallback 382 // since input_method::GetHardwareInputMethodId() might return a fallback
394 // layout name if local_state->RegisterStringPref(kHardwareKeyboardLayout) 383 // layout name if local_state->RegisterStringPref(kHardwareKeyboardLayout)
395 // is not called yet. 384 // is not called yet.
396 local_state->RegisterStringPref(kPreferredKeyboardLayout, 385 local_state->RegisterStringPref(kPreferredKeyboardLayout,
397 "", 386 "",
398 PrefService::UNSYNCABLE_PREF); 387 PrefService::UNSYNCABLE_PREF);
399 } 388 }
400 389
401 } // namespace language_prefs 390 } // namespace language_prefs
402 } // namespace chromeos 391 } // namespace chromeos
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698