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

Side by Side Diff: content/renderer/web_ui_setup_impl.cc

Issue 265793015: Mojo: Replace RemotePtr with InterfacePtr and InterfaceImpl (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Force InterfaceImpl subclasses to implement OnConnectionError Created 6 years, 7 months 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "content/renderer/web_ui_setup_impl.h" 5 #include "content/renderer/web_ui_setup_impl.h"
6 6
7 #include "content/public/renderer/render_view.h" 7 #include "content/public/renderer/render_view.h"
8 #include "content/renderer/web_ui_mojo.h" 8 #include "content/renderer/web_ui_mojo.h"
9 9
10 namespace content { 10 namespace content {
11 11
12 // static 12 // static
13 void WebUISetupImpl::Bind(mojo::ScopedMessagePipeHandle handle) { 13 void WebUISetupImpl::Bind(mojo::ScopedMessagePipeHandle handle) {
14 // This instance will be destroyed when the pipe is closed. See OnError. 14 mojo::BindToPipe(new WebUISetupImpl(), handle.Pass());
15 new WebUISetupImpl(handle.Pass());
16 }
17
18 WebUISetupImpl::WebUISetupImpl(mojo::ScopedMessagePipeHandle handle)
19 : client_(ScopedWebUISetupClientHandle::From(handle.Pass()), this) {
20 }
21
22 WebUISetupImpl::~WebUISetupImpl() {
23 } 15 }
24 16
25 void WebUISetupImpl::SetWebUIHandle( 17 void WebUISetupImpl::SetWebUIHandle(
26 int32 view_routing_id, 18 int32 view_routing_id,
27 mojo::ScopedMessagePipeHandle web_ui_handle) { 19 mojo::ScopedMessagePipeHandle web_ui_handle) {
28 RenderView* render_view = RenderView::FromRoutingID(view_routing_id); 20 RenderView* render_view = RenderView::FromRoutingID(view_routing_id);
29 if (!render_view) 21 if (!render_view)
30 return; 22 return;
31 WebUIMojo* web_ui_mojo = WebUIMojo::Get(render_view); 23 WebUIMojo* web_ui_mojo = WebUIMojo::Get(render_view);
32 if (!web_ui_mojo) 24 if (!web_ui_mojo)
33 return; 25 return;
34 web_ui_mojo->SetBrowserHandle(web_ui_handle.Pass()); 26 web_ui_mojo->SetBrowserHandle(web_ui_handle.Pass());
35 } 27 }
36 28
37 void WebUISetupImpl::OnError() {
38 delete this;
39 }
40
41 } // namespace content 29 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698