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

Side by Side Diff: components/exo/wm_helper_ash.cc

Issue 2645663004: exo: Initial support for multiple displays in ARC (Closed)
Patch Set: Address nits Created 3 years, 9 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 | « components/exo/wm_helper_ash.h ('k') | no next file » | 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 "components/exo/wm_helper_ash.h" 5 #include "components/exo/wm_helper_ash.h"
6 6
7 #include "ash/common/accessibility_delegate.h" 7 #include "ash/common/accessibility_delegate.h"
8 #include "ash/common/system/tray/system_tray_notifier.h" 8 #include "ash/common/system/tray/system_tray_notifier.h"
9 #include "ash/common/wm/maximize_mode/maximize_mode_controller.h" 9 #include "ash/common/wm/maximize_mode/maximize_mode_controller.h"
10 #include "ash/common/wm_shell.h" 10 #include "ash/common/wm_shell.h"
11 #include "ash/shell.h" 11 #include "ash/shell.h"
12 #include "base/memory/singleton.h" 12 #include "base/memory/singleton.h"
13 #include "ui/aura/client/focus_client.h" 13 #include "ui/aura/client/focus_client.h"
14 #include "ui/display/manager/display_manager.h" 14 #include "ui/display/manager/display_manager.h"
15 #include "ui/events/devices/device_data_manager.h" 15 #include "ui/events/devices/device_data_manager.h"
16 #include "ui/wm/public/activation_client.h" 16 #include "ui/wm/public/activation_client.h"
17 17
18 namespace exo { 18 namespace exo {
19 19
20 //////////////////////////////////////////////////////////////////////////////// 20 ////////////////////////////////////////////////////////////////////////////////
21 // WMHelperAsh, public: 21 // WMHelperAsh, public:
22 22
23 WMHelperAsh::WMHelperAsh() { 23 WMHelperAsh::WMHelperAsh() {
24 ash::Shell::GetInstance()->AddShellObserver(this); 24 ash::Shell::GetInstance()->AddShellObserver(this);
25 ash::Shell::GetInstance()->activation_client()->AddObserver(this); 25 ash::Shell::GetInstance()->activation_client()->AddObserver(this);
26 ash::Shell::GetInstance()->window_tree_host_manager()->AddObserver(this);
26 aura::client::FocusClient* focus_client = 27 aura::client::FocusClient* focus_client =
27 aura::client::GetFocusClient(ash::Shell::GetPrimaryRootWindow()); 28 aura::client::GetFocusClient(ash::Shell::GetPrimaryRootWindow());
28 focus_client->AddObserver(this); 29 focus_client->AddObserver(this);
29 ui::DeviceDataManager::GetInstance()->AddObserver(this); 30 ui::DeviceDataManager::GetInstance()->AddObserver(this);
30 ash::WmShell::Get()->system_tray_notifier()->AddAccessibilityObserver(this); 31 ash::WmShell::Get()->system_tray_notifier()->AddAccessibilityObserver(this);
31 } 32 }
32 33
33 WMHelperAsh::~WMHelperAsh() { 34 WMHelperAsh::~WMHelperAsh() {
34 if (!ash::Shell::HasInstance()) 35 if (!ash::Shell::HasInstance())
35 return; 36 return;
36 aura::client::FocusClient* focus_client = 37 aura::client::FocusClient* focus_client =
37 aura::client::GetFocusClient(ash::Shell::GetPrimaryRootWindow()); 38 aura::client::GetFocusClient(ash::Shell::GetPrimaryRootWindow());
38 focus_client->RemoveObserver(this); 39 focus_client->RemoveObserver(this);
40 ash::Shell::GetInstance()->window_tree_host_manager()->RemoveObserver(this);
39 ash::Shell::GetInstance()->activation_client()->RemoveObserver(this); 41 ash::Shell::GetInstance()->activation_client()->RemoveObserver(this);
40 ash::Shell::GetInstance()->RemoveShellObserver(this); 42 ash::Shell::GetInstance()->RemoveShellObserver(this);
41 ui::DeviceDataManager::GetInstance()->RemoveObserver(this); 43 ui::DeviceDataManager::GetInstance()->RemoveObserver(this);
42 ash::WmShell::Get()->system_tray_notifier()->RemoveAccessibilityObserver( 44 ash::WmShell::Get()->system_tray_notifier()->RemoveAccessibilityObserver(
43 this); 45 this);
44 } 46 }
45 47
46 //////////////////////////////////////////////////////////////////////////////// 48 ////////////////////////////////////////////////////////////////////////////////
47 // WMHelperAsh, private: 49 // WMHelperAsh, private:
48 50
(...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after
138 } 140 }
139 141
140 void WMHelperAsh::OnMaximizeModeEnding() { 142 void WMHelperAsh::OnMaximizeModeEnding() {
141 NotifyMaximizeModeEnding(); 143 NotifyMaximizeModeEnding();
142 } 144 }
143 145
144 void WMHelperAsh::OnMaximizeModeEnded() { 146 void WMHelperAsh::OnMaximizeModeEnded() {
145 NotifyMaximizeModeEnded(); 147 NotifyMaximizeModeEnded();
146 } 148 }
147 149
150 void WMHelperAsh::OnDisplayConfigurationChanged() {
151 NotifyDisplayConfigurationChanged();
152 }
153
148 void WMHelperAsh::OnKeyboardDeviceConfigurationChanged() { 154 void WMHelperAsh::OnKeyboardDeviceConfigurationChanged() {
149 NotifyKeyboardDeviceConfigurationChanged(); 155 NotifyKeyboardDeviceConfigurationChanged();
150 } 156 }
151 157
152 } // namespace exo 158 } // namespace exo
OLDNEW
« no previous file with comments | « components/exo/wm_helper_ash.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698