| OLD | NEW | 
|---|
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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/window_manager.h" | 5 #include "ash/mus/window_manager.h" | 
| 6 | 6 | 
| 7 #include <stdint.h> | 7 #include <stdint.h> | 
| 8 | 8 | 
| 9 #include <utility> | 9 #include <utility> | 
| 10 | 10 | 
| 11 #include "ash/common/shell_window_ids.h" | 11 #include "ash/common/shell_window_ids.h" | 
| 12 #include "ash/mus/accelerators/accelerator_handler.h" | 12 #include "ash/mus/accelerators/accelerator_handler.h" | 
| 13 #include "ash/mus/accelerators/accelerator_ids.h" | 13 #include "ash/mus/accelerators/accelerator_ids.h" | 
| 14 #include "ash/mus/bridge/wm_lookup_mus.h" | 14 #include "ash/mus/bridge/wm_lookup_mus.h" | 
| 15 #include "ash/mus/bridge/wm_shell_mus.h" | 15 #include "ash/mus/bridge/wm_shell_mus.h" | 
| 16 #include "ash/mus/bridge/wm_window_mus.h" | 16 #include "ash/mus/bridge/wm_window_mus.h" | 
| 17 #include "ash/mus/move_event_handler.h" | 17 #include "ash/mus/move_event_handler.h" | 
|  | 18 #include "ash/mus/native_widget_factory_mus.h" | 
| 18 #include "ash/mus/non_client_frame_controller.h" | 19 #include "ash/mus/non_client_frame_controller.h" | 
| 19 #include "ash/mus/property_util.h" | 20 #include "ash/mus/property_util.h" | 
| 20 #include "ash/mus/root_window_controller.h" | 21 #include "ash/mus/root_window_controller.h" | 
| 21 #include "ash/mus/shadow_controller.h" | 22 #include "ash/mus/shadow_controller.h" | 
| 22 #include "ash/mus/shell_delegate_mus.h" | 23 #include "ash/mus/shell_delegate_mus.h" | 
| 23 #include "ash/mus/window_manager_observer.h" | 24 #include "ash/mus/window_manager_observer.h" | 
| 24 #include "ash/public/interfaces/container.mojom.h" | 25 #include "ash/public/interfaces/container.mojom.h" | 
| 25 #include "services/ui/common/event_matcher_util.h" | 26 #include "services/ui/common/event_matcher_util.h" | 
| 26 #include "services/ui/common/types.h" | 27 #include "services/ui/common/types.h" | 
| 27 #include "services/ui/public/cpp/property_type_converters.h" | 28 #include "services/ui/public/cpp/property_type_converters.h" | 
| (...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 96       NonClientFrameController::GetMaxTitleBarButtonWidth(); | 97       NonClientFrameController::GetMaxTitleBarButtonWidth(); | 
| 97   window_manager_client_->SetFrameDecorationValues( | 98   window_manager_client_->SetFrameDecorationValues( | 
| 98       std::move(frame_decoration_values)); | 99       std::move(frame_decoration_values)); | 
| 99 | 100 | 
| 100   std::unique_ptr<ShellDelegate> shell_delegate(new ShellDelegateMus( | 101   std::unique_ptr<ShellDelegate> shell_delegate(new ShellDelegateMus( | 
| 101       base::MakeUnique<AppListPresenterStub>(), connector_)); | 102       base::MakeUnique<AppListPresenterStub>(), connector_)); | 
| 102   shell_.reset(new WmShellMus(std::move(shell_delegate), this, | 103   shell_.reset(new WmShellMus(std::move(shell_delegate), this, | 
| 103                               pointer_watcher_event_router_.get())); | 104                               pointer_watcher_event_router_.get())); | 
| 104   shell_->Initialize(); | 105   shell_->Initialize(); | 
| 105   lookup_.reset(new WmLookupMus); | 106   lookup_.reset(new WmLookupMus); | 
|  | 107 | 
|  | 108   native_widget_factory_mus_.reset(new NativeWidgetFactoryMus(this)); | 
| 106 } | 109 } | 
| 107 | 110 | 
| 108 void WindowManager::SetScreenLocked(bool is_locked) { | 111 void WindowManager::SetScreenLocked(bool is_locked) { | 
| 109   // TODO: screen locked state needs to be persisted for newly added displays. | 112   // TODO: screen locked state needs to be persisted for newly added displays. | 
| 110   for (auto& root_window_controller : root_window_controllers_) { | 113   for (auto& root_window_controller : root_window_controllers_) { | 
| 111     WmWindowMus* non_lock_screen_containers_container = | 114     WmWindowMus* non_lock_screen_containers_container = | 
| 112         root_window_controller->GetWindowByShellWindowId( | 115         root_window_controller->GetWindowByShellWindowId( | 
| 113             kShellWindowId_NonLockScreenContainersContainer); | 116             kShellWindowId_NonLockScreenContainersContainer); | 
| 114     non_lock_screen_containers_container->mus_window()->SetVisible(!is_locked); | 117     non_lock_screen_containers_container->mus_window()->SetVisible(!is_locked); | 
| 115   } | 118   } | 
| (...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 212 void WindowManager::OnDidDestroyClient(ui::WindowTreeClient* client) { | 215 void WindowManager::OnDidDestroyClient(ui::WindowTreeClient* client) { | 
| 213   // Destroying the roots should result in removal from | 216   // Destroying the roots should result in removal from | 
| 214   // |root_window_controllers_|. | 217   // |root_window_controllers_|. | 
| 215   DCHECK(root_window_controllers_.empty()); | 218   DCHECK(root_window_controllers_.empty()); | 
| 216 | 219 | 
| 217   // Observers can rely on WmShell from the callback. So notify the observers | 220   // Observers can rely on WmShell from the callback. So notify the observers | 
| 218   // before destroying it. | 221   // before destroying it. | 
| 219   FOR_EACH_OBSERVER(WindowManagerObserver, observers_, | 222   FOR_EACH_OBSERVER(WindowManagerObserver, observers_, | 
| 220                     OnWindowTreeClientDestroyed()); | 223                     OnWindowTreeClientDestroyed()); | 
| 221 | 224 | 
|  | 225   native_widget_factory_mus_.reset(); | 
|  | 226 | 
| 222   lookup_.reset(); | 227   lookup_.reset(); | 
| 223   shell_->Shutdown(); | 228   shell_->Shutdown(); | 
| 224   shell_.reset(); | 229   shell_.reset(); | 
| 225   shadow_controller_.reset(); | 230   shadow_controller_.reset(); | 
| 226 | 231 | 
| 227   pointer_watcher_event_router_.reset(); | 232   pointer_watcher_event_router_.reset(); | 
| 228 | 233 | 
| 229   window_tree_client_ = nullptr; | 234   window_tree_client_ = nullptr; | 
| 230   window_manager_client_ = nullptr; | 235   window_manager_client_ = nullptr; | 
| 231 } | 236 } | 
| (...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 308                                                     const ui::Event& event) { | 313                                                     const ui::Event& event) { | 
| 309   auto iter = accelerator_handlers_.find(GetAcceleratorNamespaceId(id)); | 314   auto iter = accelerator_handlers_.find(GetAcceleratorNamespaceId(id)); | 
| 310   if (iter == accelerator_handlers_.end()) | 315   if (iter == accelerator_handlers_.end()) | 
| 311     return ui::mojom::EventResult::HANDLED; | 316     return ui::mojom::EventResult::HANDLED; | 
| 312 | 317 | 
| 313   return iter->second->OnAccelerator(id, event); | 318   return iter->second->OnAccelerator(id, event); | 
| 314 } | 319 } | 
| 315 | 320 | 
| 316 }  // namespace mus | 321 }  // namespace mus | 
| 317 }  // namespace ash | 322 }  // namespace ash | 
| OLD | NEW | 
|---|