#include "content/browser/devtools/web_contents_devtools_agent_host.h"
#include "base/memory/raw_ptr.h"
#include "base/unguessable_token.h"
#include "content/browser/devtools/protocol/io_handler.h"
#include "content/browser/devtools/protocol/target_auto_attacher.h"
#include "content/browser/devtools/protocol/target_handler.h"
#include "content/browser/devtools/protocol/tracing_handler.h"
#include "content/browser/devtools/render_frame_devtools_agent_host.h"
#include "content/browser/renderer_host/frame_tree_node.h"
#include "content/browser/web_contents/web_contents_impl.h"
namespace content {
namespace {
WebContentsDevToolsMap;
base::LazyInstance<WebContentsDevToolsMap>::Leaky g_agent_host_instances = …;
WebContentsDevToolsAgentHost* FindAgentHost(WebContents* wc) { … }
}
scoped_refptr<DevToolsAgentHost> DevToolsAgentHost::GetForTab(WebContents* wc) { … }
scoped_refptr<DevToolsAgentHost> DevToolsAgentHost::GetOrCreateForTab(
WebContents* wc) { … }
class WebContentsDevToolsAgentHost::AutoAttacher
: public protocol::TargetAutoAttacher { … };
WebContentsDevToolsAgentHost* WebContentsDevToolsAgentHost::GetFor(
WebContents* web_contents) { … }
WebContentsDevToolsAgentHost* WebContentsDevToolsAgentHost::GetOrCreateFor(
WebContents* web_contents) { … }
bool WebContentsDevToolsAgentHost::IsDebuggerAttached(
WebContents* web_contents) { … }
void WebContentsDevToolsAgentHost::AddAllAgentHosts(
DevToolsAgentHost::List* result) { … }
WebContentsDevToolsAgentHost::WebContentsDevToolsAgentHost(WebContents* wc)
: … { … }
void WebContentsDevToolsAgentHost::InnerAttach(WebContents* wc) { … }
void WebContentsDevToolsAgentHost::InnerDetach() { … }
void WebContentsDevToolsAgentHost::WillInitiatePrerender(FrameTreeNode* ftn) { … }
void WebContentsDevToolsAgentHost::UpdateChildFrameTrees(
bool update_target_info) { … }
void WebContentsDevToolsAgentHost::InspectElement(RenderFrameHost* frame_host,
int x,
int y) { … }
WebContentsDevToolsAgentHost::~WebContentsDevToolsAgentHost() { … }
void WebContentsDevToolsAgentHost::DisconnectWebContents() { … }
void WebContentsDevToolsAgentHost::ConnectWebContents(
WebContents* web_contents) { … }
BrowserContext* WebContentsDevToolsAgentHost::GetBrowserContext() { … }
WebContents* WebContentsDevToolsAgentHost::GetWebContents() { … }
std::string WebContentsDevToolsAgentHost::GetParentId() { … }
std::string WebContentsDevToolsAgentHost::GetOpenerId() { … }
std::string WebContentsDevToolsAgentHost::GetOpenerFrameId() { … }
bool WebContentsDevToolsAgentHost::CanAccessOpener() { … }
std::string WebContentsDevToolsAgentHost::GetType() { … }
std::string WebContentsDevToolsAgentHost::GetTitle() { … }
std::string WebContentsDevToolsAgentHost::GetDescription() { … }
GURL WebContentsDevToolsAgentHost::GetURL() { … }
GURL WebContentsDevToolsAgentHost::GetFaviconURL() { … }
bool WebContentsDevToolsAgentHost::Activate() { … }
void WebContentsDevToolsAgentHost::Reload() { … }
bool WebContentsDevToolsAgentHost::Close() { … }
base::TimeTicks WebContentsDevToolsAgentHost::GetLastActivityTime() { … }
std::optional<network::CrossOriginEmbedderPolicy>
WebContentsDevToolsAgentHost::cross_origin_embedder_policy(
const std::string& id) { … }
std::optional<network::CrossOriginOpenerPolicy>
WebContentsDevToolsAgentHost::cross_origin_opener_policy(
const std::string& id) { … }
DevToolsAgentHostImpl* WebContentsDevToolsAgentHost::GetPrimaryFrameAgent() { … }
scoped_refptr<DevToolsAgentHost>
WebContentsDevToolsAgentHost::GetOrCreatePrimaryFrameAgent() { … }
void WebContentsDevToolsAgentHost::WebContentsDestroyed() { … }
void WebContentsDevToolsAgentHost::RenderFrameHostChanged(
RenderFrameHost* old_host,
RenderFrameHost* new_host) { … }
void WebContentsDevToolsAgentHost::ReadyToCommitNavigation(
NavigationHandle* navigation_handle) { … }
void WebContentsDevToolsAgentHost::FrameDeleted(int frame_tree_node_id) { … }
DevToolsSession::Mode WebContentsDevToolsAgentHost::GetSessionMode() { … }
bool WebContentsDevToolsAgentHost::AttachSession(DevToolsSession* session,
bool acquire_wake_lock) { … }
protocol::TargetAutoAttacher* WebContentsDevToolsAgentHost::auto_attacher() { … }
scoped_refptr<WebContentsDevToolsAgentHost>
WebContentsDevToolsAgentHost::RevalidateSessionAccess() { … }
}