summaryrefslogtreecommitdiffstats
path: root/chromeos/ime
diff options
context:
space:
mode:
authorshuchen <shuchen@chromium.org>2014-10-23 08:17:14 -0700
committerCommit bot <commit-bot@chromium.org>2014-10-23 15:17:33 +0000
commitd9008942f2125209c87095058ff2afa0f8d466e9 (patch)
tree9ce00d67ed69e60bcdf8a2b2b53c5bd3a96a4ebf /chromeos/ime
parent4842a0e08daada491fc519b9eade2cfd04f804ed (diff)
downloadchromium_src-d9008942f2125209c87095058ff2afa0f8d466e9.zip
chromium_src-d9008942f2125209c87095058ff2afa0f8d466e9.tar.gz
chromium_src-d9008942f2125209c87095058ff2afa0f8d466e9.tar.bz2
Adds 2 flags for input method features.
1) --enable-new-korean-ime, which is for new Korean IME based on Google Input Tools. 2) --enable-physical-keyboard-autocorrect, which is for suggestions on typing with physical keyboard. For enable-physical-keyboard-autocorrect, the extension JS will use inputMethodPrivate.getInputMethodConfig API to read the flag value and turn on the feature accordingly. BUG=422869 TEST=Verified on linux_chromeos. Review URL: https://codereview.chromium.org/676593004 Cr-Commit-Position: refs/heads/master@{#300892}
Diffstat (limited to 'chromeos/ime')
-rw-r--r--chromeos/ime/component_extension_ime_manager.cc7
1 files changed, 7 insertions, 0 deletions
diff --git a/chromeos/ime/component_extension_ime_manager.cc b/chromeos/ime/component_extension_ime_manager.cc
index a83c6c4..9a8cce1 100644
--- a/chromeos/ime/component_extension_ime_manager.cc
+++ b/chromeos/ime/component_extension_ime_manager.cc
@@ -4,8 +4,10 @@
#include "chromeos/ime/component_extension_ime_manager.h"
+#include "base/command_line.h"
#include "base/logging.h"
#include "base/strings/string_util.h"
+#include "chromeos/chromeos_switches.h"
#include "chromeos/ime/extension_ime_util.h"
namespace chromeos {
@@ -141,6 +143,8 @@ bool ComponentExtensionIMEManager::IsWhitelistedExtension(
input_method::InputMethodDescriptors
ComponentExtensionIMEManager::GetAllIMEAsInputMethodDescriptor() {
+ bool enable_new_korean_ime = CommandLine::ForCurrentProcess()->HasSwitch(
+ switches::kEnableNewKoreanIme);
input_method::InputMethodDescriptors result;
for (std::map<std::string, ComponentExtensionIME>::const_iterator it =
component_extension_imes_.begin();
@@ -148,6 +152,9 @@ input_method::InputMethodDescriptors
const ComponentExtensionIME& ext = it->second;
for (size_t j = 0; j < ext.engines.size(); ++j) {
const ComponentExtensionEngine& ime = ext.engines[j];
+ // Filter out new Korean IME if the experimental flag is OFF.
+ if (!enable_new_korean_ime && ime.engine_id == "ko-t-i0-und")
+ continue;
const std::string input_method_id =
extension_ime_util::GetComponentInputMethodID(
ext.id, ime.engine_id);