Index: Source/devtools/front_end/timeline/TracingTimelineUIUtils.js |
diff --git a/Source/devtools/front_end/timeline/TracingTimelineUIUtils.js b/Source/devtools/front_end/timeline/TracingTimelineUIUtils.js |
index 571942273573601cbe92eee0adc1cc2f9588aebb..50cf0d35039c83db4dcd323798233cdd0df5d118 100644 |
--- a/Source/devtools/front_end/timeline/TracingTimelineUIUtils.js |
+++ b/Source/devtools/front_end/timeline/TracingTimelineUIUtils.js |
@@ -41,6 +41,15 @@ WebInspector.TracingTimelineUIUtils.prototype = { |
/** |
* @param {!WebInspector.TimelineModel.Record} record |
+ * @return {boolean} |
+ */ |
+ isEventDivider: function(record) |
+ { |
+ return WebInspector.TracingTimelineUIUtils.isEventDivider(record); |
+ }, |
+ |
+ /** |
+ * @param {!WebInspector.TimelineModel.Record} record |
* @return {?Object} |
*/ |
countersForRecord: function(record) |
@@ -83,6 +92,16 @@ WebInspector.TracingTimelineUIUtils.prototype = { |
WebInspector.TracingTimelineUIUtils.buildTraceEventDetails(record.traceEvent(), tracingTimelineModel, linkifier, callback, loadedFromFile, record.target()); |
}, |
+ /** |
+ * @param {string} recordType |
+ * @param {string=} title |
+ * @return {!Element} |
+ */ |
+ createEventDivider: function(recordType, title) |
+ { |
+ return WebInspector.TracingTimelineUIUtils._createEventDivider(recordType, title); |
+ }, |
+ |
__proto__: WebInspector.TimelineUIUtils.prototype |
} |
@@ -192,6 +211,22 @@ WebInspector.TracingTimelineUIUtils.styleForTraceEvent = function(name) |
} |
/** |
+ * @param {!WebInspector.TimelineModel.Record} record |
+ * @return {boolean} |
+ */ |
+WebInspector.TracingTimelineUIUtils.isEventDivider = function(record) |
+{ |
+ var recordTypes = WebInspector.TracingTimelineModel.RecordType; |
+ if (record.type() === recordTypes.TimeStamp) |
+ return true; |
+ if (record.type() === recordTypes.MarkFirstPaint) |
+ return true; |
+ if (record.type() === recordTypes.MarkDOMContent || record.type() === recordTypes.MarkLoad) |
+ return record.data()["isMainFrame"]; |
+ return false; |
+} |
+ |
+/** |
* @param {!WebInspector.TracingModel.Event} event |
* @param {!WebInspector.Linkifier} linkifier |
* @param {boolean} loadedFromFile |
@@ -629,3 +664,31 @@ WebInspector.TracingTimelineUIUtils._buildPicturePreviewContent = function(encod |
callback(container); |
} |
} |
+ |
+/** |
+ * @param {string} recordType |
+ * @param {string=} title |
+ * @return {!Element} |
+ */ |
+WebInspector.TracingTimelineUIUtils._createEventDivider = function(recordType, title) |
+{ |
+ var eventDivider = document.createElement("div"); |
+ eventDivider.className = "resources-event-divider"; |
+ var recordTypes = WebInspector.TracingTimelineModel.RecordType; |
+ |
+ if (recordType === recordTypes.MarkDOMContent) |
+ eventDivider.className += " resources-blue-divider"; |
+ else if (recordType === recordTypes.MarkLoad) |
+ eventDivider.className += " resources-red-divider"; |
+ else if (recordType === recordTypes.MarkFirstPaint) |
+ eventDivider.className += " resources-green-divider"; |
+ else if (recordType === recordTypes.TimeStamp) |
+ eventDivider.className += " resources-orange-divider"; |
+ else if (recordType === recordTypes.BeginFrame) |
+ eventDivider.className += " timeline-frame-divider"; |
+ |
+ if (title) |
+ eventDivider.title = title; |
+ |
+ return eventDivider; |
+} |