| OLD | NEW |
| 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/mus/ws/user_display_manager.h" | 5 #include "components/mus/ws/user_display_manager.h" |
| 6 | 6 |
| 7 #include "components/mus/ws/display.h" | 7 #include "components/mus/ws/display.h" |
| 8 #include "components/mus/ws/display_manager.h" | 8 #include "components/mus/ws/display_manager.h" |
| 9 #include "components/mus/ws/window_manager_state.h" | 9 #include "components/mus/ws/window_manager_state.h" |
| 10 #include "mojo/converters/geometry/geometry_type_converters.h" |
| 10 | 11 |
| 11 namespace mus { | 12 namespace mus { |
| 12 namespace ws { | 13 namespace ws { |
| 13 | 14 |
| 14 UserDisplayManager::UserDisplayManager(ws::DisplayManager* display_manager, | 15 UserDisplayManager::UserDisplayManager(ws::DisplayManager* display_manager, |
| 15 const UserId& user_id) | 16 const UserId& user_id) |
| 16 : display_manager_(display_manager), user_id_(user_id) { | 17 : display_manager_(display_manager), user_id_(user_id) { |
| 17 for (const WindowManagerState* wms : GetWindowManagerStatesForUser()) { | 18 for (const WindowManagerState* wms : GetWindowManagerStatesForUser()) { |
| 18 if (wms->got_frame_decoration_values()) { | 19 if (wms->got_frame_decoration_values()) { |
| 19 got_valid_frame_decorations_ = true; | 20 got_valid_frame_decorations_ = true; |
| (...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 55 } | 56 } |
| 56 | 57 |
| 57 display_manager_observers_.ForAllPtrs( | 58 display_manager_observers_.ForAllPtrs( |
| 58 [this, &display](mojom::DisplayManagerObserver* observer) { | 59 [this, &display](mojom::DisplayManagerObserver* observer) { |
| 59 observer->OnDisplayRemoved(display->id()); | 60 observer->OnDisplayRemoved(display->id()); |
| 60 }); | 61 }); |
| 61 if (test_observer_) | 62 if (test_observer_) |
| 62 test_observer_->OnDisplayRemoved(display->id()); | 63 test_observer_->OnDisplayRemoved(display->id()); |
| 63 } | 64 } |
| 64 | 65 |
| 66 void UserDisplayManager::OnMouseCursorLocationChanged( |
| 67 const gfx::Point& location) { |
| 68 mouse_location_ = location; |
| 69 } |
| 70 |
| 65 std::set<const WindowManagerState*> | 71 std::set<const WindowManagerState*> |
| 66 UserDisplayManager::GetWindowManagerStatesForUser() const { | 72 UserDisplayManager::GetWindowManagerStatesForUser() const { |
| 67 std::set<const WindowManagerState*> result; | 73 std::set<const WindowManagerState*> result; |
| 68 for (const Display* display : display_manager_->displays()) { | 74 for (const Display* display : display_manager_->displays()) { |
| 69 const WindowManagerState* wms = | 75 const WindowManagerState* wms = |
| 70 display->GetWindowManagerStateForUser(user_id_); | 76 display->GetWindowManagerStateForUser(user_id_); |
| 71 if (wms && wms->got_frame_decoration_values()) | 77 if (wms && wms->got_frame_decoration_values()) |
| 72 result.insert(wms); | 78 result.insert(wms); |
| 73 } | 79 } |
| 74 return result; | 80 return result; |
| (...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 113 test_observer_->OnDisplaysChanged(displays.Clone()); | 119 test_observer_->OnDisplaysChanged(displays.Clone()); |
| 114 } | 120 } |
| 115 | 121 |
| 116 void UserDisplayManager::AddObserver( | 122 void UserDisplayManager::AddObserver( |
| 117 mojom::DisplayManagerObserverPtr observer) { | 123 mojom::DisplayManagerObserverPtr observer) { |
| 118 mojom::DisplayManagerObserver* observer_impl = observer.get(); | 124 mojom::DisplayManagerObserver* observer_impl = observer.get(); |
| 119 display_manager_observers_.AddPtr(std::move(observer)); | 125 display_manager_observers_.AddPtr(std::move(observer)); |
| 120 OnObserverAdded(observer_impl); | 126 OnObserverAdded(observer_impl); |
| 121 } | 127 } |
| 122 | 128 |
| 129 void UserDisplayManager::GetCursorScreenPoint( |
| 130 const GetCursorScreenPointCallback& callback) { |
| 131 callback.Run(mojo::Point::From(mouse_location_)); |
| 132 } |
| 133 |
| 123 } // namespace ws | 134 } // namespace ws |
| 124 } // namespace mus | 135 } // namespace mus |
| OLD | NEW |