| 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 297acf41300b19fcbbcae384d2f4a9ec056dbfe4..84c449423a2af8bdc21c13948c8bfa8ad21df988 100644
|
| --- a/chrome/browser/chromeos/chrome_interface_factory.cc
|
| +++ b/chrome/browser/chromeos/chrome_interface_factory.cc
|
| @@ -14,6 +14,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_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"
|
| @@ -27,6 +28,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"
|
| @@ -123,6 +125,13 @@ class FactoryImpl {
|
| std::move(request));
|
| }
|
|
|
| + void BindRequest(prefs::mojom::PreferencesManagerRequest request) {
|
| + if (!preferences_manager_)
|
| + preferences_manager_ = base::MakeUnique<chrome::PreferencesManager>();
|
| + preferences_manager_bindings_.AddBinding(preferences_manager_.get(),
|
| + std::move(request));
|
| + }
|
| +
|
| void BindRequest(ash::mojom::SystemTrayClientRequest request) {
|
| system_tray_client_bindings_.AddBinding(SystemTrayClient::Get(),
|
| std::move(request));
|
| @@ -153,6 +162,9 @@ 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::PreferencesManager> preferences_manager_;
|
| + mojo::BindingSet<prefs::mojom::PreferencesManager>
|
| + preferences_manager_bindings_;
|
| std::unique_ptr<VolumeController> volume_controller_;
|
| std::unique_ptr<AppListPresenterService> app_list_presenter_service_;
|
| mojo::BindingSet<app_list::mojom::AppListPresenter>
|
| @@ -181,6 +193,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>(
|
|
|