Chromium Code Reviews| Index: content/renderer/render_frame_impl.cc |
| diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc |
| index 5872c9af4e4436f9af9e34e0acdde8474500dfb7..c1e807a7b4e9110abdb7d3d06dbe821e097dbac2 100644 |
| --- a/content/renderer/render_frame_impl.cc |
| +++ b/content/renderer/render_frame_impl.cc |
| @@ -603,6 +603,10 @@ void RenderFrameImpl::CreateFrame( |
| } |
| render_frame->Initialize(); |
| + // TODO(dgozman): this should actually be in RenderFrameImpl::Initialize, |
| + // but we have to somehow differentiate local frame root there. |
| + if (proxy_routing_id == MSG_ROUTING_NONE) |
|
nasko
2015/03/24 16:17:07
While this might work, it is a very fragile way to
Charlie Reis
2015/03/24 17:25:13
+1
For comparison, we have a IsCrossProcessSubfra
|
| + render_frame->CreateDevToolsAgent(); |
| } |
| // static |
| @@ -666,6 +670,7 @@ RenderFrameImpl::RenderFrameImpl(RenderViewImpl* render_view, int routing_id) |
| #if defined(VIDEO_HOLE) |
| contains_media_player_(false), |
| #endif |
| + devtools_agent_(nullptr), |
| geolocation_dispatcher_(NULL), |
| push_messaging_dispatcher_(NULL), |
| presentation_dispatcher_(NULL), |
| @@ -736,6 +741,11 @@ void RenderFrameImpl::Initialize() { |
| GetContentClient()->renderer()->RenderFrameCreated(this); |
| } |
| +void RenderFrameImpl::CreateDevToolsAgent() { |
| + // We should only create DevToolsAgent for local frame roots. |
| + devtools_agent_ = new DevToolsAgent(this); |
| +} |
| + |
| RenderWidget* RenderFrameImpl::GetRenderWidget() { |
| return render_view_.get(); |
| } |
| @@ -3221,10 +3231,10 @@ void RenderFrameImpl::didFinishResourceLoad(blink::WebLocalFrame* frame, |
| return; |
| // Do not show error page when DevTools is attached. |
| - if (render_view_->devtools_agent_ && |
| - render_view_->devtools_agent_->IsAttached()) { |
| + // TODO(dgozman): here we should really check DevToolsAgent of local frame |
| + // root. How? |
| + if (devtools_agent_ && devtools_agent_->IsAttached()) |
| return; |
| - } |
| // Display error page, if appropriate. |
| std::string error_domain = "http"; |