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

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: 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 29 matching lines...) Expand all
40 namespace page { class PageHandler; } 40 namespace page { class PageHandler; }
41 namespace power { class PowerHandler; } 41 namespace power { class PowerHandler; }
42 namespace tracing { class TracingHandler; } 42 namespace tracing { class TracingHandler; }
43 } 43 }
44 44
45 class CONTENT_EXPORT RenderFrameDevToolsAgentHost 45 class CONTENT_EXPORT RenderFrameDevToolsAgentHost
46 : public IPCDevToolsAgentHost, 46 : public IPCDevToolsAgentHost,
47 private WebContentsObserver, 47 private WebContentsObserver,
48 public NotificationObserver { 48 public NotificationObserver {
49 public: 49 public:
50 static void AddAllAgentHosts(
51 std::vector<scoped_refptr<DevToolsAgentHost>>* result);
52
50 static void OnCancelPendingNavigation(RenderFrameHost* pending, 53 static void OnCancelPendingNavigation(RenderFrameHost* pending,
51 RenderFrameHost* current); 54 RenderFrameHost* current);
52 55
53 void SynchronousSwapCompositorFrame( 56 void SynchronousSwapCompositorFrame(
54 const cc::CompositorFrameMetadata& frame_metadata); 57 const cc::CompositorFrameMetadata& frame_metadata);
55 58
56 bool HasRenderFrameHost(RenderFrameHost* host); 59 bool HasRenderFrameHost(RenderFrameHost* host);
57 60
58 // DevTooolsAgentHost overrides. 61 // DevTooolsAgentHost overrides.
59 void DisconnectWebContents() override; 62 void DisconnectWebContents() override;
60 void ConnectWebContents(WebContents* web_contents) override; 63 void ConnectWebContents(WebContents* web_contents) override;
61 BrowserContext* GetBrowserContext() override; 64 BrowserContext* GetBrowserContext() override;
62 WebContents* GetWebContents() override; 65 WebContents* GetWebContents() override;
63 Type GetType() override; 66 Type GetType() override;
64 std::string GetTitle() override; 67 std::string GetTitle() override;
65 GURL GetURL() override; 68 GURL GetURL() override;
66 bool Activate() override; 69 bool Activate() override;
67 bool Close() override; 70 bool Close() override;
68 71
69 private: 72 private:
70 friend class DevToolsAgentHost; 73 friend class DevToolsAgentHost;
71 explicit RenderFrameDevToolsAgentHost(RenderFrameHost*); 74 explicit RenderFrameDevToolsAgentHost(RenderFrameHost*);
72 ~RenderFrameDevToolsAgentHost() override; 75 ~RenderFrameDevToolsAgentHost() override;
73 76
77 static scoped_refptr<DevToolsAgentHost> GetOrCreateFor(RenderFrameHost* host);
78 static void AppendAgentHostForFrameIfApplicable(
79 std::vector<scoped_refptr<DevToolsAgentHost>>* result,
80 RenderFrameHost* host);
81
74 // IPCDevToolsAgentHost overrides. 82 // IPCDevToolsAgentHost overrides.
75 void DispatchProtocolMessage(const std::string& message) override; 83 void DispatchProtocolMessage(const std::string& message) override;
76 void SendMessageToAgent(IPC::Message* msg) override; 84 void SendMessageToAgent(IPC::Message* msg) override;
77 void OnClientAttached() override; 85 void OnClientAttached() override;
78 void OnClientDetached() override; 86 void OnClientDetached() override;
79 87
80 // WebContentsObserver overrides. 88 // WebContentsObserver overrides.
81 void AboutToNavigateRenderFrame(RenderFrameHost* old_host, 89 void AboutToNavigateRenderFrame(RenderFrameHost* old_host,
82 RenderFrameHost* new_host) override; 90 RenderFrameHost* new_host) override;
83 void RenderFrameHostChanged(RenderFrameHost* old_host, 91 void RenderFrameHostChanged(RenderFrameHost* old_host,
(...skipping 26 matching lines...) Expand all
110 bool OnSetTouchEventEmulationEnabled(const IPC::Message& message); 118 bool OnSetTouchEventEmulationEnabled(const IPC::Message& message);
111 119
112 void OnDispatchOnInspectorFrontend(const DevToolsMessageChunk& message); 120 void OnDispatchOnInspectorFrontend(const DevToolsMessageChunk& message);
113 void DispatchOnInspectorFrontend(const std::string& message); 121 void DispatchOnInspectorFrontend(const std::string& message);
114 122
115 void ClientDetachedFromRenderer(); 123 void ClientDetachedFromRenderer();
116 124
117 void InnerOnClientAttached(); 125 void InnerOnClientAttached();
118 void InnerClientDetachedFromRenderer(); 126 void InnerClientDetachedFromRenderer();
119 127
128 bool IsChildFrame();
129
120 RenderFrameHostImpl* render_frame_host_; 130 RenderFrameHostImpl* render_frame_host_;
121 scoped_ptr<devtools::dom::DOMHandler> dom_handler_; 131 scoped_ptr<devtools::dom::DOMHandler> dom_handler_;
122 scoped_ptr<devtools::input::InputHandler> input_handler_; 132 scoped_ptr<devtools::input::InputHandler> input_handler_;
123 scoped_ptr<devtools::inspector::InspectorHandler> inspector_handler_; 133 scoped_ptr<devtools::inspector::InspectorHandler> inspector_handler_;
124 scoped_ptr<devtools::network::NetworkHandler> network_handler_; 134 scoped_ptr<devtools::network::NetworkHandler> network_handler_;
125 scoped_ptr<devtools::page::PageHandler> page_handler_; 135 scoped_ptr<devtools::page::PageHandler> page_handler_;
126 scoped_ptr<devtools::power::PowerHandler> power_handler_; 136 scoped_ptr<devtools::power::PowerHandler> power_handler_;
127 scoped_ptr<devtools::tracing::TracingHandler> tracing_handler_; 137 scoped_ptr<devtools::tracing::TracingHandler> tracing_handler_;
128 scoped_ptr<DevToolsProtocolHandler> protocol_handler_; 138 scoped_ptr<DevToolsProtocolHandler> protocol_handler_;
129 scoped_ptr<DevToolsFrameTraceRecorder> frame_trace_recorder_; 139 scoped_ptr<DevToolsFrameTraceRecorder> frame_trace_recorder_;
130 #if defined(OS_ANDROID) 140 #if defined(OS_ANDROID)
131 scoped_ptr<PowerSaveBlockerImpl> power_save_blocker_; 141 scoped_ptr<PowerSaveBlockerImpl> power_save_blocker_;
132 #endif 142 #endif
133 NotificationRegistrar registrar_; 143 NotificationRegistrar registrar_;
134 bool reattaching_; 144 bool reattaching_;
135 145
136 DISALLOW_COPY_AND_ASSIGN(RenderFrameDevToolsAgentHost); 146 DISALLOW_COPY_AND_ASSIGN(RenderFrameDevToolsAgentHost);
137 }; 147 };
138 148
139 } // namespace content 149 } // namespace content
140 150
141 #endif // CONTENT_BROWSER_DEVTOOLS_RENDER_FRAME_DEVTOOLS_AGENT_HOST_H_ 151 #endif // CONTENT_BROWSER_DEVTOOLS_RENDER_FRAME_DEVTOOLS_AGENT_HOST_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698