Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(308)

Side by Side Diff: content/browser/devtools/render_frame_devtools_agent_host.h

Issue 976313003: [DevTools] Expose DevToolsAgentHost for OOPIF, display it in chrome://inspect. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Disabled test on android Created 5 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CONTENT_BROWSER_DEVTOOLS_RENDER_FRAME_DEVTOOLS_AGENT_HOST_H_ 5 #ifndef CONTENT_BROWSER_DEVTOOLS_RENDER_FRAME_DEVTOOLS_AGENT_HOST_H_
6 #define CONTENT_BROWSER_DEVTOOLS_RENDER_FRAME_DEVTOOLS_AGENT_HOST_H_ 6 #define CONTENT_BROWSER_DEVTOOLS_RENDER_FRAME_DEVTOOLS_AGENT_HOST_H_
7 7
8 #include <map> 8 #include <map>
9 9
10 #include "base/basictypes.h" 10 #include "base/basictypes.h"
(...skipping 30 matching lines...) Expand all
41 namespace power { class PowerHandler; } 41 namespace power { class PowerHandler; }
42 namespace service_worker { class ServiceWorkerHandler; } 42 namespace service_worker { class ServiceWorkerHandler; }
43 namespace tracing { class TracingHandler; } 43 namespace tracing { class TracingHandler; }
44 } 44 }
45 45
46 class CONTENT_EXPORT RenderFrameDevToolsAgentHost 46 class CONTENT_EXPORT RenderFrameDevToolsAgentHost
47 : public IPCDevToolsAgentHost, 47 : public IPCDevToolsAgentHost,
48 private WebContentsObserver, 48 private WebContentsObserver,
49 public NotificationObserver { 49 public NotificationObserver {
50 public: 50 public:
51 static void AddAllAgentHosts(DevToolsAgentHost::List* result);
52
51 static void OnCancelPendingNavigation(RenderFrameHost* pending, 53 static void OnCancelPendingNavigation(RenderFrameHost* pending,
52 RenderFrameHost* current); 54 RenderFrameHost* current);
53 55
54 void SynchronousSwapCompositorFrame( 56 void SynchronousSwapCompositorFrame(
55 const cc::CompositorFrameMetadata& frame_metadata); 57 const cc::CompositorFrameMetadata& frame_metadata);
56 58
57 bool HasRenderFrameHost(RenderFrameHost* host); 59 bool HasRenderFrameHost(RenderFrameHost* host);
58 60
59 // DevTooolsAgentHost overrides. 61 // DevTooolsAgentHost overrides.
60 void DisconnectWebContents() override; 62 void DisconnectWebContents() override;
61 void ConnectWebContents(WebContents* web_contents) override; 63 void ConnectWebContents(WebContents* web_contents) override;
62 BrowserContext* GetBrowserContext() override; 64 BrowserContext* GetBrowserContext() override;
63 WebContents* GetWebContents() override; 65 WebContents* GetWebContents() override;
64 Type GetType() override; 66 Type GetType() override;
65 std::string GetTitle() override; 67 std::string GetTitle() override;
66 GURL GetURL() override; 68 GURL GetURL() override;
67 bool Activate() override; 69 bool Activate() override;
68 bool Close() override; 70 bool Close() override;
69 71
70 private: 72 private:
71 friend class DevToolsAgentHost; 73 friend class DevToolsAgentHost;
72 explicit RenderFrameDevToolsAgentHost(RenderFrameHost*); 74 explicit RenderFrameDevToolsAgentHost(RenderFrameHost*);
73 ~RenderFrameDevToolsAgentHost() override; 75 ~RenderFrameDevToolsAgentHost() override;
74 76
77 static scoped_refptr<DevToolsAgentHost> GetOrCreateFor(RenderFrameHost* host);
78 static void AppendAgentHostForFrameIfApplicable(
79 DevToolsAgentHost::List* result,
80 RenderFrameHost* host);
81
75 // IPCDevToolsAgentHost overrides. 82 // IPCDevToolsAgentHost overrides.
76 void DispatchProtocolMessage(const std::string& message) override; 83 void DispatchProtocolMessage(const std::string& message) override;
77 void SendMessageToAgent(IPC::Message* msg) override; 84 void SendMessageToAgent(IPC::Message* msg) override;
78 void OnClientAttached() override; 85 void OnClientAttached() override;
79 void OnClientDetached() override; 86 void OnClientDetached() override;
80 87
81 // WebContentsObserver overrides. 88 // WebContentsObserver overrides.
82 void AboutToNavigateRenderFrame(RenderFrameHost* old_host, 89 void AboutToNavigateRenderFrame(RenderFrameHost* old_host,
83 RenderFrameHost* new_host) override; 90 RenderFrameHost* new_host) override;
84 void RenderFrameHostChanged(RenderFrameHost* old_host, 91 void RenderFrameHostChanged(RenderFrameHost* old_host,
(...skipping 26 matching lines...) Expand all
111 bool OnSetTouchEventEmulationEnabled(const IPC::Message& message); 118 bool OnSetTouchEventEmulationEnabled(const IPC::Message& message);
112 119
113 void OnDispatchOnInspectorFrontend(const DevToolsMessageChunk& message); 120 void OnDispatchOnInspectorFrontend(const DevToolsMessageChunk& message);
114 void DispatchOnInspectorFrontend(const std::string& message); 121 void DispatchOnInspectorFrontend(const std::string& message);
115 122
116 void ClientDetachedFromRenderer(); 123 void ClientDetachedFromRenderer();
117 124
118 void InnerOnClientAttached(); 125 void InnerOnClientAttached();
119 void InnerClientDetachedFromRenderer(); 126 void InnerClientDetachedFromRenderer();
120 127
128 bool IsChildFrame();
129
121 RenderFrameHostImpl* render_frame_host_; 130 RenderFrameHostImpl* render_frame_host_;
122 scoped_ptr<devtools::dom::DOMHandler> dom_handler_; 131 scoped_ptr<devtools::dom::DOMHandler> dom_handler_;
123 scoped_ptr<devtools::input::InputHandler> input_handler_; 132 scoped_ptr<devtools::input::InputHandler> input_handler_;
124 scoped_ptr<devtools::inspector::InspectorHandler> inspector_handler_; 133 scoped_ptr<devtools::inspector::InspectorHandler> inspector_handler_;
125 scoped_ptr<devtools::network::NetworkHandler> network_handler_; 134 scoped_ptr<devtools::network::NetworkHandler> network_handler_;
126 scoped_ptr<devtools::page::PageHandler> page_handler_; 135 scoped_ptr<devtools::page::PageHandler> page_handler_;
127 scoped_ptr<devtools::power::PowerHandler> power_handler_; 136 scoped_ptr<devtools::power::PowerHandler> power_handler_;
128 scoped_ptr<devtools::service_worker::ServiceWorkerHandler> 137 scoped_ptr<devtools::service_worker::ServiceWorkerHandler>
129 service_worker_handler_; 138 service_worker_handler_;
130 scoped_ptr<devtools::tracing::TracingHandler> tracing_handler_; 139 scoped_ptr<devtools::tracing::TracingHandler> tracing_handler_;
131 scoped_ptr<DevToolsProtocolHandler> protocol_handler_; 140 scoped_ptr<DevToolsProtocolHandler> protocol_handler_;
132 scoped_ptr<DevToolsFrameTraceRecorder> frame_trace_recorder_; 141 scoped_ptr<DevToolsFrameTraceRecorder> frame_trace_recorder_;
133 #if defined(OS_ANDROID) 142 #if defined(OS_ANDROID)
134 scoped_ptr<PowerSaveBlockerImpl> power_save_blocker_; 143 scoped_ptr<PowerSaveBlockerImpl> power_save_blocker_;
135 #endif 144 #endif
136 NotificationRegistrar registrar_; 145 NotificationRegistrar registrar_;
137 bool reattaching_; 146 bool reattaching_;
138 147
139 DISALLOW_COPY_AND_ASSIGN(RenderFrameDevToolsAgentHost); 148 DISALLOW_COPY_AND_ASSIGN(RenderFrameDevToolsAgentHost);
140 }; 149 };
141 150
142 } // namespace content 151 } // namespace content
143 152
144 #endif // CONTENT_BROWSER_DEVTOOLS_RENDER_FRAME_DEVTOOLS_AGENT_HOST_H_ 153 #endif // CONTENT_BROWSER_DEVTOOLS_RENDER_FRAME_DEVTOOLS_AGENT_HOST_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698