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

Side by Side Diff: content/renderer/devtools_agent.cc

Issue 11232014: Move a bunch of code in content\renderer to the content namespace. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: fix mac Created 8 years, 2 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 | Annotate | Revision Log
« no previous file with comments | « content/renderer/devtools_agent.h ('k') | content/renderer/devtools_agent_filter.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 #include "content/renderer/devtools_agent.h" 5 #include "content/renderer/devtools_agent.h"
6 6
7 #include <map> 7 #include <map>
8 8
9 #include "base/lazy_instance.h" 9 #include "base/lazy_instance.h"
10 #include "base/message_loop.h" 10 #include "base/message_loop.h"
(...skipping 19 matching lines...) Expand all
30 using WebKit::WebConsoleMessage; 30 using WebKit::WebConsoleMessage;
31 using WebKit::WebDevToolsAgent; 31 using WebKit::WebDevToolsAgent;
32 using WebKit::WebDevToolsAgentClient; 32 using WebKit::WebDevToolsAgentClient;
33 using WebKit::WebFrame; 33 using WebKit::WebFrame;
34 using WebKit::WebPoint; 34 using WebKit::WebPoint;
35 using WebKit::WebString; 35 using WebKit::WebString;
36 using WebKit::WebCString; 36 using WebKit::WebCString;
37 using WebKit::WebVector; 37 using WebKit::WebVector;
38 using WebKit::WebView; 38 using WebKit::WebView;
39 39
40 namespace content {
41
40 namespace { 42 namespace {
41 43
42 class WebKitClientMessageLoopImpl 44 class WebKitClientMessageLoopImpl
43 : public WebDevToolsAgentClient::WebKitClientMessageLoop { 45 : public WebDevToolsAgentClient::WebKitClientMessageLoop {
44 public: 46 public:
45 WebKitClientMessageLoopImpl() : message_loop_(MessageLoop::current()) { } 47 WebKitClientMessageLoopImpl() : message_loop_(MessageLoop::current()) { }
46 virtual ~WebKitClientMessageLoopImpl() { 48 virtual ~WebKitClientMessageLoopImpl() {
47 message_loop_ = NULL; 49 message_loop_ = NULL;
48 } 50 }
49 virtual void run() { 51 virtual void run() {
50 MessageLoop::ScopedNestableTaskAllower allow(message_loop_); 52 MessageLoop::ScopedNestableTaskAllower allow(message_loop_);
51 message_loop_->Run(); 53 message_loop_->Run();
52 } 54 }
53 virtual void quitNow() { 55 virtual void quitNow() {
54 message_loop_->QuitNow(); 56 message_loop_->QuitNow();
55 } 57 }
56 private: 58 private:
57 MessageLoop* message_loop_; 59 MessageLoop* message_loop_;
58 }; 60 };
59 61
60 typedef std::map<int, DevToolsAgent*> IdToAgentMap; 62 typedef std::map<int, DevToolsAgent*> IdToAgentMap;
61 base::LazyInstance<IdToAgentMap>::Leaky 63 base::LazyInstance<IdToAgentMap>::Leaky
62 g_agent_for_routing_id = LAZY_INSTANCE_INITIALIZER; 64 g_agent_for_routing_id = LAZY_INSTANCE_INITIALIZER;
63 65
64 } // namespace 66 } // namespace
65 67
66 DevToolsAgent::DevToolsAgent(RenderViewImpl* render_view) 68 DevToolsAgent::DevToolsAgent(RenderViewImpl* render_view)
67 : content::RenderViewObserver(render_view), 69 : RenderViewObserver(render_view), is_attached_(false) {
68 is_attached_(false) {
69 g_agent_for_routing_id.Get()[routing_id()] = this; 70 g_agent_for_routing_id.Get()[routing_id()] = this;
70 71
71 render_view->webview()->setDevToolsAgentClient(this); 72 render_view->webview()->setDevToolsAgentClient(this);
72 render_view->webview()->devToolsAgent()->setProcessId( 73 render_view->webview()->devToolsAgent()->setProcessId(
73 base::Process::Current().pid()); 74 base::Process::Current().pid());
74 } 75 }
75 76
76 DevToolsAgent::~DevToolsAgent() { 77 DevToolsAgent::~DevToolsAgent() {
77 g_agent_for_routing_id.Get().erase(routing_id()); 78 g_agent_for_routing_id.Get().erase(routing_id());
78 } 79 }
(...skipping 103 matching lines...) Expand 10 before | Expand all | Expand 10 after
182 } 183 }
183 184
184 void DevToolsAgent::OnInspectElement(int x, int y) { 185 void DevToolsAgent::OnInspectElement(int x, int y) {
185 WebDevToolsAgent* web_agent = GetWebAgent(); 186 WebDevToolsAgent* web_agent = GetWebAgent();
186 if (web_agent) { 187 if (web_agent) {
187 web_agent->attach(); 188 web_agent->attach();
188 web_agent->inspectElementAt(WebPoint(x, y)); 189 web_agent->inspectElementAt(WebPoint(x, y));
189 } 190 }
190 } 191 }
191 192
192 void DevToolsAgent::OnAddMessageToConsole(content::ConsoleMessageLevel level, 193 void DevToolsAgent::OnAddMessageToConsole(ConsoleMessageLevel level,
193 const std::string& message) { 194 const std::string& message) {
194 WebView* web_view = render_view()->GetWebView(); 195 WebView* web_view = render_view()->GetWebView();
195 if (!web_view) 196 if (!web_view)
196 return; 197 return;
197 198
198 WebFrame* main_frame = web_view-> mainFrame(); 199 WebFrame* main_frame = web_view-> mainFrame();
199 if (!main_frame) 200 if (!main_frame)
200 return; 201 return;
201 202
202 WebConsoleMessage::Level target_level = WebConsoleMessage::LevelLog; 203 WebConsoleMessage::Level target_level = WebConsoleMessage::LevelLog;
203 switch (level) { 204 switch (level) {
204 case content::CONSOLE_MESSAGE_LEVEL_TIP: 205 case CONSOLE_MESSAGE_LEVEL_TIP:
205 target_level = WebConsoleMessage::LevelTip; 206 target_level = WebConsoleMessage::LevelTip;
206 break; 207 break;
207 case content::CONSOLE_MESSAGE_LEVEL_LOG: 208 case CONSOLE_MESSAGE_LEVEL_LOG:
208 target_level = WebConsoleMessage::LevelLog; 209 target_level = WebConsoleMessage::LevelLog;
209 break; 210 break;
210 case content::CONSOLE_MESSAGE_LEVEL_WARNING: 211 case CONSOLE_MESSAGE_LEVEL_WARNING:
211 target_level = WebConsoleMessage::LevelWarning; 212 target_level = WebConsoleMessage::LevelWarning;
212 break; 213 break;
213 case content::CONSOLE_MESSAGE_LEVEL_ERROR: 214 case CONSOLE_MESSAGE_LEVEL_ERROR:
214 target_level = WebConsoleMessage::LevelError; 215 target_level = WebConsoleMessage::LevelError;
215 break; 216 break;
216 } 217 }
217 main_frame->addMessageToConsole( 218 main_frame->addMessageToConsole(
218 WebConsoleMessage(target_level, WebString::fromUTF8(message))); 219 WebConsoleMessage(target_level, WebString::fromUTF8(message)));
219 } 220 }
220 221
221 void DevToolsAgent::ContinueProgram() { 222 void DevToolsAgent::ContinueProgram() {
222 WebDevToolsAgent* web_agent = GetWebAgent(); 223 WebDevToolsAgent* web_agent = GetWebAgent();
223 // TODO(pfeldman): rename didNavigate to continueProgram upstream. 224 // TODO(pfeldman): rename didNavigate to continueProgram upstream.
224 // That is in fact the purpose of the signal. 225 // That is in fact the purpose of the signal.
225 if (web_agent) 226 if (web_agent)
226 web_agent->didNavigate(); 227 web_agent->didNavigate();
227 } 228 }
228 229
229 void DevToolsAgent::OnSetupDevToolsClient() { 230 void DevToolsAgent::OnSetupDevToolsClient() {
230 new DevToolsClient(static_cast<RenderViewImpl*>(render_view())); 231 new DevToolsClient(static_cast<RenderViewImpl*>(render_view()));
231 } 232 }
232 233
233 WebDevToolsAgent* DevToolsAgent::GetWebAgent() { 234 WebDevToolsAgent* DevToolsAgent::GetWebAgent() {
234 WebView* web_view = render_view()->GetWebView(); 235 WebView* web_view = render_view()->GetWebView();
235 if (!web_view) 236 if (!web_view)
236 return NULL; 237 return NULL;
237 return web_view->devToolsAgent(); 238 return web_view->devToolsAgent();
238 } 239 }
239 240
240 bool DevToolsAgent::IsAttached() { 241 bool DevToolsAgent::IsAttached() {
241 return is_attached_; 242 return is_attached_;
242 } 243 }
244
245 } // namespace content
OLDNEW
« no previous file with comments | « content/renderer/devtools_agent.h ('k') | content/renderer/devtools_agent_filter.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698