Chromium Code Reviews| Index: content/browser/devtools/render_view_devtools_agent_host.cc |
| diff --git a/content/browser/devtools/render_view_devtools_agent_host.cc b/content/browser/devtools/render_view_devtools_agent_host.cc |
| index c9d8634466364dbfa2ca3a8cc288c9a1893df0aa..17baca0d2d446683e850e3b4f30ec3ce6b3eab0d 100644 |
| --- a/content/browser/devtools/render_view_devtools_agent_host.cc |
| +++ b/content/browser/devtools/render_view_devtools_agent_host.cc |
| @@ -165,7 +165,8 @@ RenderViewDevToolsAgentHost::RenderViewDevToolsAgentHost( |
| : render_view_host_(NULL), |
| overrides_handler_(new RendererOverridesHandler(this)), |
| tracing_handler_(new DevToolsTracingHandler()), |
| - power_handler_(new DevToolsPowerHandler()) |
| + power_handler_(new DevToolsPowerHandler()), |
| + network_disabled_(false) |
| { |
|
mmenke
2014/04/21 17:16:51
nit: The open brace should be on the previous lin
eustas
2014/04/22 14:23:09
Done.
|
| SetRenderViewHost(rvh); |
| DevToolsProtocol::Notifier notifier(base::Bind( |
| @@ -223,6 +224,8 @@ void RenderViewDevToolsAgentHost::OnClientAttached() { |
| // extensions::ProcessManager no longer relies on this notification. |
| DevToolsManagerImpl::GetInstance()->NotifyObservers(this, true); |
| + UpdateNetworkState(network_disabled_); |
| + |
| #if defined(OS_ANDROID) |
| power_save_blocker_.reset( |
| static_cast<PowerSaveBlockerImpl*>( |
| @@ -240,6 +243,8 @@ void RenderViewDevToolsAgentHost::OnClientDetached() { |
| #if defined(OS_ANDROID) |
| power_save_blocker_.reset(); |
| #endif |
| + UpdateNetworkState(false); |
| + |
| overrides_handler_->OnClientDetached(); |
| ClientDetachedFromRenderer(); |
| } |
| @@ -405,6 +410,8 @@ bool RenderViewDevToolsAgentHost::DispatchIPCMessage( |
| IPC_MESSAGE_HANDLER(DevToolsHostMsg_ClearBrowserCache, OnClearBrowserCache) |
| IPC_MESSAGE_HANDLER(DevToolsHostMsg_ClearBrowserCookies, |
| OnClearBrowserCookies) |
| + IPC_MESSAGE_HANDLER(DevToolsHostMsg_DisableNetwork, |
| + OnDisableNetwork) |
| IPC_MESSAGE_HANDLER_GENERIC(ViewHostMsg_SwapCompositorFrame, |
| handled = false; OnSwapCompositorFrame(msg)) |
| IPC_MESSAGE_UNHANDLED(handled = false) |
| @@ -452,4 +459,17 @@ void RenderViewDevToolsAgentHost::OnClearBrowserCookies() { |
| GetContentClient()->browser()->ClearCookies(render_view_host_); |
| } |
| +void RenderViewDevToolsAgentHost::UpdateNetworkState(bool disable_network) { |
| + if (render_view_host_) { |
| + GetContentClient()->browser()->DisableNetwork( |
| + render_view_host_, GetId(), disable_network); |
| + } |
| +} |
| + |
| +void RenderViewDevToolsAgentHost::OnDisableNetwork( |
| + bool disable_network) { |
| + network_disabled_ = disable_network; |
| + UpdateNetworkState(disable_network); |
| +} |
| + |
| } // namespace content |