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

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

Issue 884873004: DevTools: rename RenderViewDevToolsAgentHost to RenderFrame*. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 10 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
(Empty)
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
3 // found in the LICENSE file.
4
5 #ifndef CONTENT_BROWSER_DEVTOOLS_RENDER_VIEW_DEVTOOLS_AGENT_HOST_H_
6 #define CONTENT_BROWSER_DEVTOOLS_RENDER_VIEW_DEVTOOLS_AGENT_HOST_H_
7
8 #include <map>
9
10 #include "base/basictypes.h"
11 #include "base/compiler_specific.h"
12 #include "base/memory/scoped_ptr.h"
13 #include "content/browser/devtools/ipc_devtools_agent_host.h"
14 #include "content/common/content_export.h"
15 #include "content/public/browser/notification_observer.h"
16 #include "content/public/browser/notification_registrar.h"
17 #include "content/public/browser/web_contents_observer.h"
18
19 namespace cc {
20 class CompositorFrameMetadata;
21 }
22
23 namespace content {
24
25 class BrowserContext;
26 class DevToolsProtocolHandler;
27 class RenderFrameHost;
28 class RenderFrameHostImpl;
29
30 #if defined(OS_ANDROID)
31 class PowerSaveBlockerImpl;
32 #endif
33
34 namespace devtools {
35 namespace dom { class DOMHandler; }
36 namespace input { class InputHandler; }
37 namespace inspector { class InspectorHandler; }
38 namespace network { class NetworkHandler; }
39 namespace page { class PageHandler; }
40 namespace power { class PowerHandler; }
41 namespace tracing { class TracingHandler; }
42 }
43
44 class CONTENT_EXPORT RenderViewDevToolsAgentHost
45 : public IPCDevToolsAgentHost,
46 private WebContentsObserver,
47 public NotificationObserver {
48 public:
49 static void OnCancelPendingNavigation(RenderFrameHost* pending,
50 RenderFrameHost* current);
51
52 void SynchronousSwapCompositorFrame(
53 const cc::CompositorFrameMetadata& frame_metadata);
54
55 bool HasRenderFrameHost(RenderFrameHost* host);
56
57 // DevTooolsAgentHost overrides.
58 void DisconnectWebContents() override;
59 void ConnectWebContents(WebContents* web_contents) override;
60 BrowserContext* GetBrowserContext() override;
61 WebContents* GetWebContents() override;
62 Type GetType() override;
63 std::string GetTitle() override;
64 GURL GetURL() override;
65 bool Activate() override;
66 bool Close() override;
67
68 private:
69 friend class DevToolsAgentHost;
70 explicit RenderViewDevToolsAgentHost(RenderFrameHost*);
71 ~RenderViewDevToolsAgentHost() override;
72
73 // IPCDevToolsAgentHost overrides.
74 void DispatchProtocolMessage(const std::string& message) override;
75 void SendMessageToAgent(IPC::Message* msg) override;
76 void OnClientAttached() override;
77 void OnClientDetached() override;
78
79 // WebContentsObserver overrides.
80 void AboutToNavigateRenderFrame(RenderFrameHost* old_host,
81 RenderFrameHost* new_host) override;
82 void RenderFrameHostChanged(RenderFrameHost* old_host,
83 RenderFrameHost* new_host) override;
84 void RenderFrameDeleted(RenderFrameHost* rvh) override;
85 void RenderProcessGone(base::TerminationStatus status) override;
86 bool OnMessageReceived(const IPC::Message& message,
87 RenderFrameHost* render_frame_host) override;
88 bool OnMessageReceived(const IPC::Message& message) override;
89 void DidAttachInterstitialPage() override;
90 void DidDetachInterstitialPage() override;
91 void TitleWasSet(NavigationEntry* entry, bool explicit_set) override;
92 void NavigationEntryCommitted(
93 const LoadCommittedDetails& load_details) override;
94
95 // NotificationObserver overrides:
96 void Observe(int type,
97 const NotificationSource& source,
98 const NotificationDetails& details) override;
99
100 void DisconnectRenderFrameHost();
101 void ConnectRenderFrameHost(RenderFrameHost* rvh);
102 void ReattachToRenderFrameHost(RenderFrameHost* rvh);
103
104 void SetRenderFrameHost(RenderFrameHost* rvh);
105 void ClearRenderFrameHost();
106
107 void RenderFrameCrashed();
108 void OnSwapCompositorFrame(const IPC::Message& message);
109 bool OnSetTouchEventEmulationEnabled(const IPC::Message& message);
110
111 void OnDispatchOnInspectorFrontend(const DevToolsMessageChunk& message);
112 void DispatchOnInspectorFrontend(const std::string& message);
113
114 void ClientDetachedFromRenderer();
115
116 void InnerOnClientAttached();
117 void InnerClientDetachedFromRenderer();
118
119 RenderFrameHostImpl* render_frame_host_;
120 scoped_ptr<devtools::dom::DOMHandler> dom_handler_;
121 scoped_ptr<devtools::input::InputHandler> input_handler_;
122 scoped_ptr<devtools::inspector::InspectorHandler> inspector_handler_;
123 scoped_ptr<devtools::network::NetworkHandler> network_handler_;
124 scoped_ptr<devtools::page::PageHandler> page_handler_;
125 scoped_ptr<devtools::power::PowerHandler> power_handler_;
126 scoped_ptr<devtools::tracing::TracingHandler> tracing_handler_;
127 scoped_ptr<DevToolsProtocolHandler> protocol_handler_;
128 #if defined(OS_ANDROID)
129 scoped_ptr<PowerSaveBlockerImpl> power_save_blocker_;
130 #endif
131 NotificationRegistrar registrar_;
132 bool reattaching_;
133
134 DISALLOW_COPY_AND_ASSIGN(RenderViewDevToolsAgentHost);
135 };
136
137 } // namespace content
138
139 #endif // CONTENT_BROWSER_DEVTOOLS_RENDER_VIEW_DEVTOOLS_AGENT_HOST_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698