summaryrefslogtreecommitdiff
path: root/chromium/ui/base/ime/init
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/ui/base/ime/init')
-rw-r--r--chromium/ui/base/ime/init/BUILD.gn3
-rw-r--r--chromium/ui/base/ime/init/input_method_factory.cc28
-rw-r--r--chromium/ui/base/ime/init/input_method_initializer.cc6
3 files changed, 28 insertions, 9 deletions
diff --git a/chromium/ui/base/ime/init/BUILD.gn b/chromium/ui/base/ime/init/BUILD.gn
index 0aad80f4551..26e7a60f901 100644
--- a/chromium/ui/base/ime/init/BUILD.gn
+++ b/chromium/ui/base/ime/init/BUILD.gn
@@ -31,6 +31,9 @@ jumbo_component("init") {
if (is_mac) {
deps += [ "//ui/base/ime/mac" ]
}
+ if (is_chromeos) {
+ deps += [ "//ui/base/ime/chromeos" ]
+ }
if (is_linux && !is_chromeos) {
deps += [ "//ui/base/ime/linux" ]
}
diff --git a/chromium/ui/base/ime/init/input_method_factory.cc b/chromium/ui/base/ime/init/input_method_factory.cc
index 5e98636a36c..d923c6b2331 100644
--- a/chromium/ui/base/ime/init/input_method_factory.cc
+++ b/chromium/ui/base/ime/init/input_method_factory.cc
@@ -5,6 +5,7 @@
#include "ui/base/ime/init/input_method_factory.h"
#include "base/command_line.h"
+#include "base/logging.h"
#include "base/memory/ptr_util.h"
#include "base/win/windows_version.h"
#include "build/build_config.h"
@@ -17,10 +18,15 @@
#include "ui/base/ime/win/input_method_win_tsf.h"
#elif defined(OS_MACOSX)
#include "ui/base/ime/mac/input_method_mac.h"
-#elif defined(USE_X11)
-#include "ui/base/ime/linux/input_method_auralinux.h"
-#elif defined(USE_OZONE)
+#elif defined(USE_X11) || defined(USE_OZONE)
+#if defined(USE_X11)
+// TODO(crbug.com/1085700): Remove nogncheck when we can build both Ozone
+// Wayland and X11 on Linux codesearch-gen bots.
+#include "ui/base/ime/linux/input_method_auralinux.h" // nogncheck
+#endif // defined(USE_X11)
+#if defined(USE_OZONE)
#include "ui/ozone/public/ozone_platform.h"
+#endif // defined(USE_OZONE)
#else
#include "ui/base/ime/input_method_minimal.h"
#endif
@@ -63,10 +69,18 @@ std::unique_ptr<InputMethod> CreateInputMethod(
return std::make_unique<InputMethodWinImm32>(delegate, widget);
#elif defined(OS_MACOSX)
return std::make_unique<InputMethodMac>(delegate);
-#elif defined(USE_X11)
- return std::make_unique<InputMethodAuraLinux>(delegate);
-#elif defined(USE_OZONE)
- return ui::OzonePlatform::GetInstance()->CreateInputMethod(delegate, widget);
+#elif defined(USE_X11) || defined(USE_OZONE)
+#if defined(USE_OZONE)
+ if (features::IsUsingOzonePlatform()) {
+ return ui::OzonePlatform::GetInstance()->CreateInputMethod(delegate,
+ widget);
+ }
+#endif // defined(USE_OZONE)
+#if defined(USE_X11)
+ return std::make_unique<ui::InputMethodAuraLinux>(delegate);
+#endif // defined(USE_X11)
+ NOTREACHED();
+ return nullptr;
#else
return std::make_unique<InputMethodMinimal>(delegate);
#endif
diff --git a/chromium/ui/base/ime/init/input_method_initializer.cc b/chromium/ui/base/ime/init/input_method_initializer.cc
index 1a453109dbc..1bfc48a8005 100644
--- a/chromium/ui/base/ime/init/input_method_initializer.cc
+++ b/chromium/ui/base/ime/init/input_method_initializer.cc
@@ -9,10 +9,12 @@
#include "build/build_config.h"
#if defined(OS_CHROMEOS)
-#include "ui/base/ime/ime_bridge.h"
+#include "ui/base/ime/chromeos/ime_bridge.h"
#elif defined(USE_AURA) && defined(OS_LINUX)
#include "base/check.h"
-#include "ui/base/ime/linux/fake_input_method_context_factory.h"
+// TODO(crbug.com/1085700): Remove nogncheck when we can build both Ozone
+// Wayland and X11 on Linux codesearch-gen bots.
+#include "ui/base/ime/linux/fake_input_method_context_factory.h" // nogncheck
#elif defined(OS_WIN)
#include "ui/base/ime/init/input_method_factory.h"
#include "ui/base/ime/win/tsf_bridge.h"