diff options
Diffstat (limited to 'chromium/ui/base/ime/init')
-rw-r--r-- | chromium/ui/base/ime/init/BUILD.gn | 3 | ||||
-rw-r--r-- | chromium/ui/base/ime/init/input_method_factory.cc | 28 | ||||
-rw-r--r-- | chromium/ui/base/ime/init/input_method_initializer.cc | 6 |
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" |