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

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

Issue 236813002: Move Mojo channel initialization closer to IPC::Channel setup (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: include guards Created 6 years, 8 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
(Empty)
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
3 // found in the LICENSE file.
4
5 #include "content/renderer/web_ui_setup_impl.h"
6
7 #include "content/public/renderer/render_view.h"
8 #include "content/renderer/web_ui_mojo.h"
9
10 namespace content {
11
12 // static
13 void WebUISetupImpl::Bind(mojo::ScopedMessagePipeHandle handle) {
14 new WebUISetupImpl(handle.Pass());
sky 2014/04/22 15:52:20 Document lifetime. In particular how this is destr
15 }
16
17 WebUISetupImpl::WebUISetupImpl(mojo::ScopedMessagePipeHandle handle)
18 : client_(ScopedWebUISetupClientHandle::From(handle.Pass()), this) {
19 }
20
21 WebUISetupImpl::~WebUISetupImpl() {
22 }
23
24 void WebUISetupImpl::SetWebUIHandle(
25 int32 view_routing_id,
26 mojo::ScopedMessagePipeHandle web_ui_handle) {
27 RenderView* render_view = RenderView::FromRoutingID(view_routing_id);
28 if (!render_view)
29 return;
30 WebUIMojo* web_ui_mojo = WebUIMojo::Get(render_view);
31 if (!web_ui_mojo)
32 return;
33 web_ui_mojo->SetBrowserHandle(web_ui_handle.Pass());
34 }
35
36 void WebUISetupImpl::OnError() {
37 delete this;
38 }
39
40 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698