| Index: content/shell/browser/shell_content_browser_client.cc
|
| diff --git a/content/shell/browser/shell_content_browser_client.cc b/content/shell/browser/shell_content_browser_client.cc
|
| index 76c9a718fc47b5fc423246dbdebf9c986659fafb..534431d0d60863feb3c58ca0999e50b4ed603f1d 100644
|
| --- a/content/shell/browser/shell_content_browser_client.cc
|
| +++ b/content/shell/browser/shell_content_browser_client.cc
|
| @@ -48,6 +48,9 @@
|
| #include "base/android/path_utils.h"
|
| #include "components/crash/content/browser/crash_dump_manager_android.h"
|
| #include "content/shell/android/shell_descriptors.h"
|
| +#include "services/tracing/service.h"
|
| +#include "services/ui/ime/test_ime_driver/test_ime_application.h"
|
| +#include "services/ui/service.h"
|
| #endif
|
|
|
| #if defined(OS_POSIX) && !defined(OS_MACOSX)
|
| @@ -121,6 +124,28 @@ int GetCrashSignalFD(const base::CommandLine& command_line) {
|
| }
|
| #endif // defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID)
|
|
|
| +#if defined(OS_ANDROID)
|
| +
|
| +// Factory methods to create embedded services.
|
| +
|
| +std::unique_ptr<service_manager::Service> CreateMojoUIApplication(
|
| + const base::Closure& quit_closure) {
|
| + return std::unique_ptr<service_manager::Service>(new ui::Service());
|
| +}
|
| +
|
| +std::unique_ptr<service_manager::Service> CreateMojoTracingApplication(
|
| + const base::Closure& quit_closure) {
|
| + return std::unique_ptr<service_manager::Service>(new tracing::Service());
|
| +}
|
| +
|
| +std::unique_ptr<service_manager::Service> CreateMojoTestIMEApplication(
|
| + const base::Closure& quit_closure) {
|
| + return std::unique_ptr<service_manager::Service>(
|
| + new ui::test::TestIMEApplication());
|
| +}
|
| +
|
| +#endif // defined(OS_ANDROID)
|
| +
|
| } // namespace
|
|
|
| ShellContentBrowserClient* ShellContentBrowserClient::Get() {
|
| @@ -194,6 +219,22 @@ void ShellContentBrowserClient::RegisterInProcessServices(
|
| info.factory = base::Bind(&media::CreateMojoMediaApplication);
|
| services->insert(std::make_pair("service:media", info));
|
| #endif
|
| +#if defined(OS_ANDROID)
|
| + // Register Mus and the required services for the Mus demo to run.
|
| + content::ServiceInfo mus_info;
|
| + mus_info.factory = base::Bind(&CreateMojoUIApplication);
|
| + mus_info.service_owns_context = true;
|
| + services->insert(std::make_pair("service:ui", mus_info));
|
| +
|
| + content::ServiceInfo tracing_info;
|
| + tracing_info.factory = base::Bind(&CreateMojoTracingApplication);
|
| + services->insert(std::make_pair("mojo:tracing", tracing_info));
|
| +
|
| + content::ServiceInfo test_ime_info;
|
| + test_ime_info.factory = base::Bind(&CreateMojoTestIMEApplication);
|
| + test_ime_info.service_owns_context = true;
|
| + services->insert(std::make_pair("service:test_ime_driver", test_ime_info));
|
| +#endif
|
| }
|
|
|
| void ShellContentBrowserClient::RegisterOutOfProcessServices(
|
|
|