Index: components/html_viewer/web_layer_tree_view_impl.cc |
diff --git a/components/html_viewer/web_layer_tree_view_impl.cc b/components/html_viewer/web_layer_tree_view_impl.cc |
index 3d3b88c7b6287fc510e29549915e5bc0f750bf4b..3024afbd6573f4aef6177d4cf1190fbfa528195f 100644 |
--- a/components/html_viewer/web_layer_tree_view_impl.cc |
+++ b/components/html_viewer/web_layer_tree_view_impl.cc |
@@ -22,9 +22,7 @@ namespace html_viewer { |
WebLayerTreeViewImpl::WebLayerTreeViewImpl( |
scoped_refptr<base::SingleThreadTaskRunner> compositor_task_runner, |
gpu::GpuMemoryBufferManager* gpu_memory_buffer_manager, |
- cc::TaskGraphRunner* task_graph_runner, |
- mojo::SurfacePtr surface, |
- mojo::GpuPtr gpu_service) |
+ cc::TaskGraphRunner* task_graph_runner) |
: widget_(NULL), |
view_(NULL), |
main_thread_compositor_task_runner_(base::ThreadTaskRunnerHandle::Get()), |
@@ -62,15 +60,20 @@ WebLayerTreeViewImpl::WebLayerTreeViewImpl( |
layer_tree_host_ = |
cc::LayerTreeHost::CreateThreaded(compositor_task_runner, ¶ms); |
DCHECK(layer_tree_host_); |
+} |
- if (surface && gpu_service) { |
+void WebLayerTreeViewImpl::Initialize(mojo::GpuPtr gpu_service, |
+ mojo::View* view, |
+ blink::WebWidget* widget) { |
+ view_ = view; |
+ widget_ = widget; |
+ if (gpu_service) { |
mojo::CommandBufferPtr cb; |
gpu_service->CreateOffscreenGLES2Context(GetProxy(&cb)); |
scoped_refptr<cc::ContextProvider> context_provider( |
new mojo::ContextProviderMojo(cb.PassInterface().PassHandle())); |
output_surface_.reset( |
- new mojo::OutputSurfaceMojo(this, context_provider, |
- surface.PassInterface().PassHandle())); |
+ new mojo::OutputSurfaceMojo(context_provider, view_->RequestSurface())); |
} |
layer_tree_host_->SetLayerTreeHostClientReady(); |
} |
@@ -247,16 +250,4 @@ void WebLayerTreeViewImpl::finishAllRendering() { |
layer_tree_host_->FinishAllRendering(); |
} |
-void WebLayerTreeViewImpl::DidCreateSurface(cc::SurfaceId id) { |
- main_thread_compositor_task_runner_->PostTask( |
- FROM_HERE, |
- base::Bind(&WebLayerTreeViewImpl::DidCreateSurfaceOnMainThread, |
- main_thread_bound_weak_ptr_, |
- id)); |
-} |
- |
-void WebLayerTreeViewImpl::DidCreateSurfaceOnMainThread(cc::SurfaceId id) { |
- view_->SetSurfaceId(mojo::SurfaceId::From(id)); |
-} |
- |
} // namespace html_viewer |