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

Side by Side Diff: components/mus/ws/user_display_manager.cc

Issue 2072343002: Changes how window manager obtains WindowTree from mus (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: include Created 4 years, 6 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/mus/ws/test_utils.cc ('k') | components/mus/ws/user_display_manager_unittest.cc » ('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 "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 10
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
45 if (test_observer_) 45 if (test_observer_)
46 CallOnDisplayChanged(wms, test_observer_); 46 CallOnDisplayChanged(wms, test_observer_);
47 } 47 }
48 48
49 void UserDisplayManager::AddDisplayManagerBinding( 49 void UserDisplayManager::AddDisplayManagerBinding(
50 mojo::InterfaceRequest<mojom::DisplayManager> request) { 50 mojo::InterfaceRequest<mojom::DisplayManager> request) {
51 display_manager_bindings_.AddBinding(this, std::move(request)); 51 display_manager_bindings_.AddBinding(this, std::move(request));
52 } 52 }
53 53
54 void UserDisplayManager::OnWillDestroyDisplay(Display* display) { 54 void UserDisplayManager::OnWillDestroyDisplay(Display* display) {
55 if (!display->GetWindowManagerStateForUser(user_id_) 55 const WindowManagerState* wms =
56 ->got_frame_decoration_values()) { 56 display->GetWindowManagerStateForUser(user_id_);
57 if (wms && !wms->got_frame_decoration_values())
57 return; 58 return;
58 }
59 59
60 display_manager_observers_.ForAllPtrs( 60 display_manager_observers_.ForAllPtrs(
61 [this, &display](mojom::DisplayManagerObserver* observer) { 61 [this, &display](mojom::DisplayManagerObserver* observer) {
62 observer->OnDisplayRemoved(display->id()); 62 observer->OnDisplayRemoved(display->id());
63 }); 63 });
64 if (test_observer_) 64 if (test_observer_)
65 test_observer_->OnDisplayRemoved(display->id()); 65 test_observer_->OnDisplayRemoved(display->id());
66 } 66 }
67 67
68 void UserDisplayManager::OnMouseCursorLocationChanged(const gfx::Point& point) { 68 void UserDisplayManager::OnMouseCursorLocationChanged(const gfx::Point& point) {
(...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after
162 } 162 }
163 } 163 }
164 observer->OnDisplays(std::move(display_ptrs)); 164 observer->OnDisplays(std::move(display_ptrs));
165 } 165 }
166 166
167 void UserDisplayManager::CallOnDisplayChanged( 167 void UserDisplayManager::CallOnDisplayChanged(
168 const WindowManagerState* wms, 168 const WindowManagerState* wms,
169 mojom::DisplayManagerObserver* observer) { 169 mojom::DisplayManagerObserver* observer) {
170 mojo::Array<mojom::DisplayPtr> displays(1); 170 mojo::Array<mojom::DisplayPtr> displays(1);
171 displays[0] = wms->ToMojomDisplay(); 171 displays[0] = wms->ToMojomDisplay();
172 display_manager_observers_.ForAllPtrs( 172 observer->OnDisplaysChanged(displays.Clone());
173 [&displays](mojom::DisplayManagerObserver* observer) {
174 observer->OnDisplaysChanged(displays.Clone());
175 });
176 if (test_observer_)
177 test_observer_->OnDisplaysChanged(displays.Clone());
178 } 173 }
179 174
180 void UserDisplayManager::AddObserver( 175 void UserDisplayManager::AddObserver(
181 mojom::DisplayManagerObserverPtr observer) { 176 mojom::DisplayManagerObserverPtr observer) {
182 mojom::DisplayManagerObserver* observer_impl = observer.get(); 177 mojom::DisplayManagerObserver* observer_impl = observer.get();
183 display_manager_observers_.AddPtr(std::move(observer)); 178 display_manager_observers_.AddPtr(std::move(observer));
184 OnObserverAdded(observer_impl); 179 OnObserverAdded(observer_impl);
185 } 180 }
186 181
187 } // namespace ws 182 } // namespace ws
188 } // namespace mus 183 } // namespace mus
OLDNEW
« no previous file with comments | « components/mus/ws/test_utils.cc ('k') | components/mus/ws/user_display_manager_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698