Chromium Code Reviews| Index: chrome/browser/browser_process_platform_part_chromeos.cc |
| diff --git a/chrome/browser/browser_process_platform_part_chromeos.cc b/chrome/browser/browser_process_platform_part_chromeos.cc |
| index 47e06b6dceb818b2afedada5bc444c716ded689a..9316aa15bef607a930256956d169e6f722608b3b 100644 |
| --- a/chrome/browser/browser_process_platform_part_chromeos.cc |
| +++ b/chrome/browser/browser_process_platform_part_chromeos.cc |
| @@ -44,6 +44,7 @@ |
| #include "services/service_manager/public/cpp/interface_provider.h" |
| #include "services/service_manager/public/cpp/service.h" |
| #include "services/ui/public/interfaces/constants.mojom.h" |
| +#include "services/ui/service.h" |
| #if defined(USE_OZONE) |
| #include "content/public/common/service_manager_connection.h" |
| @@ -129,6 +130,15 @@ class ChromeServiceChromeOS : public service_manager::Service, |
| DISALLOW_COPY_AND_ASSIGN(ChromeServiceChromeOS); |
| }; |
| +std::unique_ptr<service_manager::Service> CreateEmbeddedUIService( |
| + const scoped_refptr<base::SingleThreadTaskRunner>& task_runner, |
| + base::WeakPtr<ui::ImageCursorsSet> image_cursors_set_weak_ptr) { |
| + ui::Service::InProcessConfig config; |
| + config.resource_runner = task_runner; |
| + config.image_cursors_set_weak_ptr = image_cursors_set_weak_ptr; |
| + return base::MakeUnique<ui::Service>(&config); |
| +} |
| + |
| } // namespace |
| BrowserProcessPlatformPart::BrowserProcessPlatformPart() |
| @@ -268,11 +278,23 @@ void BrowserProcessPlatformPart::RegisterInProcessServices( |
| } |
| if (!ash_util::IsRunningInMash()) { |
| - service_manager::EmbeddedServiceInfo info; |
| - info.factory = base::Bind(&ash_util::CreateEmbeddedAshService, |
| - base::ThreadTaskRunnerHandle::Get()); |
| - info.task_runner = base::ThreadTaskRunnerHandle::Get(); |
| - services->insert(std::make_pair(ash::mojom::kServiceName, info)); |
| + { |
| + service_manager::EmbeddedServiceInfo info; |
| + info.factory = base::Bind(&ash_util::CreateEmbeddedAshService, |
| + base::ThreadTaskRunnerHandle::Get()); |
| + info.task_runner = base::ThreadTaskRunnerHandle::Get(); |
| + services->insert(std::make_pair(ash::mojom::kServiceName, info)); |
| + } |
| + { |
| + service_manager::EmbeddedServiceInfo info; |
|
sky
2017/07/13 17:23:22
Don't you only want to do this part for mus (not c
mfomitchev
2017/07/13 18:06:36
Good catch! Done.
|
| + info.factory = base::Bind(&CreateEmbeddedUIService, |
| + base::ThreadTaskRunnerHandle::Get(), |
| + image_cursors_set_.GetWeakPtr()); |
| + info.use_own_thread = true; |
| + info.message_loop_type = base::MessageLoop::TYPE_UI; |
| + info.thread_priority = base::ThreadPriority::DISPLAY; |
| + services->insert(std::make_pair(ui::mojom::kServiceName, info)); |
| + } |
| } |
| } |