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

Side by Side Diff: services/ui/ws/server_window_compositor_frame_sink_manager.cc

Issue 2797453002: Rename DisplayCompositor to MojoFrameSinkManager. (Closed)
Patch Set: Rebase. Created 3 years, 8 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
OLDNEW
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 "services/ui/ws/server_window_compositor_frame_sink_manager.h" 5 #include "services/ui/ws/server_window_compositor_frame_sink_manager.h"
6 6
7 #include <utility> 7 #include <utility>
8 8
9 #include "cc/ipc/display_compositor.mojom.h"
10 #include "mojo/public/cpp/bindings/strong_binding.h" 9 #include "mojo/public/cpp/bindings/strong_binding.h"
11 #include "services/ui/ws/ids.h" 10 #include "services/ui/ws/ids.h"
12 #include "services/ui/ws/server_window.h" 11 #include "services/ui/ws/server_window.h"
13 #include "services/ui/ws/server_window_delegate.h" 12 #include "services/ui/ws/server_window_delegate.h"
14 13
15 namespace ui { 14 namespace ui {
16 namespace ws { 15 namespace ws {
17 16
18 ServerWindowCompositorFrameSinkManager::ServerWindowCompositorFrameSinkManager( 17 ServerWindowCompositorFrameSinkManager::ServerWindowCompositorFrameSinkManager(
19 ServerWindow* window) 18 ServerWindow* window)
20 : window_(window) {} 19 : window_(window) {}
21 20
22 ServerWindowCompositorFrameSinkManager:: 21 ServerWindowCompositorFrameSinkManager::
23 ~ServerWindowCompositorFrameSinkManager() { 22 ~ServerWindowCompositorFrameSinkManager() {
24 } 23 }
25 24
26 void ServerWindowCompositorFrameSinkManager::CreateRootCompositorFrameSink( 25 void ServerWindowCompositorFrameSinkManager::CreateRootCompositorFrameSink(
27 gfx::AcceleratedWidget widget, 26 gfx::AcceleratedWidget widget,
28 cc::mojom::MojoCompositorFrameSinkAssociatedRequest sink_request, 27 cc::mojom::MojoCompositorFrameSinkAssociatedRequest sink_request,
29 cc::mojom::MojoCompositorFrameSinkClientPtr client, 28 cc::mojom::MojoCompositorFrameSinkClientPtr client,
30 cc::mojom::DisplayPrivateAssociatedRequest display_request) { 29 cc::mojom::DisplayPrivateAssociatedRequest display_request) {
31 if (!pending_compositor_frame_sink_request_.is_pending()) { 30 if (!pending_compositor_frame_sink_request_.is_pending()) {
32 pending_compositor_frame_sink_request_ = 31 pending_compositor_frame_sink_request_ =
33 mojo::MakeRequest(&compositor_frame_sink_); 32 mojo::MakeRequest(&compositor_frame_sink_);
34 } 33 }
35 34
36 // TODO(fsamuel): AcceleratedWidget cannot be transported over IPC for Mac 35 // TODO(fsamuel): AcceleratedWidget cannot be transported over IPC for Mac
37 // or Android. We should instead use GpuSurfaceTracker here on those 36 // or Android. We should instead use GpuSurfaceTracker here on those
38 // platforms. 37 // platforms.
39 window_->delegate()->GetDisplayCompositor()->CreateRootCompositorFrameSink( 38 window_->delegate()->GetFrameSinkManager()->CreateRootCompositorFrameSink(
40 window_->frame_sink_id(), widget, std::move(sink_request), 39 window_->frame_sink_id(), widget, std::move(sink_request),
41 std::move(pending_compositor_frame_sink_request_), std::move(client), 40 std::move(pending_compositor_frame_sink_request_), std::move(client),
42 std::move(display_request)); 41 std::move(display_request));
43 } 42 }
44 43
45 void ServerWindowCompositorFrameSinkManager::CreateCompositorFrameSink( 44 void ServerWindowCompositorFrameSinkManager::CreateCompositorFrameSink(
46 cc::mojom::MojoCompositorFrameSinkRequest request, 45 cc::mojom::MojoCompositorFrameSinkRequest request,
47 cc::mojom::MojoCompositorFrameSinkClientPtr client) { 46 cc::mojom::MojoCompositorFrameSinkClientPtr client) {
48 if (!pending_compositor_frame_sink_request_.is_pending()) { 47 if (!pending_compositor_frame_sink_request_.is_pending()) {
49 pending_compositor_frame_sink_request_ = 48 pending_compositor_frame_sink_request_ =
50 mojo::MakeRequest(&compositor_frame_sink_); 49 mojo::MakeRequest(&compositor_frame_sink_);
51 } 50 }
52 51
53 window_->delegate()->GetDisplayCompositor()->CreateCompositorFrameSink( 52 window_->delegate()->GetFrameSinkManager()->CreateCompositorFrameSink(
54 window_->frame_sink_id(), std::move(request), 53 window_->frame_sink_id(), std::move(request),
55 std::move(pending_compositor_frame_sink_request_), std::move(client)); 54 std::move(pending_compositor_frame_sink_request_), std::move(client));
56 } 55 }
57 56
58 void ServerWindowCompositorFrameSinkManager::ClaimTemporaryReference( 57 void ServerWindowCompositorFrameSinkManager::ClaimTemporaryReference(
59 const cc::SurfaceId& surface_id) { 58 const cc::SurfaceId& surface_id) {
60 if (!compositor_frame_sink_.is_bound()) { 59 if (!compositor_frame_sink_.is_bound()) {
61 pending_compositor_frame_sink_request_ = 60 pending_compositor_frame_sink_request_ =
62 mojo::MakeRequest(&compositor_frame_sink_); 61 mojo::MakeRequest(&compositor_frame_sink_);
63 } 62 }
64 compositor_frame_sink_->ClaimTemporaryReference(surface_id); 63 compositor_frame_sink_->ClaimTemporaryReference(surface_id);
65 } 64 }
66 65
67 } // namespace ws 66 } // namespace ws
68 } // namespace ui 67 } // namespace ui
OLDNEW
« no previous file with comments | « services/ui/ws/server_window_compositor_frame_sink_manager.h ('k') | services/ui/ws/server_window_delegate.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698