Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(216)

Side by Side Diff: ash/mus/accelerators/accelerator_controller_delegate_mus.cc

Issue 2415163002: Expand and split DisplayController mojom. (Closed)
Patch Set: Actually fix case statements. Created 4 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | services/ui/display/platform_screen_ozone.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "ash/mus/accelerators/accelerator_controller_delegate_mus.h" 5 #include "ash/mus/accelerators/accelerator_controller_delegate_mus.h"
6 6
7 #include "base/logging.h" 7 #include "base/logging.h"
8 #include "mash/public/interfaces/launchable.mojom.h" 8 #include "mash/public/interfaces/launchable.mojom.h"
9 #include "services/ui/public/interfaces/display/display_controller.mojom.h" 9 #include "services/ui/public/interfaces/display/display_controller.mojom.h"
10 #include "services/ui/public/interfaces/display/test_display_controller.mojom.h"
10 11
11 namespace ash { 12 namespace ash {
12 namespace mus { 13 namespace mus {
13 14
14 AcceleratorControllerDelegateMus::AcceleratorControllerDelegateMus( 15 AcceleratorControllerDelegateMus::AcceleratorControllerDelegateMus(
15 service_manager::Connector* connector) 16 service_manager::Connector* connector)
16 : connector_(connector) { 17 : connector_(connector) {
17 #if !defined(OS_CHROMEOS) 18 #if !defined(OS_CHROMEOS)
18 // To avoid trybot complaining that |connector_| is not being 19 // To avoid trybot complaining that |connector_| is not being
19 // used in non-ChromeOS. 20 // used in non-ChromeOS.
(...skipping 24 matching lines...) Expand all
44 case SCALE_UI_UP: 45 case SCALE_UI_UP:
45 case SHOW_SYSTEM_TRAY_BUBBLE: 46 case SHOW_SYSTEM_TRAY_BUBBLE:
46 case TAKE_PARTIAL_SCREENSHOT: 47 case TAKE_PARTIAL_SCREENSHOT:
47 case TAKE_SCREENSHOT: 48 case TAKE_SCREENSHOT:
48 case TAKE_WINDOW_SCREENSHOT: 49 case TAKE_WINDOW_SCREENSHOT:
49 case UNPIN: 50 case UNPIN:
50 NOTIMPLEMENTED(); 51 NOTIMPLEMENTED();
51 return false; 52 return false;
52 53
53 #if defined(OS_CHROMEOS) 54 #if defined(OS_CHROMEOS)
54 case DEV_ADD_REMOVE_DISPLAY: { 55 case DEV_ADD_REMOVE_DISPLAY:
55 display::mojom::DisplayControllerPtr display_controller; 56 case SWAP_PRIMARY_DISPLAY:
56 connector_->ConnectToInterface("service:ui", &display_controller); 57 case TOUCH_HUD_PROJECTION_TOGGLE:
57 display_controller->ToggleVirtualDisplay();
58 return true; 58 return true;
59 }
60 case DEV_TOGGLE_UNIFIED_DESKTOP: 59 case DEV_TOGGLE_UNIFIED_DESKTOP:
61 case LOCK_PRESSED: 60 case LOCK_PRESSED:
62 case LOCK_RELEASED: 61 case LOCK_RELEASED:
63 case POWER_PRESSED: 62 case POWER_PRESSED:
64 case POWER_RELEASED: 63 case POWER_RELEASED:
65 case SWAP_PRIMARY_DISPLAY:
66 case TOGGLE_MIRROR_MODE: 64 case TOGGLE_MIRROR_MODE:
67 case TOUCH_HUD_CLEAR: 65 case TOUCH_HUD_CLEAR:
68 case TOUCH_HUD_MODE_CHANGE: 66 case TOUCH_HUD_MODE_CHANGE:
69 NOTIMPLEMENTED(); 67 NOTIMPLEMENTED();
70 return false; 68 return false;
71 case TOUCH_HUD_PROJECTION_TOGGLE: {
72 mash::mojom::LaunchablePtr launchable;
73 connector_->ConnectToInterface("service:touch_hud", &launchable);
74 launchable->Launch(mash::mojom::kWindow,
75 mash::mojom::LaunchMode::DEFAULT);
76 return true;
77 }
78 #endif 69 #endif
79 70
80 default: 71 default:
81 break; 72 break;
82 } 73 }
83 return false; 74 return false;
84 } 75 }
85 76
86 bool AcceleratorControllerDelegateMus::CanPerformAction( 77 bool AcceleratorControllerDelegateMus::CanPerformAction(
87 AcceleratorAction action, 78 AcceleratorAction action,
88 const ui::Accelerator& accelerator, 79 const ui::Accelerator& accelerator,
89 const ui::Accelerator& previous_accelerator) { 80 const ui::Accelerator& previous_accelerator) {
81 #if defined(OS_CHROMEOS)
82 switch (action) {
83 case DEV_ADD_REMOVE_DISPLAY:
84 case SWAP_PRIMARY_DISPLAY:
85 case TOUCH_HUD_PROJECTION_TOGGLE:
86 return true;
87 default:
88 break;
89 }
90 #endif
90 return false; 91 return false;
91 } 92 }
92 93
93 void AcceleratorControllerDelegateMus::PerformAction( 94 void AcceleratorControllerDelegateMus::PerformAction(
94 AcceleratorAction action, 95 AcceleratorAction action,
95 const ui::Accelerator& accelerator) { 96 const ui::Accelerator& accelerator) {
96 // Should never be hit as HandlesAction() unconditionally returns false. 97 #if defined(OS_CHROMEOS)
98 switch (action) {
99 case DEV_ADD_REMOVE_DISPLAY: {
100 display::mojom::TestDisplayControllerPtr test_display_controller;
101 connector_->ConnectToInterface("service:ui", &test_display_controller);
102 test_display_controller->ToggleAddRemoveDisplay();
103 break;
104 }
105 case SWAP_PRIMARY_DISPLAY: {
106 display::mojom::DisplayControllerPtr display_controller;
107 connector_->ConnectToInterface("service:ui", &display_controller);
108 display_controller->SwapPrimaryDisplay();
109 break;
110 }
111 case TOUCH_HUD_PROJECTION_TOGGLE: {
112 mash::mojom::LaunchablePtr launchable;
113 connector_->ConnectToInterface("service:touch_hud", &launchable);
114 launchable->Launch(mash::mojom::kWindow,
115 mash::mojom::LaunchMode::DEFAULT);
116 break;
117 }
118 default:
119 NOTREACHED();
120 }
121 #else
97 NOTREACHED(); 122 NOTREACHED();
123 #endif
98 } 124 }
99 125
100 void AcceleratorControllerDelegateMus::ShowDeprecatedAcceleratorNotification( 126 void AcceleratorControllerDelegateMus::ShowDeprecatedAcceleratorNotification(
101 const char* const notification_id, 127 const char* const notification_id,
102 int message_id, 128 int message_id,
103 int old_shortcut_id, 129 int old_shortcut_id,
104 int new_shortcut_id) { 130 int new_shortcut_id) {
105 // TODO: http://crbug.com/630316. 131 // TODO: http://crbug.com/630316.
106 NOTIMPLEMENTED(); 132 NOTIMPLEMENTED();
107 } 133 }
108 134
109 } // namespace mus 135 } // namespace mus
110 } // namespace ash 136 } // namespace ash
OLDNEW
« no previous file with comments | « no previous file | services/ui/display/platform_screen_ozone.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698