| 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 723b678f0936c9ebc07269db602ad0d3050a005f..f3b72dfa1481e265faa270fd0fbd112418ba6a8a 100644
|
| --- a/chrome/browser/chromeos/chrome_interface_factory.cc
|
| +++ b/chrome/browser/chromeos/chrome_interface_factory.cc
|
| @@ -7,6 +7,7 @@
|
| #include <memory>
|
|
|
| #include "ash/common/mojo_interface_factory.h"
|
| +#include "ash/public/interfaces/new_window.mojom.h"
|
| #include "base/lazy_instance.h"
|
| #include "base/memory/weak_ptr.h"
|
| #include "base/threading/thread_checker.h"
|
| @@ -16,6 +17,7 @@
|
| #include "chrome/browser/profiles/profile_manager.h"
|
| #include "chrome/browser/ui/ash/app_list/app_list_presenter_service.h"
|
| #include "chrome/browser/ui/ash/ash_util.h"
|
| +#include "chrome/browser/ui/ash/chrome_new_window_client.h"
|
| #include "chrome/browser/ui/ash/keyboard_ui_service.h"
|
| #include "chrome/browser/ui/ash/system_tray_client.h"
|
| #include "chrome/browser/ui/browser_commands.h"
|
| @@ -112,6 +114,13 @@ class FactoryImpl {
|
| launchable_->ProcessRequest(std::move(request));
|
| }
|
|
|
| + void BindRequest(ash::mojom::NewWindowClientRequest request) {
|
| + if (!new_window_client_)
|
| + new_window_client_.reset(new ChromeNewWindowClient);
|
| + new_window_client_bindings_.AddBinding(new_window_client_.get(),
|
| + std::move(request));
|
| + }
|
| +
|
| void BindRequest(ash::mojom::SystemTrayClientRequest request) {
|
| system_tray_client_bindings_.AddBinding(SystemTrayClient::Get(),
|
| std::move(request));
|
| @@ -133,6 +142,8 @@ class FactoryImpl {
|
| std::unique_ptr<KeyboardUIService> keyboard_ui_service_;
|
| mojo::BindingSet<keyboard::mojom::Keyboard> keyboard_bindings_;
|
| std::unique_ptr<ChromeLaunchable> launchable_;
|
| + 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<AppListPresenterService> app_list_presenter_service_;
|
| mojo::BindingSet<app_list::mojom::AppListPresenter>
|
| @@ -159,6 +170,8 @@ bool ChromeInterfaceFactory::OnConnect(
|
| main_thread_task_runner_);
|
| FactoryImpl::AddFactory<mash::mojom::Launchable>(registry,
|
| main_thread_task_runner_);
|
| + FactoryImpl::AddFactory<ash::mojom::NewWindowClient>(
|
| + registry, main_thread_task_runner_);
|
| FactoryImpl::AddFactory<ash::mojom::SystemTrayClient>(
|
| registry, main_thread_task_runner_);
|
| FactoryImpl::AddFactory<ash::mojom::WallpaperManager>(
|
|
|