Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(119)

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

Issue 23548006: Remove IME related configuration preferences in Chrome OS. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Remove unnecessary comments. Created 7 years, 3 months 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
« no previous file with comments | « no previous file | chrome/browser/chromeos/language_preferences.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 #ifndef CHROME_BROWSER_CHROMEOS_LANGUAGE_PREFERENCES_H_ 5 #ifndef CHROME_BROWSER_CHROMEOS_LANGUAGE_PREFERENCES_H_
6 #define CHROME_BROWSER_CHROMEOS_LANGUAGE_PREFERENCES_H_ 6 #define CHROME_BROWSER_CHROMEOS_LANGUAGE_PREFERENCES_H_
7 7
8 #include <stddef.h> // For size_t
9
10 #include "components/user_prefs/pref_registry_syncable.h"
11
12 class PrefRegistrySimple; 8 class PrefRegistrySimple;
13 9
14 // TODO(yusukes): Rename this file to input_method_preference.cc. Since 10 // TODO(yusukes): Rename this file to input_method_preference.cc. Since
15 // "language" usually means UI language, the current file name is confusing. 11 // "language" usually means UI language, the current file name is confusing.
16 // The namespace should also be changed to "namespace input_method {". 12 // The namespace should also be changed to "namespace input_method {".
17 13
18 // This file defines types and declare variables used in "Languages and 14 // This file defines types and declare variables used in "Languages and
19 // Input" settings in Chromium OS. 15 // Input" settings in Chromium OS.
20 namespace chromeos { 16 namespace chromeos {
21 namespace language_prefs { 17 namespace language_prefs {
22 18
23 // TODO(yusukes): Remove the "Language" prefix from all structs and variables.
24 // They're redundant (we already have the language_prefs namespace) and even
25 // confusing.
26
27 // The struct is used for preferences consisting of multiple choices, like
28 // punctuation types used in Japanese input method.
29 template <typename DataType>
30 struct LanguageMultipleChoicePreference {
31 const char* pref_name; // Chrome preference name.
32 DataType default_pref_value;
33 const char* ibus_config_name;
34 // Currently we have 10 combobox items at most.
35 static const size_t kMaxItems = 11;
36 struct {
37 DataType ibus_config_value;
38 int item_message_id; // Resource grd ID for the combobox item.
39 } values_and_ids[kMaxItems];
40 int label_message_id; // Resource grd ID for the label.
41 user_prefs::PrefRegistrySyncable::PrefSyncStatus sync_status;
42 };
43
44 // The struct is used for preferences of boolean values, like switches to
45 // enable or disable particular features.
46 struct LanguageBooleanPrefs {
47 const char* pref_name; // Chrome preference name.
48 bool default_pref_value;
49 const char* ibus_config_name;
50 int message_id;
51 user_prefs::PrefRegistrySyncable::PrefSyncStatus sync_status;
52 };
53
54 // The struct is used for preferences of integer range values, like the
55 // key repeat rate.
56 struct LanguageIntegerRangePreference {
57 const char* pref_name; // Chrome preference name.
58 int default_pref_value;
59 int min_pref_value;
60 int max_pref_value;
61 const char* ibus_config_name;
62 int message_id;
63 user_prefs::PrefRegistrySyncable::PrefSyncStatus sync_status;
64 };
65
66 // --------------------------------------------------------------------------- 19 // ---------------------------------------------------------------------------
67 // For ibus-daemon 20 // For input method engine management
68 // --------------------------------------------------------------------------- 21 // ---------------------------------------------------------------------------
69 extern const char kGeneralSectionName[]; 22 extern const char kGeneralSectionName[];
70 extern const char kPreloadEnginesConfigName[]; 23 extern const char kPreloadEnginesConfigName[];
71 24
72 // --------------------------------------------------------------------------- 25 // ---------------------------------------------------------------------------
73 // For Traditional Chinese input method (ibus-mozc-chewing)
74 // ---------------------------------------------------------------------------
75 extern const char kChewingSectionName[];
76
77 extern const LanguageBooleanPrefs kChewingBooleanPrefs[];
78 // This is not ideal, but we should hard-code the number here as the value
79 // is referenced in other header files as array sizes. We have a
80 // COMPILE_ASSERT in .cc to ensure that the number is correct.
81 const size_t kNumChewingBooleanPrefs = 8 - 2; // -2 is for crosbug.com/14185
82
83 extern const LanguageIntegerRangePreference kChewingIntegerPrefs[];
84 // See comments at kNumChewingBooleanPrefs for why we hard-code this here.
85 const size_t kNumChewingIntegerPrefs = 2;
86 const int kChewingMaxChiSymbolLenIndex = 0;
87 const int kChewingCandPerPageIndex = 1;
88
89 extern const LanguageMultipleChoicePreference<const char*>
90 kChewingMultipleChoicePrefs[];
91 // See comments at kNumChewingBooleanPrefs for why we hard-code this here.
92 const size_t kNumChewingMultipleChoicePrefs = 2;
93
94 extern const LanguageMultipleChoicePreference<int> kChewingHsuSelKeyType;
95
96 // ---------------------------------------------------------------------------
97 // For Korean input method (ibus-mozc-hangul)
98 // ---------------------------------------------------------------------------
99 extern const char kHangulSectionName[];
100 extern const char kHangulKeyboardConfigName[];
101 extern const char kHangulHanjaBindingKeysConfigName[];
102 extern const char kHangulHanjaBindingKeys[];
103
104 struct HangulKeyboardNameIDPair {
105 int message_id;
106 const char* keyboard_id;
107 };
108
109 extern const HangulKeyboardNameIDPair kHangulKeyboardNameIDPairs[];
110 // See comments at kNumChewingBooleanPrefs for why we hard-code this here.
111 const size_t kNumHangulKeyboardNameIDPairs = 5;
112
113 // ---------------------------------------------------------------------------
114 // For Simplified Chinese input method (ibus-mozc-pinyin)
115 // ---------------------------------------------------------------------------
116 extern const char kPinyinSectionName[];
117
118 extern const LanguageBooleanPrefs kPinyinBooleanPrefs[];
119 // See comments at kNumChewingBooleanPrefs for why we hard-code this here.
120 const size_t kNumPinyinBooleanPrefs = 11;
121
122 extern const LanguageMultipleChoicePreference<int> kPinyinDoublePinyinSchema;
123
124 struct PinyinIntegerPref {
125 const char* pref_name; // Chrome preference name.
126 int default_pref_value;
127 const char* ibus_config_name;
128 user_prefs::PrefRegistrySyncable::PrefSyncStatus sync_status;
129 // TODO(yusukes): Add message_id if needed.
130 };
131
132 extern const PinyinIntegerPref kPinyinIntegerPrefs[];
133 const size_t kNumPinyinIntegerPrefs = 1;
134
135 // ---------------------------------------------------------------------------
136 // For Japanese input method (ibus-mozc)
137 // ---------------------------------------------------------------------------
138 extern const char kMozcSectionName[];
139
140 extern const LanguageBooleanPrefs kMozcBooleanPrefs[];
141 // See comments at kNumChewingBooleanPrefs for why we hard-code this here.
142 const size_t kNumMozcBooleanPrefs = 4;
143
144 extern const LanguageMultipleChoicePreference<const char*>
145 kMozcMultipleChoicePrefs[];
146 // See comments at kNumChewingBooleanPrefs for why we hard-code this here.
147 const size_t kNumMozcMultipleChoicePrefs = 8;
148
149 extern const LanguageIntegerRangePreference kMozcIntegerPrefs[];
150 // See comments at kNumChewingBooleanPrefs for why we hard-code this here.
151 const size_t kNumMozcIntegerPrefs = 1;
152
153 // ---------------------------------------------------------------------------
154 // For keyboard stuff 26 // For keyboard stuff
155 // --------------------------------------------------------------------------- 27 // ---------------------------------------------------------------------------
156 // A delay between the first and the start of the rest. 28 // A delay between the first and the start of the rest.
157 extern const int kXkbAutoRepeatDelayInMs; 29 extern const int kXkbAutoRepeatDelayInMs;
158 // An interval between the repeated keys. 30 // An interval between the repeated keys.
159 extern const int kXkbAutoRepeatIntervalInMs; 31 extern const int kXkbAutoRepeatIntervalInMs;
160 32
161 // A string Chrome preference (Local State) of the preferred keyboard layout in 33 // A string Chrome preference (Local State) of the preferred keyboard layout in
162 // the login screen. 34 // the login screen.
163 extern const char kPreferredKeyboardLayout[]; 35 extern const char kPreferredKeyboardLayout[];
164 36
165 // Registers non-user prefs for the default keyboard layout on the login screen. 37 // Registers non-user prefs for the default keyboard layout on the login screen.
166 void RegisterPrefs(PrefRegistrySimple* registry); 38 void RegisterPrefs(PrefRegistrySimple* registry);
167 39
168 } // language_prefs 40 } // namespace language_prefs
169 } // chromeos 41 } // namespace chromeos
170 42
171 #endif // CHROME_BROWSER_CHROMEOS_LANGUAGE_PREFERENCES_H_ 43 #endif // CHROME_BROWSER_CHROMEOS_LANGUAGE_PREFERENCES_H_
OLDNEW
« no previous file with comments | « no previous file | chrome/browser/chromeos/language_preferences.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698