1ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen// Copyright (c) 2011 The Chromium Authors. All rights reserved. 2bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen// Use of this source code is governed by a BSD-style license that can be 3bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen// found in the LICENSE file. 4bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen 5bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen#include "base/basictypes.h" 6bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen#include "chrome/browser/chromeos/language_preferences.h" 7bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen#include "chrome/common/pref_names.h" 8bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen#include "grit/generated_resources.h" 9bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen 10bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsennamespace chromeos { 11bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsennamespace language_prefs { 12bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen 13bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen// --------------------------------------------------------------------------- 14bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen// For ibus-daemon 15bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen// --------------------------------------------------------------------------- 16bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsenconst char kGeneralSectionName[] = "general"; 17bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsenconst char kHotKeySectionName[] = "general/hotkey"; 18bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsenconst char kPreloadEnginesConfigName[] = "preload_engines"; 19bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsenconst char kNextEngineInMenuConfigName[] = "next_engine_in_menu"; 20bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsenconst char kPreviousEngineConfigName[] = "previous_engine"; 21bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsenconst char kHotkeyNextEngineInMenu[] = 22bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen "Shift+Alt+Release+Shift_L,Shift+Alt+Release+Meta_L,Control+Shift+space," 23dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen "Shift+Alt+Release+Shift_R,Shift+Alt+Release+Meta_R,Zenkaku_Hankaku,Hangul"; 24bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsenconst char kHotkeyPreviousEngine[] = "Control+space"; 25bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen 26bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen// --------------------------------------------------------------------------- 27bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen// For Traditional Chinese input method (ibus-chewing) 28bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen// --------------------------------------------------------------------------- 29bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsenconst char kChewingSectionName[] = "engine/Chewing"; 30bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen 31bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen// We have to sync the |ibus_config_name|s with those in 32bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen// ibus-chewing/files/src/Config.cc. 33bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsenconst LanguageBooleanPrefs kChewingBooleanPrefs[] = { 34bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { prefs::kLanguageChewingAutoShiftCur, false, "autoShiftCur", 35bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SETTING_AUTO_SHIFT_CUR}, 36bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { prefs::kLanguageChewingAddPhraseDirection, false, "addPhraseDirection", 37bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SETTING_ADD_PHRASE_DIRECTION}, 38ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen /* Temporarily disabled. (crosbug.com/14185) 39bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { prefs::kLanguageChewingEasySymbolInput, true, "easySymbolInput", 40bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SETTING_EASY_SYMBOL_INPUT}, 41ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen */ 42bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { prefs::kLanguageChewingEscCleanAllBuf, false, "escCleanAllBuf", 43bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SETTING_ESC_CLEAN_ALL_BUF}, 44bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { prefs::kLanguageChewingForceLowercaseEnglish, false, 45bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen "forceLowercaseEnglish", 46bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SETTING_FORCE_LOWER_CASE_ENGLISH}, 47ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen /* Temporarily disabled. (crosbug.com/14185) 48bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { prefs::kLanguageChewingPlainZhuyin, false, "plainZhuyin", 49bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SETTING_PLAIN_ZHUYIN}, 50ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen */ 51bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { prefs::kLanguageChewingPhraseChoiceRearward, true, "phraseChoiceRearward", 52bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SETTING_PHRASE_CHOICE_REARWARD}, 53bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { prefs::kLanguageChewingSpaceAsSelection, true, "spaceAsSelection", 54bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SETTING_SPACE_AS_SELECTION}, 55bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen}; 56bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian MonsenCOMPILE_ASSERT(kNumChewingBooleanPrefs == arraysize(kChewingBooleanPrefs), 57bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen TheSizeShouldMatch); 58bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen 59bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsenconst LanguageIntegerRangePreference kChewingIntegerPrefs[] = { 60bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { prefs::kLanguageChewingMaxChiSymbolLen, 20, 8, 40, "maxChiSymbolLen", 61bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SETTING_MAX_CHI_SYMBOL_LEN}, 62bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { prefs::kLanguageChewingCandPerPage, 10, 8, 10, "candPerPage", 63bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SETTING_CAND_PER_PAGE}, 64bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen}; 65bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian MonsenCOMPILE_ASSERT(kNumChewingIntegerPrefs == arraysize(kChewingIntegerPrefs), 66bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen TheSizeShouldMatch); 67bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen 68bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsenconst LanguageMultipleChoicePreference<const char*> 69bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen kChewingMultipleChoicePrefs[] = { 70bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { prefs::kLanguageChewingKeyboardType, 71bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen "default", 72bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen "KBType", 73bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen {{ "default", 74bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_KEYBOARD_TYPE_DEFAULT }, 75bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { "hsu", IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_KEYBOARD_TYPE_HSU }, 76bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { "ibm", IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_KEYBOARD_TYPE_IBM }, 77bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { "gin_yieh", 78bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_KEYBOARD_TYPE_GIN_YIEH }, 79bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { "eten", IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_KEYBOARD_TYPE_ETEN }, 80bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { "eten26", IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_KEYBOARD_TYPE_ETEN26 }, 81bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { "dvorak", IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_KEYBOARD_TYPE_DVORAK }, 82bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { "dvorak_hsu", 83bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_KEYBOARD_TYPE_DVORAK_HSU }, 84bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { "dachen_26", 85bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_KEYBOARD_TYPE_DACHEN_26 }, 86bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { "hanyu", IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_KEYBOARD_TYPE_HANYU }}, 87bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_KEYBOARD_TYPE, 88bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen }, 89bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { prefs::kLanguageChewingSelKeys, 90bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen "1234567890", 91bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen "selKeys", 92bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen {{ "1234567890", 93bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SEL_KEYS_1234567890 }, 94bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { "asdfghjkl;", 95bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SEL_KEYS_ASDFGHJKLS }, 96bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { "asdfzxcv89", 97bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SEL_KEYS_ASDFZXCV89 }, 98bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { "asdfjkl789", 99bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SEL_KEYS_ASDFJKL789 }, 100bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { "aoeu;qjkix", 101bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SEL_KEYS_AOEUSQJKIX }, 102bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { "aoeuhtnsid", 103bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SEL_KEYS_AOEUHTNSID }, 104bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { "aoeuidhtns", 105bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SEL_KEYS_AOEUIDHTNS }, 106bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { "1234qweras", 107bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SEL_KEYS_1234QWERAS }}, 108bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_SEL_KEYS, 109bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen }, 110bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen}; 111bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian MonsenCOMPILE_ASSERT(kNumChewingMultipleChoicePrefs == 112bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen arraysize(kChewingMultipleChoicePrefs), 113bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen TheSizeShouldMatch); 114bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen 115bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsenconst LanguageMultipleChoicePreference<int> kChewingHsuSelKeyType = { 116bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen prefs::kLanguageChewingHsuSelKeyType, 117bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen 1, 118bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen "hsuSelKeyType", 119bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen {{ 1, IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_HSU_SEL_KEY_TYPE_1 }, 120bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { 2, IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_HSU_SEL_KEY_TYPE_2 }}, 121bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_OPTIONS_SETTINGS_LANGUAGES_CHEWING_HSU_SEL_KEY_TYPE, 122bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen}; 123bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen 124bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen// --------------------------------------------------------------------------- 125bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen// For Korean input method (ibus-hangul) 126bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen// --------------------------------------------------------------------------- 127bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsenconst char kHangulSectionName[] = "engine/Hangul"; 128bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsenconst char kHangulKeyboardConfigName[] = "HangulKeyboard"; 129bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsenconst char kHangulHanjaKeysConfigName[] = "HanjaKeys"; 130bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen// We add Control+9 since F9 key is reserved by the window manager. 131bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen// TODO: HanjaKeys are not configurable yet (and we're not sure if it should.) 132bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsenconst char kHangulHanjaKeys[] = "F9,Hangul_Hanja,Control+9"; 133bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen 134bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsenconst HangulKeyboardNameIDPair kHangulKeyboardNameIDPairs[] = { 135bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen // We have to sync the |keyboard_id|s with those in 136bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen // ibus-hangul/files/setup/main.py. 137bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { IDS_OPTIONS_SETTINGS_LANGUAGES_HANGUL_SETTINGS_KEYBOARD_2_SET, "2" }, 138bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { IDS_OPTIONS_SETTINGS_LANGUAGES_HANGUL_SETTINGS_KEYBOARD_3_SET_FINAL, 139bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen "3f" }, 140bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { IDS_OPTIONS_SETTINGS_LANGUAGES_HANGUL_SETTINGS_KEYBOARD_3_SET_390, "39" }, 141bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { IDS_OPTIONS_SETTINGS_LANGUAGES_HANGUL_SETTINGS_KEYBOARD_3_SET_NO_SHIFT, 142bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen "3s" }, 143bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen // We don't support "Sebeolsik 2 set" keyboard. 144bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen}; 145bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian MonsenCOMPILE_ASSERT(kNumHangulKeyboardNameIDPairs == 146bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen arraysize(kHangulKeyboardNameIDPairs), 147bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen TheSizeShouldMatch); 148bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen 149bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen// --------------------------------------------------------------------------- 150bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen// For Simplified Chinese input method (ibus-pinyin) 151bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen// --------------------------------------------------------------------------- 152bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsenconst char kPinyinSectionName[] = "engine/Pinyin"; 153bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen 154bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen// We have to sync the |ibus_config_name|s with those in 155bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen// ibus-pinyin/files/src/Config.cc. 156bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsenconst LanguageBooleanPrefs kPinyinBooleanPrefs[] = { 157bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { prefs::kLanguagePinyinCorrectPinyin, true, "CorrectPinyin", 158bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_OPTIONS_SETTINGS_LANGUAGES_PINYIN_SETTING_CORRECT_PINYIN }, 159bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { prefs::kLanguagePinyinFuzzyPinyin, false, "FuzzyPinyin", 160bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_OPTIONS_SETTINGS_LANGUAGES_PINYIN_SETTING_FUZZY_PINYIN }, 161bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { prefs::kLanguagePinyinShiftSelectCandidate, false, "ShiftSelectCandidate", 162bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_OPTIONS_SETTINGS_LANGUAGES_PINYIN_SETTING_SHIFT_SELECT_PINYIN }, 163bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { prefs::kLanguagePinyinMinusEqualPage, true, "MinusEqualPage", 164bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_OPTIONS_SETTINGS_LANGUAGES_PINYIN_SETTING_MINUS_EQUAL_PAGE }, 165bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { prefs::kLanguagePinyinCommaPeriodPage, true, "CommaPeriodPage", 166bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_OPTIONS_SETTINGS_LANGUAGES_PINYIN_SETTING_COMMA_PERIOD_PAGE }, 167bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { prefs::kLanguagePinyinAutoCommit, false, "AutoCommit", 168bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_OPTIONS_SETTINGS_LANGUAGES_PINYIN_SETTING_AUTO_COMMIT }, 169bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { prefs::kLanguagePinyinDoublePinyin, false, "DoublePinyin", 170bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_OPTIONS_SETTINGS_LANGUAGES_PINYIN_SETTING_DOUBLE_PINYIN }, 171bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { prefs::kLanguagePinyinInitChinese, true, "InitChinese", 172bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_OPTIONS_SETTINGS_LANGUAGES_PINYIN_SETTING_INIT_CHINESE }, 173bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { prefs::kLanguagePinyinInitFull, false, "InitFull", 174bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_OPTIONS_SETTINGS_LANGUAGES_PINYIN_SETTING_INIT_FULL }, 175bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { prefs::kLanguagePinyinInitFullPunct, true, "InitFullPunct", 176bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_OPTIONS_SETTINGS_LANGUAGES_PINYIN_SETTING_INIT_FULL_PUNCT }, 177bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { prefs::kLanguagePinyinInitSimplifiedChinese, true, "InitSimplifiedChinese", 178bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_OPTIONS_SETTINGS_LANGUAGES_PINYIN_SETTING_INIT_SIMPLIFIED_CHINESE }, 179bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen // TODO(yusukes): Support PINYIN_{INCOMPLETE,CORRECT,FUZZY}_... prefs (32 180bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen // additional boolean prefs.) 181bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen}; 182bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian MonsenCOMPILE_ASSERT(kNumPinyinBooleanPrefs == arraysize(kPinyinBooleanPrefs), 183bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen TheSizeShouldMatch); 184bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen// TODO(yusukes): Support HalfWidthPuncts and IncompletePinyin prefs if needed. 185bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen 186bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsenconst LanguageMultipleChoicePreference<int> kPinyinDoublePinyinSchema = { 187bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen prefs::kLanguagePinyinDoublePinyinSchema, 188bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen 0, 189bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen "DoublePinyinSchema", 190bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen {{ 0, IDS_OPTIONS_SETTINGS_LANGUAGES_PINYIN_DOUBLE_SCHEMA_MSPY}, 191bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { 1, IDS_OPTIONS_SETTINGS_LANGUAGES_PINYIN_DOUBLE_SCHEMA_ZRM}, 192bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { 2, IDS_OPTIONS_SETTINGS_LANGUAGES_PINYIN_DOUBLE_SCHEMA_ABC}, 193bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { 3, IDS_OPTIONS_SETTINGS_LANGUAGES_PINYIN_DOUBLE_SCHEMA_ZGPY}, 194bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { 4, IDS_OPTIONS_SETTINGS_LANGUAGES_PINYIN_DOUBLE_SCHEMA_PYJJ}}, 195bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_OPTIONS_SETTINGS_LANGUAGES_PINYIN_DOUBLE_SCHEMA, 196bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen}; 197bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen 198bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsenconst PinyinIntegerPref kPinyinIntegerPrefs[] = { 199bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen // TODO(yusukes): the type of lookup_table_page_size on ibus should be uint. 200bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { prefs::kLanguagePinyinLookupTablePageSize, 5, "LookupTablePageSize" }, 201bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen}; 202bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian MonsenCOMPILE_ASSERT(kNumPinyinIntegerPrefs == arraysize(kPinyinIntegerPrefs), 203bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen TheSizeShouldMatch); 204bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen 205bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen// --------------------------------------------------------------------------- 206bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen// For Japanese input method (ibus-mozc) 207bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen// --------------------------------------------------------------------------- 208bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsenconst char kMozcSectionName[] = "engine/Mozc"; 209bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen 210bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen#define IDS_MOZC(suffix) \ 211bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_OPTIONS_SETTINGS_LANGUAGES_MOZC_##suffix 212bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen 213bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsenconst LanguageBooleanPrefs kMozcBooleanPrefs[] = { 214bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { prefs::kLanguageMozcIncognitoMode, 215bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen false, 216bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen "incognito_mode", 217bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_MOZC(INCOGNITO_MODE) 218bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen }, 219bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { prefs::kLanguageMozcUseAutoImeTurnOff, 220bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen true, 221bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen "use_auto_ime_turn_off", 222bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_MOZC(USE_AUTO_IME_TURN_OFF) 223bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen }, 224bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { prefs::kLanguageMozcUseDateConversion, 225bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen true, 226bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen "use_date_conversion", 227bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_MOZC(USE_DATE_CONVERSION) 228bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen }, 229bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { prefs::kLanguageMozcUseSingleKanjiConversion, 230bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen true, 231bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen "use_single_kanji_conversion", 232bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_MOZC(USE_SINGLE_KANJI_CONVERSION) 233bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen }, 234bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { prefs::kLanguageMozcUseSymbolConversion, 235bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen true, 236bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen "use_symbol_conversion", 237bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_MOZC(USE_SYMBOL_CONVERSION) 238bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen }, 239bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { prefs::kLanguageMozcUseNumberConversion, 240bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen true, 241bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen "use_number_conversion", 242bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_MOZC(USE_NUMBER_CONVERSION) 243bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen }, 244bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { prefs::kLanguageMozcUseHistorySuggest, 245bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen true, 246bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen "use_history_suggest", 247bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_MOZC(USE_HISTORY_SUGGEST) 248bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen }, 249bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { prefs::kLanguageMozcUseDictionarySuggest, 250bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen true, 251bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen "use_dictionary_suggest", 252bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_MOZC(USE_DICTIONARY_SUGGEST) 253bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen }, 254bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen}; 255bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian MonsenCOMPILE_ASSERT(kNumMozcBooleanPrefs == arraysize(kMozcBooleanPrefs), 256bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen TheSizeShouldMatch); 257bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen 258bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsenextern const LanguageMultipleChoicePreference<const char*> 259bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen kMozcMultipleChoicePrefs[] = { 260bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { prefs::kLanguageMozcPreeditMethod, 261bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen "ROMAN", 262bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen "preedit_method", 263bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen {{ "ROMAN", IDS_MOZC(PREEDIT_METHOD_ROMAN) }, 264bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { "KANA", IDS_MOZC(PREEDIT_METHOD_KANA) }}, 265bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_MOZC(PREEDIT_METHOD), 266bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen }, 267bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { prefs::kLanguageMozcSessionKeymap, 268bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen "MSIME", 269bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen "session_keymap", 270bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen {{ "ATOK", IDS_MOZC(SESSION_KEYMAP_ATOK) }, 271bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { "MSIME", IDS_MOZC(SESSION_KEYMAP_MSIME) }, 272bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { "KOTOERI", IDS_MOZC(SESSION_KEYMAP_KOTOERI) }}, 273bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen // TODO: Support "CUSTOM" keymap. 274bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_MOZC(SESSION_KEYMAP), 275bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen }, 276bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { prefs::kLanguageMozcPunctuationMethod, 277bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen "KUTEN_TOUTEN", 278bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen "punctuation_method", 279bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen {{ "KUTEN_TOUTEN", 280bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_MOZC(PUNCTUATION_METHOD_KUTEN_TOUTEN) }, 281bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { "COMMA_PERIOD", 282bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_MOZC(PUNCTUATION_METHOD_COMMA_PERIOD) }, 283bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { "KUTEN_PERIOD", 284bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_MOZC(PUNCTUATION_METHOD_KUTEN_PERIOD) }, 285bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { "COMMA_TOUTEN", 286bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_MOZC(PUNCTUATION_METHOD_COMMA_TOUTEN) }}, 287bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_MOZC(PUNCTUATION_METHOD), 288bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen }, 289bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { prefs::kLanguageMozcSymbolMethod, 290bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen "CORNER_BRACKET_MIDDLE_DOT", 291bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen "symbol_method", 292bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen {{ "CORNER_BRACKET_MIDDLE_DOT", 293bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_MOZC(SYMBOL_METHOD_CORNER_BRACKET_MIDDLE_DOT) }, 294bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { "SQUARE_BRACKET_SLASH", 295bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_MOZC(SYMBOL_METHOD_SQUARE_BRACKET_SLASH) }, 296bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { "CORNER_BRACKET_SLASH", 297bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_MOZC(SYMBOL_METHOD_CORNER_BRACKET_SLASH) }, 298bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { "SQUARE_BRACKET_MIDDLE_DOT", 299bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_MOZC(SYMBOL_METHOD_SQUARE_BRACKET_MIDDLE_DOT) }}, 300bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_MOZC(SYMBOL_METHOD), 301bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen }, 302bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { prefs::kLanguageMozcSpaceCharacterForm, 303bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen "FUNDAMENTAL_INPUT_MODE", 304bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen "space_character_form", 305bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen {{ "FUNDAMENTAL_INPUT_MODE", 306bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_MOZC(SPACE_CHARACTER_FORM_FUNDAMENTAL_INPUT_MODE) }, 307bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { "FUNDAMENTAL_FULL_WIDTH", 308bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_MOZC(SPACE_CHARACTER_FORM_FUNDAMENTAL_FULL_WIDTH) }, 309bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { "FUNDAMENTAL_HALF_WIDTH", 310bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_MOZC(SPACE_CHARACTER_FORM_FUNDAMENTAL_HALF_WIDTH) }}, 311bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_MOZC(SPACE_CHARACTER_FORM), 312bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen }, 313bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { prefs::kLanguageMozcHistoryLearningLevel, 314bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen "DEFAULT_HISTORY", 315bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen "history_learning_level", 316bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen {{ "DEFAULT_HISTORY", 317bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_MOZC(HISTORY_LEARNING_LEVEL_DEFAULT_HISTORY) }, 318bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { "READ_ONLY", 319bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_MOZC(HISTORY_LEARNING_LEVEL_READ_ONLY) }, 320bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { "NO_HISTORY", 321bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_MOZC(HISTORY_LEARNING_LEVEL_NO_HISTORY) }}, 322bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_MOZC(HISTORY_LEARNING_LEVEL), 323bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen }, 324bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen // TODO(mazda): Uncomment this block once the candidate window in Chrome OS 325bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen // supports changing shortcut labels. 326bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen // { prefs::kLanguageMozcSelectionShortcut, 327bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen // "SHORTCUT_123456789", 328bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen // "selection_shortcut", 329bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen // {{ "NO_SHORTCUT", 330bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen // IDS_MOZC(SELECTION_SHORTCUT_NO_SHORTCUT) }, 331bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen // { "SHORTCUT_123456789", 332bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen // IDS_MOZC(SELECTION_SHORTCUT_SHORTCUT_123456789) }, 333bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen // { "SHORTCUT_ASDFGHJKL", 334bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen // IDS_MOZC(SELECTION_SHORTCUT_SHORTCUT_ASDFGHJKL) }}, 335bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen // IDS_MOZC(SELECTION_SHORTCUT), 336bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen // }, 337bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { prefs::kLanguageMozcShiftKeyModeSwitch, 338bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen "ASCII_INPUT_MODE", 339bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen "shift_key_mode_switch", 340bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen {{ "OFF", 341bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_MOZC(SHIFT_KEY_MODE_SWITCH_OFF) }, 342bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { "ASCII_INPUT_MODE", 343bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_MOZC(SHIFT_KEY_MODE_SWITCH_ASCII_INPUT_MODE) }, 344bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { "KATAKANA_INPUT_MODE", 345bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_MOZC(SHIFT_KEY_MODE_SWITCH_KATAKANA_INPUT_MODE) }}, 346bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_MOZC(SHIFT_KEY_MODE_SWITCH), 347bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen }, 348bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { prefs::kLanguageMozcNumpadCharacterForm, 349bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen "NUMPAD_HALF_WIDTH", 350bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen "numpad_character_form", 351bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen {{ "NUMPAD_INPUT_MODE", 352bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_MOZC(NUMPAD_CHARACTER_FORM_NUMPAD_INPUT_MODE) }, 353bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { "NUMPAD_FULL_WIDTH", 354bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_MOZC(NUMPAD_CHARACTER_FORM_NUMPAD_FULL_WIDTH) }, 355bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { "NUMPAD_HALF_WIDTH", 356bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_MOZC(NUMPAD_CHARACTER_FORM_NUMPAD_HALF_WIDTH) }, 357bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { "NUMPAD_DIRECT_INPUT", 358bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_MOZC(NUMPAD_CHARACTER_FORM_NUMPAD_DIRECT_INPUT) }}, 359bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_MOZC(NUMPAD_CHARACTER_FORM), 360bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen }, 361bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen}; 362bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian MonsenCOMPILE_ASSERT(kNumMozcMultipleChoicePrefs == 363bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen arraysize(kMozcMultipleChoicePrefs), 364bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen TheSizeShouldMatch); 365bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen 366bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsenconst LanguageIntegerRangePreference kMozcIntegerPrefs[] = { 367bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { prefs::kLanguageMozcSuggestionsSize, 3, 1, 9, "suggestions_size", 368bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_MOZC(SUGGESTIONS_SIZE)}, 369bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen}; 370bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian MonsenCOMPILE_ASSERT(kNumMozcIntegerPrefs == arraysize(kMozcIntegerPrefs), 371bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen TheSizeShouldMatch); 372bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen 373bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen#undef IDS_MOZC 374bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen 375bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen// --------------------------------------------------------------------------- 376bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen// For keyboard stuff 377bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen// --------------------------------------------------------------------------- 378bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsenconst LanguageMultipleChoicePreference<int> kXkbModifierMultipleChoicePrefs = { 379bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen NULL, // don't use this field since the config is associated with 3 prefs. 380bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen kNoRemap, 381bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen NULL, // does not use the ibus configuration service. 382bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen {{ kNoRemap, IDS_OPTIONS_SETTINGS_LANGUAGES_XKB_MODIFIER_NO_REMAP }, 383bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { kSwapCtrlAndAlt, 384bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_OPTIONS_SETTINGS_LANGUAGES_XKB_MODIFIER_REMAP_CTRL_ALT }, 385bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen { kSwapSearchAndCtrl, 386bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen IDS_OPTIONS_SETTINGS_LANGUAGES_XKB_MODIFIER_REMAP_SEARCH_CTRL }}, 387bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen 0, // does not use the label. 388bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen}; 389bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen 390bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsenconst int kXkbAutoRepeatDelayInMs = 500; 391bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsenconst int kXkbAutoRepeatIntervalInMs = 50; 392bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsenconst char kPreferredKeyboardLayout[] = "PreferredKeyboardLayout"; 393bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen 394bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen} // namespace language_prefs 395bda42a81ee5f9b20d2bebedcf0bbef1e30e5b293Kristian Monsen} // namespace chromeos 396