Index: content/browser/devtools/protocol/target_handler.h |
diff --git a/content/browser/devtools/protocol/target_handler.h b/content/browser/devtools/protocol/target_handler.h |
index 9b7bcaba3a503d1dda0c9f1e7c2f37698b787e3d..8c79d14164e0456c1bf239241e80c54f5db3bf38 100644 |
--- a/content/browser/devtools/protocol/target_handler.h |
+++ b/content/browser/devtools/protocol/target_handler.h |
@@ -11,6 +11,7 @@ |
#include "content/browser/devtools/protocol/devtools_protocol_dispatcher.h" |
#include "content/browser/devtools/service_worker_devtools_manager.h" |
#include "content/public/browser/devtools_agent_host_client.h" |
+#include "content/public/browser/devtools_agent_host_observer.h" |
namespace content { |
@@ -20,7 +21,8 @@ namespace devtools { |
namespace target { |
class TargetHandler : public DevToolsAgentHostClient, |
- public ServiceWorkerDevToolsManager::Observer { |
+ public ServiceWorkerDevToolsManager::Observer, |
+ public DevToolsAgentHostObserver { |
public: |
using Response = DevToolsProtocolClient::Response; |
@@ -48,13 +50,14 @@ class TargetHandler : public DevToolsAgentHostClient, |
private: |
using HostsMap = std::map<std::string, scoped_refptr<DevToolsAgentHost>>; |
+ using RawHostsMap = std::map<std::string, DevToolsAgentHost*>; |
void UpdateServiceWorkers(bool waiting_for_debugger); |
void ReattachTargetsOfType(const HostsMap& new_hosts, |
const std::string& type, |
bool waiting_for_debugger); |
void TargetCreatedInternal(DevToolsAgentHost* host); |
- void TargetRemovedInternal(DevToolsAgentHost* host); |
+ void TargetDestroyedInternal(DevToolsAgentHost* host); |
bool AttachToTargetInternal(DevToolsAgentHost* host, |
bool waiting_for_debugger); |
void DetachFromTargetInternal(DevToolsAgentHost* host); |
@@ -66,6 +69,11 @@ class TargetHandler : public DevToolsAgentHostClient, |
void WorkerVersionDoomed(ServiceWorkerDevToolsAgentHost* host) override; |
void WorkerDestroyed(ServiceWorkerDevToolsAgentHost* host) override; |
+ // DevToolsAgentHostObserver implementation. |
+ bool ShouldForceDevToolsAgentHostCreation() override; |
+ void DevToolsAgentHostCreated(DevToolsAgentHost* agent_host) override; |
+ void DevToolsAgentHostDestroyed(DevToolsAgentHost* agent_host) override; |
+ |
// DevToolsAgentHostClient implementation. |
void DispatchProtocolMessage(DevToolsAgentHost* agent_host, |
const std::string& message) override; |
@@ -80,6 +88,7 @@ class TargetHandler : public DevToolsAgentHostClient, |
RenderFrameHostImpl* render_frame_host_; |
HostsMap attached_hosts_; |
std::set<GURL> frame_urls_; |
+ RawHostsMap reported_hosts_; |
DISALLOW_COPY_AND_ASSIGN(TargetHandler); |
}; |