Index: chrome/browser/resources/options/language_options.js |
diff --git a/chrome/browser/resources/options/language_options.js b/chrome/browser/resources/options/language_options.js |
index 0975c939746c1cd47a6d5cbc69047764030aa967..3299f0236174de2aa1de8e720c1df0fe11380e29 100644 |
--- a/chrome/browser/resources/options/language_options.js |
+++ b/chrome/browser/resources/options/language_options.js |
@@ -66,6 +66,21 @@ cr.define('options', function() { |
*/ |
var ENABLE_TRANSLATE = 'translate.enabled'; |
+ /** |
+ * The preference is a boolean indicates whether the 'enable-ime-menu' flag is |
+ * enabled or disabled |
+ * @type {string} |
+ * @const |
+ */ |
+ var ENABLE_IME_MENU_FLAG_PREF = 'settings.language.ime_menu_flag_enabled'; |
michaelpg
2016/01/04 16:37:36
i think we usually set flag info via loadTimeData
stevenjb
2016/01/04 17:58:10
Correct, e.g. see enableTimeZoneTrackingOption
Azure Wei
2016/01/05 06:48:03
Done.
Azure Wei
2016/01/05 06:48:03
Done.
|
+ |
+ /** |
+ * The preference is a boolean that activates/deactivates IME menu on shelf. |
+ * @type {string} |
+ * @const |
+ */ |
+ var ACTIVATE_IME_MENU_PREF = 'settings.language.ime_menu_activated'; |
+ |
///////////////////////////////////////////////////////////////////////////// |
// LanguageOptions class: |
@@ -202,6 +217,8 @@ cr.define('options', function() { |
this.handleEnableTranslatePrefChange_.bind(this)); |
this.translateSupportedLanguages_ = |
loadTimeData.getValue('translateSupportedLanguages'); |
+ Preferences.getInstance().addEventListener(ENABLE_IME_MENU_FLAG_PREF, |
+ this.handleEnableImeMenuFlagPrefChange_.bind(this)); |
stevenjb
2016/01/04 17:58:10
Flags can not be changed at runtime so this is unn
Azure Wei
2016/01/05 06:48:03
It was replaced with loadTimeData.
|
// Set up add button. |
var onclick = function(e) { |
@@ -270,6 +287,11 @@ cr.define('options', function() { |
// Public session users cannot change the locale. |
if (cr.isChromeOS && UIAccountTweaks.loggedInAsPublicAccount()) |
$('language-options-ui-language-section').hidden = true; |
+ |
+ // Listen to check on 'activate-ime-menu' checkbox |
+ var checkboxImeMenu = $('activate-ime-menu'); |
+ checkboxImeMenu.addEventListener('click', |
+ this.handleActivateImeMenuCheckboxClick_.bind(this)); |
}, |
/** |
@@ -1007,6 +1029,16 @@ cr.define('options', function() { |
}, |
/** |
+ * Handles enable-ime-menu change. |
+ * @param {Event} e Change event. |
+ * @private |
+ */ |
+ handleEnableImeMenuFlagPrefChange_: function(e) { |
+ $('language-options-ime-menu-template').hidden = !e.value.value; |
+ }, |
+ |
+ |
michaelpg
2016/01/04 16:37:36
remove extra newline
Azure Wei
2016/01/05 06:48:03
Done.
|
+ /** |
* Handles spellCheckLanguageButton click. |
* @param {Event} e Click event. |
* @private |
@@ -1416,6 +1448,17 @@ cr.define('options', function() { |
return main; |
}, |
+ |
+ /** |
+ * Handles activate-ime-menu checkbox's click event. |
+ * @param {Event} e Click event. |
+ * @private |
+ */ |
+ handleActivateImeMenuCheckboxClick_: function(e) { |
+ var checkbox = e.target; |
+ Preferences.setBooleanPref(ACTIVATE_IME_MENU_PREF, |
+ checkbox.checked, true); |
michaelpg
2016/01/04 16:37:36
indent off by 1
Azure Wei
2016/01/05 06:48:03
Done.
|
+ }, |
}; |
/** |