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

Unified Diff: Source/core/inspector/InspectorTracingAgent.cpp

Issue 460363002: Record DevTools metadata events on worker threads when starting recoring tracing based Timeline (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 years, 4 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 side-by-side diff with in-line comments
Download patch
Index: Source/core/inspector/InspectorTracingAgent.cpp
diff --git a/Source/core/inspector/InspectorTracingAgent.cpp b/Source/core/inspector/InspectorTracingAgent.cpp
index 11754dd739e30a12b3ffa3e4a170f18bfa5c8d4e..5440aeac2de62351c596b05638422f1d925daebe 100644
--- a/Source/core/inspector/InspectorTracingAgent.cpp
+++ b/Source/core/inspector/InspectorTracingAgent.cpp
@@ -11,6 +11,7 @@
#include "core/inspector/IdentifiersFactory.h"
#include "core/inspector/InspectorClient.h"
#include "core/inspector/InspectorState.h"
+#include "core/inspector/InspectorWorkerAgent.h"
#include "platform/TraceEvent.h"
namespace blink {
@@ -25,11 +26,12 @@ namespace {
const char devtoolsMetadataEventCategory[] = TRACE_DISABLED_BY_DEFAULT("devtools.timeline");
}
-InspectorTracingAgent::InspectorTracingAgent(InspectorClient* client)
+InspectorTracingAgent::InspectorTracingAgent(InspectorClient* client, InspectorWorkerAgent* workerAgent)
: InspectorBaseAgent<InspectorTracingAgent>("Tracing")
, m_layerTreeId(0)
, m_client(client)
, m_frontend(0)
+ , m_workerAgent(workerAgent)
{
}
@@ -48,7 +50,7 @@ void InspectorTracingAgent::end(ErrorString* errorString)
{
m_state->setBoolean(TracingAgentState::tracingStarted, false);
m_consoleTimelines.clear();
- m_frontend->stopped();
+ notifyTracingStopped();
}
void InspectorTracingAgent::innerStart(const String& categoryFilter, bool fromConsole)
@@ -72,6 +74,7 @@ void InspectorTracingAgent::emitMetadataEvents()
TRACE_EVENT_INSTANT1(devtoolsMetadataEventCategory, "TracingStartedInPage", "sessionId", sessionId().utf8());
if (m_layerTreeId)
setLayerTreeId(m_layerTreeId);
+ m_workerAgent->setTracingSessionId(sessionId());
}
void InspectorTracingAgent::setLayerTreeId(int layerTreeId)
@@ -98,10 +101,16 @@ void InspectorTracingAgent::consoleTimelineEnd(const String& title)
if (!m_consoleTimelines.size()
&& m_state->getBoolean(TracingAgentState::tracingStarted)
&& !m_state->getBoolean(TracingAgentState::tracingStartedFromProtocol))
- m_frontend->stopped();
+ notifyTracingStopped();
m_state->setBoolean(TracingAgentState::tracingStarted, false);
}
+void InspectorTracingAgent::notifyTracingStopped()
+{
+ m_frontend->stopped();
+ m_workerAgent->setTracingSessionId(String());
+}
+
void InspectorTracingAgent::setFrontend(InspectorFrontend* frontend)
{
m_frontend = frontend->tracing();

Powered by Google App Engine
This is Rietveld 408576698