| Index: chrome/browser/chromeos/chrome_interface_factory.cc
|
| diff --git a/chrome/browser/chromeos/chrome_interface_factory.cc b/chrome/browser/chromeos/chrome_interface_factory.cc
|
| index 1c9a68da3932298b3efc3a96dd0eddebd28d1934..38a0e7ef821c59502a5789c407e74caf941b1934 100644
|
| --- a/chrome/browser/chromeos/chrome_interface_factory.cc
|
| +++ b/chrome/browser/chromeos/chrome_interface_factory.cc
|
| @@ -16,6 +16,7 @@
|
| #include "base/threading/thread_checker.h"
|
| #include "base/threading/thread_task_runner_handle.h"
|
| #include "chrome/browser/chromeos/login/users/wallpaper/wallpaper_manager.h"
|
| +#include "chrome/browser/prefs/preferences_connection_manager.h"
|
| #include "chrome/browser/profiles/profile.h"
|
| #include "chrome/browser/profiles/profile_manager.h"
|
| #include "chrome/browser/ui/ash/app_list/app_list_presenter_service.h"
|
| @@ -29,6 +30,7 @@
|
| #include "content/public/common/service_manager_connection.h"
|
| #include "mash/public/interfaces/launchable.mojom.h"
|
| #include "mojo/public/cpp/bindings/binding_set.h"
|
| +#include "services/preferences/public/interfaces/preferences.mojom.h"
|
| #include "services/service_manager/public/cpp/connection.h"
|
| #include "services/service_manager/public/cpp/interface_registry.h"
|
| #include "ui/app_list/presenter/app_list_presenter.mojom.h"
|
| @@ -125,6 +127,13 @@ class FactoryImpl {
|
| std::move(request));
|
| }
|
|
|
| + void BindRequest(prefs::mojom::PreferencesManagerRequest request) {
|
| + if (!preferences_connection_manager_)
|
| + preferences_connection_manager_ =
|
| + base::MakeUnique<chrome::PreferencesConnectionManager>();
|
| + preferences_connection_manager_->ProcessRequest(std::move(request));
|
| + }
|
| +
|
| void BindRequest(ash::mojom::SystemTrayClientRequest request) {
|
| system_tray_client_bindings_.AddBinding(SystemTrayClient::Get(),
|
| std::move(request));
|
| @@ -155,6 +164,8 @@ class FactoryImpl {
|
| std::unique_ptr<ChromeNewWindowClient> new_window_client_;
|
| mojo::BindingSet<ash::mojom::NewWindowClient> new_window_client_bindings_;
|
| mojo::BindingSet<ash::mojom::SystemTrayClient> system_tray_client_bindings_;
|
| + std::unique_ptr<chrome::PreferencesConnectionManager>
|
| + preferences_connection_manager_;
|
| std::unique_ptr<VolumeController> volume_controller_;
|
| std::unique_ptr<AppListPresenterService> app_list_presenter_service_;
|
| mojo::BindingSet<app_list::mojom::AppListPresenter>
|
| @@ -186,6 +197,8 @@ bool ChromeInterfaceFactory::OnConnect(
|
| main_thread_task_runner_);
|
| FactoryImpl::AddFactory<ash::mojom::NewWindowClient>(
|
| registry, main_thread_task_runner_);
|
| + FactoryImpl::AddFactory<prefs::mojom::PreferencesManager>(
|
| + registry, main_thread_task_runner_);
|
| FactoryImpl::AddFactory<ash::mojom::SystemTrayClient>(
|
| registry, main_thread_task_runner_);
|
| FactoryImpl::AddFactory<ash::mojom::VolumeController>(
|
|
|