Index: chrome/browser/chromeos/preferences.cc |
diff --git a/chrome/browser/chromeos/preferences.cc b/chrome/browser/chromeos/preferences.cc |
index e0810c895c9b77202ef28380db81f9bfe7af942f..d5a9b23e0aec4f0bcb48b3f5f2531bc7699de1c3 100644 |
--- a/chrome/browser/chromeos/preferences.cc |
+++ b/chrome/browser/chromeos/preferences.cc |
@@ -285,6 +285,8 @@ void Preferences::RegisterProfilePrefs( |
true); |
registry->RegisterBooleanPref(prefs::kForceMaximizeOnFirstRun, false); |
+ |
+ registry->RegisterBooleanPref(prefs::kLangugaeImeMenuActivated, false); |
} |
void Preferences::InitUserPrefs(syncable_prefs::PrefServiceSyncable* prefs) { |
@@ -317,6 +319,7 @@ void Preferences::InitUserPrefs(syncable_prefs::PrefServiceSyncable* prefs) { |
prefs, callback); |
previous_input_method_.Init(prefs::kLanguagePreviousInputMethod, |
prefs, callback); |
+ ime_menu_activated_.Init(prefs::kLangugaeImeMenuActivated, prefs, callback); |
xkb_auto_repeat_enabled_.Init( |
prefs::kLanguageXkbAutoRepeatEnabled, prefs, callback); |
@@ -582,6 +585,16 @@ void Preferences::ApplyPreferences(ApplyReason reason, |
ime_state_->SetEnabledExtensionImes(&split_values); |
} |
+ if (pref_name == prefs::kLangugaeImeMenuActivated && |
+ (reason == REASON_PREF_CHANGED || reason == REASON_ACTIVE_USER_CHANGED)) { |
+ const bool activated = ime_menu_activated_.GetValue(); |
+ if (activated) |
+ DVLOG(1) << "IME menu is activated."; |
+ else |
+ DVLOG(1) << "IME menu is deactivated."; |
+ // TODO(azurewei): Fire inputMethodPrivate API event. |
+ } |
+ |
if (user_is_active) { |
system::InputDeviceSettings::Get()->UpdateTouchpadSettings( |
touchpad_settings); |