Index: components/html_viewer/html_widget.cc |
diff --git a/components/html_viewer/html_widget.cc b/components/html_viewer/html_widget.cc |
index 17ab20fb4fc7e5915b6d5efcf4854366212743ea..cc129277e11ec1d1dd4e4880fe58d3e633bba3f3 100644 |
--- a/components/html_viewer/html_widget.cc |
+++ b/components/html_viewer/html_widget.cc |
@@ -10,7 +10,6 @@ |
#include "components/html_viewer/web_layer_tree_view_impl.h" |
#include "components/html_viewer/web_storage_namespace_impl.h" |
#include "components/view_manager/public/cpp/view.h" |
-#include "components/view_manager/public/interfaces/surfaces.mojom.h" |
#include "mojo/application/public/cpp/application_impl.h" |
#include "third_party/WebKit/public/web/WebFrameWidget.h" |
#include "third_party/WebKit/public/web/WebInputEvent.h" |
@@ -22,22 +21,23 @@ namespace html_viewer { |
namespace { |
scoped_ptr<WebLayerTreeViewImpl> CreateWebLayerTreeView( |
- mojo::ApplicationImpl* app, |
GlobalState* global_state) { |
- mojo::URLRequestPtr request(mojo::URLRequest::New()); |
- request->url = mojo::String::From("mojo:view_manager"); |
- mojo::SurfacePtr surface; |
- app->ConnectToService(request.Pass(), &surface); |
- |
- mojo::URLRequestPtr request2(mojo::URLRequest::New()); |
- request2->url = mojo::String::From("mojo:view_manager"); |
- mojo::GpuPtr gpu_service; |
- app->ConnectToService(request2.Pass(), &gpu_service); |
return make_scoped_ptr(new WebLayerTreeViewImpl( |
global_state->compositor_thread(), |
global_state->gpu_memory_buffer_manager(), |
- global_state->raster_thread_helper()->task_graph_runner(), surface.Pass(), |
- gpu_service.Pass())); |
+ global_state->raster_thread_helper()->task_graph_runner())); |
+} |
+ |
+void InitializeWebLayerTreeView(WebLayerTreeViewImpl* web_layer_tree_view, |
+ mojo::ApplicationImpl* app, |
+ mojo::View* view, |
+ blink::WebWidget* widget) { |
+ DCHECK(view); |
+ mojo::URLRequestPtr request(mojo::URLRequest::New()); |
+ request->url = mojo::String::From("mojo:view_manager"); |
+ mojo::GpuPtr gpu_service; |
+ app->ConnectToService(request.Pass(), &gpu_service); |
+ web_layer_tree_view->Initialize(gpu_service.Pass(), view, widget); |
} |
void UpdateWebViewSizeFromViewSize(mojo::View* view, |
@@ -95,8 +95,8 @@ HTMLWidgetRootLocal::HTMLWidgetRootLocal(CreateParams* create_params) |
// |web_layer_tree_view_impl_|. As we haven't yet assigned the |web_view_| |
// we have to set it here. |
if (web_layer_tree_view_impl_) { |
- web_layer_tree_view_impl_->set_widget(web_view_); |
- web_layer_tree_view_impl_->set_view(create_params->view); |
+ InitializeWebLayerTreeView(web_layer_tree_view_impl_.get(), app_, view_, |
+ web_view_); |
UpdateWebViewSizeFromViewSize(view_, web_view_, |
web_layer_tree_view_impl_.get()); |
} |
@@ -119,7 +119,7 @@ void HTMLWidgetRootLocal::didChangeContents() { |
} |
void HTMLWidgetRootLocal::initializeLayerTreeView() { |
- web_layer_tree_view_impl_ = CreateWebLayerTreeView(app_, global_state_); |
+ web_layer_tree_view_impl_ = CreateWebLayerTreeView(global_state_); |
} |
blink::WebLayerTreeView* HTMLWidgetRootLocal::layerTreeView() { |
@@ -205,8 +205,8 @@ HTMLWidgetLocalRoot::HTMLWidgetLocalRoot(mojo::ApplicationImpl* app, |
// |web_frame_widget_| |
// we have to set it here. |
if (web_layer_tree_view_impl_) { |
- web_layer_tree_view_impl_->set_widget(web_frame_widget_); |
- web_layer_tree_view_impl_->set_view(view); |
+ InitializeWebLayerTreeView(web_layer_tree_view_impl_.get(), app_, view, |
+ web_frame_widget_); |
UpdateWebViewSizeFromViewSize(view, web_frame_widget_, |
web_layer_tree_view_impl_.get()); |
} |
@@ -224,7 +224,7 @@ void HTMLWidgetLocalRoot::OnViewBoundsChanged(mojo::View* view) { |
} |
void HTMLWidgetLocalRoot::initializeLayerTreeView() { |
- web_layer_tree_view_impl_ = CreateWebLayerTreeView(app_, global_state_); |
+ web_layer_tree_view_impl_ = CreateWebLayerTreeView(global_state_); |
} |
blink::WebLayerTreeView* HTMLWidgetLocalRoot::layerTreeView() { |