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

Side by Side Diff: services/ui/ws/window_server.h

Issue 2684623002: [WIP] Move ownership of PlatformDisplay from ws::Display to ws::WindowServer (Closed)
Patch Set: Created 3 years, 10 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 | « services/ui/ws/display.cc ('k') | services/ui/ws/window_server.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 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 #ifndef SERVICES_UI_WS_WINDOW_SERVER_H_ 5 #ifndef SERVICES_UI_WS_WINDOW_SERVER_H_
6 #define SERVICES_UI_WS_WINDOW_SERVER_H_ 6 #define SERVICES_UI_WS_WINDOW_SERVER_H_
7 7
8 #include <stdint.h> 8 #include <stdint.h>
9 9
10 #include <map> 10 #include <map>
(...skipping 17 matching lines...) Expand all
28 #include "services/ui/ws/user_id_tracker_observer.h" 28 #include "services/ui/ws/user_id_tracker_observer.h"
29 #include "services/ui/ws/window_manager_window_tree_factory_set.h" 29 #include "services/ui/ws/window_manager_window_tree_factory_set.h"
30 30
31 namespace ui { 31 namespace ui {
32 namespace ws { 32 namespace ws {
33 33
34 class AccessPolicy; 34 class AccessPolicy;
35 class Display; 35 class Display;
36 class DisplayManager; 36 class DisplayManager;
37 class GpuHost; 37 class GpuHost;
38 class PlatformDisplay;
38 class ServerWindow; 39 class ServerWindow;
39 class UserActivityMonitor; 40 class UserActivityMonitor;
40 class WindowManagerState; 41 class WindowManagerState;
41 class WindowServerDelegate; 42 class WindowServerDelegate;
42 class WindowTree; 43 class WindowTree;
43 class WindowTreeBinding; 44 class WindowTreeBinding;
44 45
45 // WindowServer manages the set of clients of the window server (all the 46 // WindowServer manages the set of clients of the window server (all the
46 // WindowTrees) as well as providing the root of the hierarchy. 47 // WindowTrees) as well as providing the root of the hierarchy.
47 class WindowServer : public ServerWindowDelegate, 48 class WindowServer : public ServerWindowDelegate,
(...skipping 180 matching lines...) Expand 10 before | Expand all | Expand 10 after
228 229
229 // ServerWindowDelegate: 230 // ServerWindowDelegate:
230 cc::mojom::DisplayCompositor* GetDisplayCompositor() override; 231 cc::mojom::DisplayCompositor* GetDisplayCompositor() override;
231 mojo::AssociatedGroup* GetDisplayCompositorAssociatedGroup() override; 232 mojo::AssociatedGroup* GetDisplayCompositorAssociatedGroup() override;
232 233
233 // UserDisplayManagerDelegate: 234 // UserDisplayManagerDelegate:
234 bool GetFrameDecorationsForUser( 235 bool GetFrameDecorationsForUser(
235 const UserId& user_id, 236 const UserId& user_id,
236 mojom::FrameDecorationValuesPtr* values) override; 237 mojom::FrameDecorationValuesPtr* values) override;
237 238
239 void AddPlatformDisplay(std::unique_ptr<PlatformDisplay> platform_display);
240 void RemovePlatformDisplay(PlatformDisplay* platform_display);
241
238 private: 242 private:
239 struct CurrentMoveLoopState; 243 struct CurrentMoveLoopState;
240 struct CurrentDragLoopState; 244 struct CurrentDragLoopState;
241 friend class Operation; 245 friend class Operation;
242 246
243 using WindowTreeMap = 247 using WindowTreeMap =
244 std::map<ClientSpecificId, std::unique_ptr<WindowTree>>; 248 std::map<ClientSpecificId, std::unique_ptr<WindowTree>>;
245 using UserActivityMonitorMap = 249 using UserActivityMonitorMap =
246 std::map<UserId, std::unique_ptr<UserActivityMonitor>>; 250 std::map<UserId, std::unique_ptr<UserActivityMonitor>>;
247 251
(...skipping 124 matching lines...) Expand 10 before | Expand all | Expand 10 after
372 376
373 WindowManagerWindowTreeFactorySet window_manager_window_tree_factory_set_; 377 WindowManagerWindowTreeFactorySet window_manager_window_tree_factory_set_;
374 378
375 cc::SurfaceId root_surface_id_; 379 cc::SurfaceId root_surface_id_;
376 380
377 mojo::Binding<cc::mojom::DisplayCompositorClient> 381 mojo::Binding<cc::mojom::DisplayCompositorClient>
378 display_compositor_client_binding_; 382 display_compositor_client_binding_;
379 // State for rendering into a Surface. 383 // State for rendering into a Surface.
380 cc::mojom::DisplayCompositorPtr display_compositor_; 384 cc::mojom::DisplayCompositorPtr display_compositor_;
381 385
386 std::set<std::unique_ptr<PlatformDisplay>> platform_displays_;
387
382 DISALLOW_COPY_AND_ASSIGN(WindowServer); 388 DISALLOW_COPY_AND_ASSIGN(WindowServer);
383 }; 389 };
384 390
385 } // namespace ws 391 } // namespace ws
386 } // namespace ui 392 } // namespace ui
387 393
388 #endif // SERVICES_UI_WS_WINDOW_SERVER_H_ 394 #endif // SERVICES_UI_WS_WINDOW_SERVER_H_
OLDNEW
« no previous file with comments | « services/ui/ws/display.cc ('k') | services/ui/ws/window_server.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698