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

Unified Diff: services/ui/ws/server_window_compositor_frame_sink_manager.cc

Issue 2481263002: Introduce Display Compositor mojo interface. Use InProcessContextProvider. (Closed)
Patch Set: Speculative fix for android build issue Created 4 years, 1 month 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 side-by-side diff with in-line comments
Download patch
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 a77cdfe5bb28e446df93a9cdc6da55de430b4a46..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,12 +53,12 @@ void ServerWindowCompositorFrameSinkManager::CreateCompositorFrameSink(
private_request = mojo::GetProxy(&data.compositor_frame_sink);
}
- // TODO(fsamuel): Create the CompositorFrameSink through the DisplayCompositor
- // mojo interface.
- data.compositor_frame_sink_impl_ = base::MakeUnique<GpuCompositorFrameSink>(
- window_->delegate()->GetDisplayCompositor(), frame_sink_id, widget,
- gpu_memory_buffer_manager, std::move(context_provider),
- std::move(request), std::move(private_request), std::move(client));
+ // 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_)

Powered by Google App Engine
This is Rietveld 408576698