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

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

Issue 14741014: Timeline: add reference to root node of layer in Rasterize event (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 7 years, 7 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/TimelineTraceEventProcessor.cpp
diff --git a/Source/core/inspector/TimelineTraceEventProcessor.cpp b/Source/core/inspector/TimelineTraceEventProcessor.cpp
index 3b93b5b73a8b4725064cd18b5ea9164f8675cf3f..04f4de5aa7233b808a826682df73c8ffe3679036 100644
--- a/Source/core/inspector/TimelineTraceEventProcessor.cpp
+++ b/Source/core/inspector/TimelineTraceEventProcessor.cpp
@@ -243,7 +243,10 @@ void TimelineTraceEventProcessor::onRasterTaskBegin(const TraceEvent& event)
TimelineThreadState& state = threadState(event.threadIdentifier());
if (!maybeEnterLayerTask(event, state))
return;
+ unsigned long long layerId = event.asUInt(InstrumentationEventArguments::LayerId);
+ ASSERT(layerId);
RefPtr<InspectorObject> record = createRecord(event, TimelineRecordType::Rasterize);
+ record->setObject("data", TimelineRecordFactory::createRasterizeData(m_layerToNodeMap.get(layerId)));
state.recordStack.addScopedRecord(record.release());
}
@@ -270,7 +273,7 @@ void TimelineTraceEventProcessor::onImageDecodeTaskEnd(const TraceEvent& event)
bool TimelineTraceEventProcessor::maybeEnterLayerTask(const TraceEvent& event, TimelineThreadState& threadState)
{
unsigned long long layerId = event.asUInt(InstrumentationEventArguments::LayerId);
- if (!m_knownLayers.contains(layerId))
+ if (!m_layerToNodeMap.contains(layerId))
return false;
ASSERT(!threadState.inKnownLayerTask);
threadState.inKnownLayerTask = true;
@@ -304,7 +307,7 @@ void TimelineTraceEventProcessor::onLayerDeleted(const TraceEvent& event)
unsigned long long id = event.id();
ASSERT(id);
processBackgroundEvents();
- m_knownLayers.remove(id);
+ m_layerToNodeMap.remove(id);
}
void TimelineTraceEventProcessor::onPaint(const TraceEvent& event)
@@ -313,8 +316,11 @@ void TimelineTraceEventProcessor::onPaint(const TraceEvent& event)
return;
unsigned long long pageId = event.asUInt(InstrumentationEventArguments::PageId);
- if (pageId == m_pageId)
- m_knownLayers.add(m_layerId);
+ if (pageId != m_pageId)
+ return;
+ long long nodeId = event.asInt(InstrumentationEventArguments::NodeId);
+ ASSERT(nodeId);
+ m_layerToNodeMap.set(m_layerId, nodeId);
}
PassRefPtr<InspectorObject> TimelineTraceEventProcessor::createRecord(const TraceEvent& event, const String& recordType, PassRefPtr<InspectorObject> data)
« no previous file with comments | « Source/core/inspector/TimelineTraceEventProcessor.h ('k') | Source/devtools/front_end/TimelinePresentationModel.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698