Split ui/base/ime into a new component (reland with windows GN fix)
The IME code in ui/base/ime depends on ui/ozone to support keyboard
control (via the InputController interface). This dependency is
currently missing from the build.
Unfortunately, we cannot simply add this dependency, because ui/ozone
depends on code from ui/base/cursor and ui/base/resource
(for cursor bitmaps).
Break this cycle by componentizing ui/base/ime & add a dependency
from the new ui/base/ime component to ui/ozone.
This also helps clean things up a bit because iOS builds ui/base
but not ui/base/ime. So there is already a fault line here.
The handful of IME tests are left as part of ui_base_unittests.
BUG=445627
TEST=gn gen out_gn_ozone --args='os="chromeos" use_ozone=true is_component_build=true' &&
ninja -C out_gn_ozone chrome ozone_unittests (along with other needed changes)
TBR=jam
Committed: https://crrev.com/2321ca1b99c1a8e9a90e48a9cd50f6446a7e5e82
Cr-Commit-Position: refs/heads/master@{#314815}
Review URL: https://codereview.chromium.org/889323003
Cr-Commit-Position: refs/heads/master@{#314860}
diff --git a/extensions/shell/BUILD.gn b/extensions/shell/BUILD.gn
index a1d362a..a251765 100644
--- a/extensions/shell/BUILD.gn
+++ b/extensions/shell/BUILD.gn
@@ -50,6 +50,8 @@
"//skia",
"//third_party/WebKit/public:blink",
"//third_party/mojo/src/mojo/edk/system",
+ "//ui/base",
+ "//ui/base/ime",
"//ui/wm",
"//v8",
]