Index: services/ui/ws/gpu_service_proxy.cc |
diff --git a/services/ui/ws/gpu_service_proxy.cc b/services/ui/ws/gpu_service_proxy.cc |
index bdac226d811bca4d074f5391bc6e47c9dbbf9d42..38f8350b6001e8eef282a1025671b9864d19dc71 100644 |
--- a/services/ui/ws/gpu_service_proxy.cc |
+++ b/services/ui/ws/gpu_service_proxy.cc |
@@ -35,6 +35,8 @@ GpuServiceProxy::GpuServiceProxy(GpuServiceProxyDelegate* delegate) |
// TODO(sad): Once GPU process is split, this would look like: |
// connector->ConnectToInterface("gpu", &gpu_service_); |
gpu_main_.Create(GetProxy(&gpu_service_)); |
+ pending_display_compositor_factory_request_ = |
+ GetProxy(&display_compositor_factory_); |
gpu_service_->Initialize( |
base::Bind(&GpuServiceProxy::OnInitialized, base::Unretained(this))); |
gpu_memory_buffer_manager_ = base::MakeUnique<MusGpuMemoryBufferManager>( |
@@ -51,11 +53,15 @@ void GpuServiceProxy::Add(mojom::GpuServiceRequest request) { |
void GpuServiceProxy::CreateDisplayCompositor( |
cc::mojom::DisplayCompositorRequest request, |
cc::mojom::DisplayCompositorClientPtr client) { |
- gpu_service_->CreateDisplayCompositor(std::move(request), std::move(client)); |
+ display_compositor_factory_->CreateDisplayCompositor(std::move(request), |
+ std::move(client)); |
sadrul
2016/11/29 19:46:41
Dumb question: why can't WindowServer do this:
c
Fady Samuel
2016/11/29 20:08:58
It can. It's a matter of style I guess. I see no c
|
} |
void GpuServiceProxy::OnInitialized(const gpu::GPUInfo& gpu_info) { |
gpu_info_ = gpu_info; |
+ // TODO(fsamuel): Once GPU process is split, this would look like: |
+ // connector->ConnectToInterface("gpu", &display_compositor_factory_); |
+ gpu_main_.Create(std::move(pending_display_compositor_factory_request_)); |
delegate_->OnGpuServiceInitialized(); |
} |