diff options
author | kaznacheev@chromium.org <kaznacheev@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-07-01 13:38:16 +0000 |
---|---|---|
committer | kaznacheev@chromium.org <kaznacheev@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-07-01 13:38:16 +0000 |
commit | 9b48510b3ebc70aeb0dcc477a57eb2bf1d8f9753 (patch) | |
tree | 51bade916c1d2811a7868312fbb5e5d7b935b6a7 /content/browser | |
parent | ce5cbed872693ef89bb6e33fa4dd513b1dd7054b (diff) | |
download | chromium_src-9b48510b3ebc70aeb0dcc477a57eb2bf1d8f9753.zip chromium_src-9b48510b3ebc70aeb0dcc477a57eb2bf1d8f9753.tar.gz chromium_src-9b48510b3ebc70aeb0dcc477a57eb2bf1d8f9753.tar.bz2 |
Prevent DevTools window from disappearing when interstitial page is displayed
BUG=247631
Review URL: https://chromiumcodereview.appspot.com/16917005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@209419 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content/browser')
-rw-r--r-- | content/browser/devtools/render_view_devtools_agent_host.cc | 13 | ||||
-rw-r--r-- | content/browser/devtools/render_view_devtools_agent_host.h | 1 |
2 files changed, 14 insertions, 0 deletions
diff --git a/content/browser/devtools/render_view_devtools_agent_host.cc b/content/browser/devtools/render_view_devtools_agent_host.cc index 51cee3c..07ac3f5 100644 --- a/content/browser/devtools/render_view_devtools_agent_host.cc +++ b/content/browser/devtools/render_view_devtools_agent_host.cc @@ -256,6 +256,19 @@ void RenderViewDevToolsAgentHost::RenderViewGone( } } +void RenderViewDevToolsAgentHost::DidAttachInterstitialPage() { + if (!render_view_host_) + return; + // The rvh set in AboutToNavigateRenderView turned out to be interstitial. + // Connect back to the real one. + WebContents* web_contents = + WebContents::FromRenderViewHost(render_view_host_); + if (!web_contents) + return; + DisconnectRenderViewHost(); + ConnectRenderViewHost(web_contents->GetRenderViewHost(), true); +} + void RenderViewDevToolsAgentHost::ConnectRenderViewHost(RenderViewHost* rvh, bool reattach) { render_view_host_ = rvh; diff --git a/content/browser/devtools/render_view_devtools_agent_host.h b/content/browser/devtools/render_view_devtools_agent_host.h index bac4064..fddd90e 100644 --- a/content/browser/devtools/render_view_devtools_agent_host.h +++ b/content/browser/devtools/render_view_devtools_agent_host.h @@ -49,6 +49,7 @@ class CONTENT_EXPORT RenderViewDevToolsAgentHost // WebContentsObserver overrides. virtual void AboutToNavigateRenderView(RenderViewHost* dest_rvh) OVERRIDE; virtual void RenderViewGone(base::TerminationStatus status) OVERRIDE; + virtual void DidAttachInterstitialPage() OVERRIDE; void ConnectRenderViewHost(RenderViewHost* rvh, bool reattach); void DisconnectRenderViewHost(); |