Chromium Code Reviews| 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 172 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 183 class DebuggerTask : public PageScriptDebugServer::Task { | 183 class DebuggerTask : public PageScriptDebugServer::Task { |
| 184 public: | 184 public: |
| 185 DebuggerTask(PassOwnPtr<WebDevToolsAgent::MessageDescriptor> descriptor) | 185 DebuggerTask(PassOwnPtr<WebDevToolsAgent::MessageDescriptor> descriptor) |
| 186 : m_descriptor(descriptor) | 186 : m_descriptor(descriptor) |
| 187 { | 187 { |
| 188 } | 188 } |
| 189 | 189 |
| 190 virtual ~DebuggerTask() { } | 190 virtual ~DebuggerTask() { } |
| 191 virtual void run() | 191 virtual void run() |
| 192 { | 192 { |
| 193 if (WebDevToolsAgent* webagent = m_descriptor->agent()) | 193 WebDevToolsAgent* webagent = m_descriptor->agent(); |
| 194 webagent->dispatchOnInspectorBackend(m_descriptor->message()); | 194 if (!webagent) |
| 195 return; | |
| 196 | |
| 197 WebDevToolsAgentImpl* agentImpl = static_cast<WebDevToolsAgentImpl*>(web agent); | |
| 198 agentImpl->inspectorController()->dispatchMessageFromFrontend(m_descript or->message()); | |
|
pfeldman
2015/02/17 09:23:16
check for m_attached is missing.
yurys
2015/02/17 09:44:00
It might make sense to extract
if (m_attached)
sergeyv
2015/02/17 11:32:59
Done.
| |
| 195 } | 199 } |
| 196 | 200 |
| 197 private: | 201 private: |
| 198 OwnPtr<WebDevToolsAgent::MessageDescriptor> m_descriptor; | 202 OwnPtr<WebDevToolsAgent::MessageDescriptor> m_descriptor; |
| 199 }; | 203 }; |
| 200 | 204 |
| 201 WebDevToolsAgentImpl::WebDevToolsAgentImpl( | 205 WebDevToolsAgentImpl::WebDevToolsAgentImpl( |
| 202 WebViewImpl* webViewImpl, | 206 WebViewImpl* webViewImpl, |
| 203 WebDevToolsAgentClient* client) | 207 WebDevToolsAgentClient* client) |
| 204 : m_layerTreeId(0) | 208 : m_layerTreeId(0) |
| (...skipping 232 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 437 m_generatingEvent = true; | 441 m_generatingEvent = true; |
| 438 WebMouseEvent webEvent = WebMouseEventBuilder(m_webViewImpl->mainFrameImpl() ->frameView(), event); | 442 WebMouseEvent webEvent = WebMouseEventBuilder(m_webViewImpl->mainFrameImpl() ->frameView(), event); |
| 439 m_webViewImpl->handleInputEvent(webEvent); | 443 m_webViewImpl->handleInputEvent(webEvent); |
| 440 m_generatingEvent = false; | 444 m_generatingEvent = false; |
| 441 } | 445 } |
| 442 | 446 |
| 443 void WebDevToolsAgentImpl::dispatchOnInspectorBackend(const WebString& message) | 447 void WebDevToolsAgentImpl::dispatchOnInspectorBackend(const WebString& message) |
| 444 { | 448 { |
| 445 if (!m_attached) | 449 if (!m_attached) |
| 446 return; | 450 return; |
| 447 inspectorController()->dispatchMessageFromFrontend(message); | 451 if (WebDevToolsAgent::shouldInterruptForMessage(message)) |
| 452 PageScriptDebugServer::shared().runPendingTasks(); | |
| 453 else | |
| 454 inspectorController()->dispatchMessageFromFrontend(message); | |
| 448 } | 455 } |
| 449 | 456 |
| 450 void WebDevToolsAgentImpl::inspectElementAt(const WebPoint& point) | 457 void WebDevToolsAgentImpl::inspectElementAt(const WebPoint& point) |
| 451 { | 458 { |
| 452 m_webViewImpl->inspectElementAt(point); | 459 m_webViewImpl->inspectElementAt(point); |
| 453 } | 460 } |
| 454 | 461 |
| 455 InspectorController* WebDevToolsAgentImpl::inspectorController() | 462 InspectorController* WebDevToolsAgentImpl::inspectorController() |
| 456 { | 463 { |
| 457 if (Page* page = m_webViewImpl->page()) | 464 if (Page* page = m_webViewImpl->page()) |
| (...skipping 118 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 576 || commandName == InspectorBackendDispatcher::commandName(InspectorBacke ndDispatcher::kDebugger_removeBreakpointCmd) | 583 || commandName == InspectorBackendDispatcher::commandName(InspectorBacke ndDispatcher::kDebugger_removeBreakpointCmd) |
| 577 || commandName == InspectorBackendDispatcher::commandName(InspectorBacke ndDispatcher::kDebugger_setBreakpointsActiveCmd); | 584 || commandName == InspectorBackendDispatcher::commandName(InspectorBacke ndDispatcher::kDebugger_setBreakpointsActiveCmd); |
| 578 } | 585 } |
| 579 | 586 |
| 580 void WebDevToolsAgent::processPendingMessages() | 587 void WebDevToolsAgent::processPendingMessages() |
| 581 { | 588 { |
| 582 PageScriptDebugServer::shared().runPendingTasks(); | 589 PageScriptDebugServer::shared().runPendingTasks(); |
| 583 } | 590 } |
| 584 | 591 |
| 585 } // namespace blink | 592 } // namespace blink |
| OLD | NEW |