Index: services/ui/ws/server_window_compositor_frame_sink_manager.cc |
diff --git a/services/ui/ws/server_window_compositor_frame_sink_manager.cc b/services/ui/ws/server_window_compositor_frame_sink_manager.cc |
index f9aa0904b5e9af7761b6294c5f9e982e42f15bf4..f1fa0ca54ab8c44c228139c3908a2bc3a50087ab 100644 |
--- a/services/ui/ws/server_window_compositor_frame_sink_manager.cc |
+++ b/services/ui/ws/server_window_compositor_frame_sink_manager.cc |
@@ -6,7 +6,7 @@ |
#include "mojo/public/cpp/bindings/strong_binding.h" |
#include "services/ui/surfaces/display_compositor.h" |
-#include "services/ui/ws/gpu_compositor_frame_sink.h" |
+#include "services/ui/surfaces/gpu_compositor_frame_sink.h" |
#include "services/ui/ws/ids.h" |
#include "services/ui/ws/server_window.h" |
#include "services/ui/ws/server_window_delegate.h" |
@@ -39,8 +39,6 @@ bool ServerWindowCompositorFrameSinkManager::ShouldDraw() { |
void ServerWindowCompositorFrameSinkManager::CreateCompositorFrameSink( |
mojom::CompositorFrameSinkType compositor_frame_sink_type, |
gfx::AcceleratedWidget widget, |
- gpu::GpuMemoryBufferManager* gpu_memory_buffer_manager, |
- scoped_refptr<SurfacesContextProvider> context_provider, |
cc::mojom::MojoCompositorFrameSinkRequest request, |
cc::mojom::MojoCompositorFrameSinkClientPtr client) { |
cc::FrameSinkId frame_sink_id( |
@@ -48,7 +46,6 @@ void ServerWindowCompositorFrameSinkManager::CreateCompositorFrameSink( |
static_cast<uint32_t>(compositor_frame_sink_type)); |
CompositorFrameSinkData& data = |
type_to_compositor_frame_sink_map_[compositor_frame_sink_type]; |
- |
cc::mojom::MojoCompositorFrameSinkPrivateRequest private_request; |
if (data.pending_compositor_frame_sink_request.is_pending()) { |
private_request = std::move(data.pending_compositor_frame_sink_request); |
@@ -56,14 +53,12 @@ void ServerWindowCompositorFrameSinkManager::CreateCompositorFrameSink( |
private_request = mojo::GetProxy(&data.compositor_frame_sink); |
} |
- // TODO(fsamuel): Create the CompositorFrameSink through the DisplayCompositor |
- // mojo interface. |
- mojo::MakeStrongBinding( |
- base::MakeUnique<GpuCompositorFrameSink>( |
- window_->delegate()->GetDisplayCompositor(), frame_sink_id, widget, |
- gpu_memory_buffer_manager, std::move(context_provider), |
- std::move(request), std::move(client)), |
- std::move(private_request)); |
+ // TODO(fsamuel): AcceleratedWidget cannot be transported over IPC for Mac or |
+ // Android. We should instead use GpuSurfaceTracker here on those platforms. |
+ window_->delegate()->GetDisplayCompositor()->CreateCompositorFrameSink( |
+ frame_sink_id, widget, std::move(request), std::move(private_request), |
+ std::move(client)); |
+ |
if (window_->parent()) { |
window_->delegate() |
->GetRootWindow(window_) |