OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2010-2011 Google Inc. All rights reserved. | 2 * Copyright (C) 2010-2011 Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
6 * met: | 6 * met: |
7 * | 7 * |
8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
87 #include "platform/graphics/GraphicsContext.h" | 87 #include "platform/graphics/GraphicsContext.h" |
88 #include "platform/graphics/paint/DisplayItemList.h" | 88 #include "platform/graphics/paint/DisplayItemList.h" |
89 #include "public/platform/Platform.h" | 89 #include "public/platform/Platform.h" |
90 #include "public/platform/WebLayerTreeView.h" | 90 #include "public/platform/WebLayerTreeView.h" |
91 #include "public/platform/WebRect.h" | 91 #include "public/platform/WebRect.h" |
92 #include "public/platform/WebString.h" | 92 #include "public/platform/WebString.h" |
93 #include "public/web/WebDevToolsAgentClient.h" | 93 #include "public/web/WebDevToolsAgentClient.h" |
94 #include "public/web/WebSettings.h" | 94 #include "public/web/WebSettings.h" |
95 #include "web/DevToolsEmulator.h" | 95 #include "web/DevToolsEmulator.h" |
96 #include "web/InspectorEmulationAgent.h" | 96 #include "web/InspectorEmulationAgent.h" |
| 97 #include "web/InspectorOverlayImpl.h" |
97 #include "web/InspectorRenderingAgent.h" | 98 #include "web/InspectorRenderingAgent.h" |
98 #include "web/WebFrameWidgetImpl.h" | 99 #include "web/WebFrameWidgetImpl.h" |
99 #include "web/WebInputEventConversion.h" | 100 #include "web/WebInputEventConversion.h" |
100 #include "web/WebLocalFrameImpl.h" | 101 #include "web/WebLocalFrameImpl.h" |
101 #include "web/WebSettingsImpl.h" | 102 #include "web/WebSettingsImpl.h" |
102 #include "web/WebViewImpl.h" | 103 #include "web/WebViewImpl.h" |
103 #include "wtf/MathExtras.h" | 104 #include "wtf/MathExtras.h" |
104 #include "wtf/Noncopyable.h" | 105 #include "wtf/Noncopyable.h" |
105 #include "wtf/text/WTFString.h" | 106 #include "wtf/text/WTFString.h" |
106 | 107 |
(...skipping 167 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
274 private: | 275 private: |
275 OwnPtr<WebDevToolsAgent::MessageDescriptor> m_descriptor; | 276 OwnPtr<WebDevToolsAgent::MessageDescriptor> m_descriptor; |
276 }; | 277 }; |
277 | 278 |
278 // static | 279 // static |
279 PassOwnPtrWillBeRawPtr<WebDevToolsAgentImpl> WebDevToolsAgentImpl::create(WebLoc
alFrameImpl* frame, WebDevToolsAgentClient* client) | 280 PassOwnPtrWillBeRawPtr<WebDevToolsAgentImpl> WebDevToolsAgentImpl::create(WebLoc
alFrameImpl* frame, WebDevToolsAgentClient* client) |
280 { | 281 { |
281 WebViewImpl* view = frame->viewImpl(); | 282 WebViewImpl* view = frame->viewImpl(); |
282 bool isMainFrame = view && view->mainFrameImpl() == frame; | 283 bool isMainFrame = view && view->mainFrameImpl() == frame; |
283 if (!isMainFrame) { | 284 if (!isMainFrame) { |
284 WebDevToolsAgentImpl* agent = new WebDevToolsAgentImpl(frame, client, fr
ame->inspectorOverlay()); | 285 WebDevToolsAgentImpl* agent = new WebDevToolsAgentImpl(frame, client, In
spectorOverlayImpl::createEmpty()); |
285 if (frame->frameWidget()) | 286 if (frame->frameWidget()) |
286 agent->layerTreeViewChanged(toWebFrameWidgetImpl(frame->frameWidget(
))->layerTreeView()); | 287 agent->layerTreeViewChanged(toWebFrameWidgetImpl(frame->frameWidget(
))->layerTreeView()); |
287 return adoptPtrWillBeNoop(agent); | 288 return adoptPtrWillBeNoop(agent); |
288 } | 289 } |
289 | 290 |
290 WebDevToolsAgentImpl* agent = new WebDevToolsAgentImpl(frame, client, view->
inspectorOverlay()); | 291 WebDevToolsAgentImpl* agent = new WebDevToolsAgentImpl(frame, client, Inspec
torOverlayImpl::create(view)); |
291 agent->registerAgent(InspectorRenderingAgent::create(view)); | 292 agent->registerAgent(InspectorRenderingAgent::create(view)); |
292 agent->registerAgent(InspectorEmulationAgent::create(view)); | 293 agent->registerAgent(InspectorEmulationAgent::create(view)); |
293 // TODO(dgozman): migrate each of the following agents to frame once module
is ready. | 294 // TODO(dgozman): migrate each of the following agents to frame once module
is ready. |
294 agent->registerAgent(InspectorDatabaseAgent::create(view->page())); | 295 agent->registerAgent(InspectorDatabaseAgent::create(view->page())); |
295 agent->registerAgent(DeviceOrientationInspectorAgent::create(view->page())); | 296 agent->registerAgent(DeviceOrientationInspectorAgent::create(view->page())); |
296 agent->registerAgent(InspectorFileSystemAgent::create(view->page())); | 297 agent->registerAgent(InspectorFileSystemAgent::create(view->page())); |
297 agent->registerAgent(InspectorIndexedDBAgent::create(view->page())); | 298 agent->registerAgent(InspectorIndexedDBAgent::create(view->page())); |
298 agent->registerAgent(InspectorAccessibilityAgent::create(view->page())); | 299 agent->registerAgent(InspectorAccessibilityAgent::create(view->page())); |
299 agent->registerAgent(InspectorDOMStorageAgent::create(view->page())); | 300 agent->registerAgent(InspectorDOMStorageAgent::create(view->page())); |
300 agent->registerAgent(InspectorCacheStorageAgent::create()); | 301 agent->registerAgent(InspectorCacheStorageAgent::create()); |
301 agent->layerTreeViewChanged(view->layerTreeView()); | 302 agent->layerTreeViewChanged(view->layerTreeView()); |
302 return adoptPtrWillBeNoop(agent); | 303 return adoptPtrWillBeNoop(agent); |
303 } | 304 } |
304 | 305 |
305 WebDevToolsAgentImpl::WebDevToolsAgentImpl( | 306 WebDevToolsAgentImpl::WebDevToolsAgentImpl( |
306 WebLocalFrameImpl* webLocalFrameImpl, | 307 WebLocalFrameImpl* webLocalFrameImpl, |
307 WebDevToolsAgentClient* client, | 308 WebDevToolsAgentClient* client, |
308 InspectorOverlay* overlay) | 309 PassOwnPtrWillBeRawPtr<InspectorOverlay> overlay) |
309 : m_client(client) | 310 : m_client(client) |
310 , m_webLocalFrameImpl(webLocalFrameImpl) | 311 , m_webLocalFrameImpl(webLocalFrameImpl) |
311 , m_attached(false) | 312 , m_attached(false) |
312 #if ENABLE(ASSERT) | 313 #if ENABLE(ASSERT) |
313 , m_hasBeenDisposed(false) | 314 , m_hasBeenDisposed(false) |
314 #endif | 315 #endif |
315 , m_instrumentingAgents(m_webLocalFrameImpl->frame()->instrumentingAgents()) | 316 , m_instrumentingAgents(m_webLocalFrameImpl->frame()->instrumentingAgents()) |
316 , m_injectedScriptManager(InjectedScriptManager::createForPage()) | 317 , m_injectedScriptManager(InjectedScriptManager::createForPage()) |
317 , m_resourceContentLoader(InspectorResourceContentLoader::create(m_webLocalF
rameImpl->frame())) | 318 , m_resourceContentLoader(InspectorResourceContentLoader::create(m_webLocalF
rameImpl->frame())) |
318 , m_state(adoptPtrWillBeNoop(new InspectorCompositeState(this))) | 319 , m_state(adoptPtrWillBeNoop(new InspectorCompositeState(this))) |
319 , m_overlay(overlay) | 320 , m_overlay(overlay) |
320 , m_cssAgent(nullptr) | 321 , m_cssAgent(nullptr) |
321 , m_resourceAgent(nullptr) | 322 , m_resourceAgent(nullptr) |
322 , m_layerTreeAgent(nullptr) | 323 , m_layerTreeAgent(nullptr) |
323 , m_agents(m_instrumentingAgents.get(), m_state.get()) | 324 , m_agents(m_instrumentingAgents.get(), m_state.get()) |
324 , m_deferredAgentsInitialized(false) | 325 , m_deferredAgentsInitialized(false) |
325 { | 326 { |
326 ASSERT(isMainThread()); | 327 ASSERT(isMainThread()); |
327 ASSERT(m_webLocalFrameImpl->frame()); | 328 ASSERT(m_webLocalFrameImpl->frame()); |
328 | 329 |
329 long processId = Platform::current()->getUniqueIdForProcess(); | 330 long processId = Platform::current()->getUniqueIdForProcess(); |
330 ASSERT(processId > 0); | 331 ASSERT(processId > 0); |
331 IdentifiersFactory::setProcessId(processId); | 332 IdentifiersFactory::setProcessId(processId); |
332 InjectedScriptManager* injectedScriptManager = m_injectedScriptManager.get()
; | 333 InjectedScriptManager* injectedScriptManager = m_injectedScriptManager.get()
; |
333 | 334 |
334 OwnPtrWillBeRawPtr<InspectorInspectorAgent> inspectorAgentPtr(InspectorInspe
ctorAgent::create(injectedScriptManager)); | 335 OwnPtrWillBeRawPtr<InspectorInspectorAgent> inspectorAgentPtr(InspectorInspe
ctorAgent::create(injectedScriptManager)); |
335 m_inspectorAgent = inspectorAgentPtr.get(); | 336 m_inspectorAgent = inspectorAgentPtr.get(); |
336 m_agents.append(inspectorAgentPtr.release()); | 337 m_agents.append(inspectorAgentPtr.release()); |
337 | 338 |
338 OwnPtrWillBeRawPtr<InspectorPageAgent> pageAgentPtr(InspectorPageAgent::crea
te(m_webLocalFrameImpl->frame(), m_overlay, m_resourceContentLoader.get())); | 339 OwnPtrWillBeRawPtr<InspectorPageAgent> pageAgentPtr(InspectorPageAgent::crea
te(m_webLocalFrameImpl->frame(), m_overlay.get(), m_resourceContentLoader.get())
); |
339 m_pageAgent = pageAgentPtr.get(); | 340 m_pageAgent = pageAgentPtr.get(); |
340 m_agents.append(pageAgentPtr.release()); | 341 m_agents.append(pageAgentPtr.release()); |
341 | 342 |
342 OwnPtrWillBeRawPtr<InspectorDOMAgent> domAgentPtr(InspectorDOMAgent::create(
m_pageAgent, injectedScriptManager, m_overlay)); | 343 OwnPtrWillBeRawPtr<InspectorDOMAgent> domAgentPtr(InspectorDOMAgent::create(
m_pageAgent, injectedScriptManager, m_overlay.get())); |
343 m_domAgent = domAgentPtr.get(); | 344 m_domAgent = domAgentPtr.get(); |
344 m_agents.append(domAgentPtr.release()); | 345 m_agents.append(domAgentPtr.release()); |
345 | 346 |
346 OwnPtrWillBeRawPtr<InspectorLayerTreeAgent> layerTreeAgentPtr(InspectorLayer
TreeAgent::create(m_pageAgent)); | 347 OwnPtrWillBeRawPtr<InspectorLayerTreeAgent> layerTreeAgentPtr(InspectorLayer
TreeAgent::create(m_pageAgent)); |
347 m_layerTreeAgent = layerTreeAgentPtr.get(); | 348 m_layerTreeAgent = layerTreeAgentPtr.get(); |
348 m_agents.append(layerTreeAgentPtr.release()); | 349 m_agents.append(layerTreeAgentPtr.release()); |
349 | 350 |
350 m_agents.append(InspectorTimelineAgent::create()); | 351 m_agents.append(InspectorTimelineAgent::create()); |
351 | 352 |
352 ClientMessageLoopAdapter::ensureMainThreadDebuggerCreated(m_client); | 353 ClientMessageLoopAdapter::ensureMainThreadDebuggerCreated(m_client); |
(...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
452 OwnPtrWillBeRawPtr<InspectorCSSAgent> cssAgentPtr(InspectorCSSAgent::create(
m_domAgent, m_pageAgent, m_resourceAgent, m_resourceContentLoader.get())); | 453 OwnPtrWillBeRawPtr<InspectorCSSAgent> cssAgentPtr(InspectorCSSAgent::create(
m_domAgent, m_pageAgent, m_resourceAgent, m_resourceContentLoader.get())); |
453 m_cssAgent = cssAgentPtr.get(); | 454 m_cssAgent = cssAgentPtr.get(); |
454 m_agents.append(cssAgentPtr.release()); | 455 m_agents.append(cssAgentPtr.release()); |
455 | 456 |
456 m_agents.append(InspectorAnimationAgent::create(m_pageAgent, m_domAgent)); | 457 m_agents.append(InspectorAnimationAgent::create(m_pageAgent, m_domAgent)); |
457 | 458 |
458 m_agents.append(InspectorMemoryAgent::create()); | 459 m_agents.append(InspectorMemoryAgent::create()); |
459 | 460 |
460 m_agents.append(InspectorApplicationCacheAgent::create(m_pageAgent)); | 461 m_agents.append(InspectorApplicationCacheAgent::create(m_pageAgent)); |
461 | 462 |
462 OwnPtrWillBeRawPtr<InspectorDebuggerAgent> debuggerAgentPtr(PageDebuggerAgen
t::create(MainThreadDebugger::instance(), m_pageAgent, injectedScriptManager, m_
overlay)); | 463 OwnPtrWillBeRawPtr<InspectorDebuggerAgent> debuggerAgentPtr(PageDebuggerAgen
t::create(MainThreadDebugger::instance(), m_pageAgent, injectedScriptManager, m_
overlay.get())); |
463 InspectorDebuggerAgent* debuggerAgent = debuggerAgentPtr.get(); | 464 InspectorDebuggerAgent* debuggerAgent = debuggerAgentPtr.get(); |
464 m_agents.append(debuggerAgentPtr.release()); | 465 m_agents.append(debuggerAgentPtr.release()); |
465 m_asyncCallTracker = adoptPtrWillBeNoop(new AsyncCallTracker(debuggerAgent->
v8DebuggerAgent(), m_instrumentingAgents.get())); | 466 m_asyncCallTracker = adoptPtrWillBeNoop(new AsyncCallTracker(debuggerAgent->
v8DebuggerAgent(), m_instrumentingAgents.get())); |
466 | 467 |
467 m_agents.append(InspectorDOMDebuggerAgent::create(injectedScriptManager, m_d
omAgent, debuggerAgent->v8DebuggerAgent())); | 468 m_agents.append(InspectorDOMDebuggerAgent::create(injectedScriptManager, m_d
omAgent, debuggerAgent->v8DebuggerAgent())); |
468 | 469 |
469 m_agents.append(InspectorInputAgent::create(m_pageAgent)); | 470 m_agents.append(InspectorInputAgent::create(m_pageAgent)); |
470 | 471 |
471 v8::Isolate* isolate = V8PerIsolateData::mainThreadIsolate(); | 472 v8::Isolate* isolate = V8PerIsolateData::mainThreadIsolate(); |
472 m_agents.append(InspectorProfilerAgent::create(isolate, injectedScriptManage
r, m_overlay)); | 473 m_agents.append(InspectorProfilerAgent::create(isolate, injectedScriptManage
r, m_overlay.get())); |
473 | 474 |
474 m_agents.append(InspectorHeapProfilerAgent::create(isolate, injectedScriptMa
nager)); | 475 m_agents.append(InspectorHeapProfilerAgent::create(isolate, injectedScriptMa
nager)); |
475 | 476 |
476 m_pageAgent->setDebuggerAgent(debuggerAgent); | 477 m_pageAgent->setDebuggerAgent(debuggerAgent); |
477 m_pageConsoleAgent->setDebuggerAgent(debuggerAgent->v8DebuggerAgent()); | 478 m_pageConsoleAgent->setDebuggerAgent(debuggerAgent->v8DebuggerAgent()); |
478 | 479 |
479 MainThreadDebugger* mainThreadDebugger = MainThreadDebugger::instance(); | 480 MainThreadDebugger* mainThreadDebugger = MainThreadDebugger::instance(); |
480 m_injectedScriptManager->injectedScriptHost()->init( | 481 m_injectedScriptManager->injectedScriptHost()->init( |
481 m_pageConsoleAgent.get(), | 482 m_pageConsoleAgent.get(), |
482 debuggerAgent->v8DebuggerAgent(), | 483 debuggerAgent->v8DebuggerAgent(), |
(...skipping 271 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
754 if (!InspectorBackendDispatcher::getCommandName(message, &commandName)) | 755 if (!InspectorBackendDispatcher::getCommandName(message, &commandName)) |
755 return false; | 756 return false; |
756 return commandName == InspectorBackendDispatcher::commandName(InspectorBacke
ndDispatcher::kDebugger_pauseCmd) | 757 return commandName == InspectorBackendDispatcher::commandName(InspectorBacke
ndDispatcher::kDebugger_pauseCmd) |
757 || commandName == InspectorBackendDispatcher::commandName(InspectorBacke
ndDispatcher::kDebugger_setBreakpointCmd) | 758 || commandName == InspectorBackendDispatcher::commandName(InspectorBacke
ndDispatcher::kDebugger_setBreakpointCmd) |
758 || commandName == InspectorBackendDispatcher::commandName(InspectorBacke
ndDispatcher::kDebugger_setBreakpointByUrlCmd) | 759 || commandName == InspectorBackendDispatcher::commandName(InspectorBacke
ndDispatcher::kDebugger_setBreakpointByUrlCmd) |
759 || commandName == InspectorBackendDispatcher::commandName(InspectorBacke
ndDispatcher::kDebugger_removeBreakpointCmd) | 760 || commandName == InspectorBackendDispatcher::commandName(InspectorBacke
ndDispatcher::kDebugger_removeBreakpointCmd) |
760 || commandName == InspectorBackendDispatcher::commandName(InspectorBacke
ndDispatcher::kDebugger_setBreakpointsActiveCmd); | 761 || commandName == InspectorBackendDispatcher::commandName(InspectorBacke
ndDispatcher::kDebugger_setBreakpointsActiveCmd); |
761 } | 762 } |
762 | 763 |
763 } // namespace blink | 764 } // namespace blink |
OLD | NEW |