| Index: ash/mus/accelerators/accelerator_controller_delegate_mus.cc
|
| diff --git a/ash/mus/accelerators/accelerator_controller_delegate_mus.cc b/ash/mus/accelerators/accelerator_controller_delegate_mus.cc
|
| index 39a7f232081c991b5dac2ae482a10f303c504e48..7abd2f5e11e09173f68693d09b44a8dc9b130dcf 100644
|
| --- a/ash/mus/accelerators/accelerator_controller_delegate_mus.cc
|
| +++ b/ash/mus/accelerators/accelerator_controller_delegate_mus.cc
|
| @@ -4,8 +4,10 @@
|
|
|
| #include "ash/mus/accelerators/accelerator_controller_delegate_mus.h"
|
|
|
| +#include "ash/mus/window_manager.h"
|
| #include "base/logging.h"
|
| #include "mash/public/interfaces/launchable.mojom.h"
|
| +#include "services/service_manager/public/cpp/connector.h"
|
| #include "services/ui/public/interfaces/display/display_controller.mojom.h"
|
| #include "services/ui/public/interfaces/display/test_display_controller.mojom.h"
|
|
|
| @@ -13,12 +15,12 @@ namespace ash {
|
| namespace mus {
|
|
|
| AcceleratorControllerDelegateMus::AcceleratorControllerDelegateMus(
|
| - service_manager::Connector* connector)
|
| - : connector_(connector) {
|
| + WindowManager* window_manager)
|
| + : window_manager_(window_manager) {
|
| #if !defined(OS_CHROMEOS)
|
| - // To avoid trybot complaining that |connector_| is not being
|
| - // used in non-ChromeOS.
|
| - connector_ = nullptr;
|
| + // To avoid trybot complaining that |window_manager_| is not being used in
|
| + // non-ChromeOS.
|
| + window_manager_ = nullptr;
|
| #endif
|
| }
|
|
|
| @@ -53,10 +55,10 @@ bool AcceleratorControllerDelegateMus::HandlesAction(AcceleratorAction action) {
|
|
|
| #if defined(OS_CHROMEOS)
|
| case DEV_ADD_REMOVE_DISPLAY:
|
| + case DEV_TOGGLE_UNIFIED_DESKTOP:
|
| case SWAP_PRIMARY_DISPLAY:
|
| case TOUCH_HUD_PROJECTION_TOGGLE:
|
| return true;
|
| - case DEV_TOGGLE_UNIFIED_DESKTOP:
|
| case LOCK_PRESSED:
|
| case LOCK_RELEASED:
|
| case POWER_PRESSED:
|
| @@ -81,6 +83,7 @@ bool AcceleratorControllerDelegateMus::CanPerformAction(
|
| #if defined(OS_CHROMEOS)
|
| switch (action) {
|
| case DEV_ADD_REMOVE_DISPLAY:
|
| + case DEV_TOGGLE_UNIFIED_DESKTOP:
|
| case SWAP_PRIMARY_DISPLAY:
|
| case TOUCH_HUD_PROJECTION_TOGGLE:
|
| return true;
|
| @@ -98,19 +101,28 @@ void AcceleratorControllerDelegateMus::PerformAction(
|
| switch (action) {
|
| case DEV_ADD_REMOVE_DISPLAY: {
|
| display::mojom::TestDisplayControllerPtr test_display_controller;
|
| - connector_->ConnectToInterface("service:ui", &test_display_controller);
|
| + window_manager_->connector()->ConnectToInterface(
|
| + "service:ui", &test_display_controller);
|
| test_display_controller->ToggleAddRemoveDisplay();
|
| break;
|
| }
|
| + case DEV_TOGGLE_UNIFIED_DESKTOP: {
|
| + // TODO(crbug.com/657816): This is hack. I'm just stealing the shortcut
|
| + // key to toggle display size in mus. This should be removed by launch.
|
| + display::mojom::TestDisplayControllerPtr test_display_controller;
|
| + window_manager_->connector()->ConnectToInterface(
|
| + "service:ui", &test_display_controller);
|
| + test_display_controller->ToggleDisplayResolution();
|
| + break;
|
| + }
|
| case SWAP_PRIMARY_DISPLAY: {
|
| - display::mojom::DisplayControllerPtr display_controller;
|
| - connector_->ConnectToInterface("service:ui", &display_controller);
|
| - display_controller->SwapPrimaryDisplay();
|
| + window_manager_->GetDisplayController()->SwapPrimaryDisplay();
|
| break;
|
| }
|
| case TOUCH_HUD_PROJECTION_TOGGLE: {
|
| mash::mojom::LaunchablePtr launchable;
|
| - connector_->ConnectToInterface("service:touch_hud", &launchable);
|
| + window_manager_->connector()->ConnectToInterface("service:touch_hud",
|
| + &launchable);
|
| launchable->Launch(mash::mojom::kWindow,
|
| mash::mojom::LaunchMode::DEFAULT);
|
| break;
|
|
|