diff options
author | pfeldman@chromium.org <pfeldman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-07-13 14:20:15 +0000 |
---|---|---|
committer | pfeldman@chromium.org <pfeldman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-07-13 14:20:15 +0000 |
commit | 8c785c6f0110c9109af284db78156b0b0998a5b5 (patch) | |
tree | e4aeae8234a51c30d5309e9af5d738b9d6bc957b /webkit | |
parent | 3061ccf369ee2642d4d18ac396b6758acebc3509 (diff) | |
download | chromium_src-8c785c6f0110c9109af284db78156b0b0998a5b5.zip chromium_src-8c785c6f0110c9109af284db78156b0b0998a5b5.tar.gz chromium_src-8c785c6f0110c9109af284db78156b0b0998a5b5.tar.bz2 |
DevTools: allow reload while on a breakpoint: detach agent on navigation attempt.
BUG=16606
Review URL: http://codereview.chromium.org/149529
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20480 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'webkit')
-rw-r--r-- | webkit/glue/devtools/debugger_agent_manager.cc | 7 | ||||
-rw-r--r-- | webkit/glue/devtools/debugger_agent_manager.h | 2 | ||||
-rw-r--r-- | webkit/glue/webdevtoolsagent.h | 2 | ||||
-rw-r--r-- | webkit/glue/webdevtoolsagent_impl.cc | 4 | ||||
-rw-r--r-- | webkit/glue/webdevtoolsagent_impl.h | 1 |
5 files changed, 16 insertions, 0 deletions
diff --git a/webkit/glue/devtools/debugger_agent_manager.cc b/webkit/glue/devtools/debugger_agent_manager.cc index 791831c..12dd202 100644 --- a/webkit/glue/devtools/debugger_agent_manager.cc +++ b/webkit/glue/devtools/debugger_agent_manager.cc @@ -250,6 +250,13 @@ void DebuggerAgentManager::OnWebViewClosed(WebViewImpl* webview) { } // static +void DebuggerAgentManager::OnNavigate() { + if (in_host_dispatch_handler_) { + DebuggerAgentManager::SendContinueCommandToV8(); + } +} + +// static void DebuggerAgentManager::SendCommandToV8(const string16& cmd, v8::Debug::ClientData* data) { #if USE(V8) diff --git a/webkit/glue/devtools/debugger_agent_manager.h b/webkit/glue/devtools/debugger_agent_manager.h index e0cae0a..eb8b225 100644 --- a/webkit/glue/devtools/debugger_agent_manager.h +++ b/webkit/glue/devtools/debugger_agent_manager.h @@ -50,6 +50,8 @@ class DebuggerAgentManager { static void OnWebViewClosed(WebViewImpl* webview); + static void OnNavigate(); + private: DebuggerAgentManager(); ~DebuggerAgentManager(); diff --git a/webkit/glue/webdevtoolsagent.h b/webkit/glue/webdevtoolsagent.h index 177ec2f..e5c060d 100644 --- a/webkit/glue/webdevtoolsagent.h +++ b/webkit/glue/webdevtoolsagent.h @@ -28,6 +28,8 @@ class WebDevToolsAgent { virtual void Detach() = 0; + virtual void OnNavigate() = 0; + virtual void DispatchMessageFromClient(const std::string& class_name, const std::string& method_name, const std::string& raw_msg) = 0; diff --git a/webkit/glue/webdevtoolsagent_impl.cc b/webkit/glue/webdevtoolsagent_impl.cc index b84884b..5ff16ed 100644 --- a/webkit/glue/webdevtoolsagent_impl.cc +++ b/webkit/glue/webdevtoolsagent_impl.cc @@ -123,6 +123,10 @@ void WebDevToolsAgentImpl::Detach() { attached_ = false; } +void WebDevToolsAgentImpl::OnNavigate() { + DebuggerAgentManager::OnNavigate(); +} + void WebDevToolsAgentImpl::SetMainFrameDocumentReady(bool ready) { if (!attached_) { return; diff --git a/webkit/glue/webdevtoolsagent_impl.h b/webkit/glue/webdevtoolsagent_impl.h index 64fd205..599bc0f 100644 --- a/webkit/glue/webdevtoolsagent_impl.h +++ b/webkit/glue/webdevtoolsagent_impl.h @@ -57,6 +57,7 @@ class WebDevToolsAgentImpl // WebDevToolsAgent implementation. virtual void Attach(); virtual void Detach(); + virtual void OnNavigate(); virtual void DispatchMessageFromClient(const std::string& class_name, const std::string& method_name, const std::string& raw_msg); |