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

Side by Side Diff: Source/devtools/front_end/timeline/TracingTimelineUIUtils.js

Issue 316553005: Timeline: add trace event to style/category mapping to TracingTimelineUIUtils (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 years, 6 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 unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « Source/devtools/front_end/timeline/TimelineTraceEventBindings.js ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // 1 //
2 // Copyright 2014 The Chromium Authors. All rights reserved. 2 // Copyright 2014 The Chromium Authors. All rights reserved.
3 // Use of this source code is governed by a BSD-style license that can be 3 // Use of this source code is governed by a BSD-style license that can be
4 // found in the LICENSE file. 4 // found in the LICENSE file.
5 // 5 //
6 6
7 /** 7 /**
8 */ 8 */
9 WebInspector.TracingTimelineUIUtils = function() { } 9 WebInspector.TracingTimelineUIUtils = function() { }
10 10
11 /** 11 /**
12 * @return {!Object.<string, !{title: string, category: !WebInspector.TimelineCa tegory}>}
13 */
14 WebInspector.TracingTimelineUIUtils._initEventStyles = function()
15 {
16 if (WebInspector.TracingTimelineUIUtils._eventStylesMap)
17 return WebInspector.TracingTimelineUIUtils._eventStylesMap;
18
19 var recordTypes = WebInspector.TimelineTraceEventBindings.RecordType;
20 var categories = WebInspector.TimelineUIUtils.categories();
21
22 var eventStyles = {};
23 eventStyles[recordTypes.Program] = { title: WebInspector.UIString("Other"), category: categories["other"] };
yurys 2014/06/04 06:56:52 Consider adding WebInspector.TracingTimelineUIUti
24 eventStyles[recordTypes.EventDispatch] = { title: WebInspector.UIString("Eve nt"), category: categories["scripting"] };
25 eventStyles[recordTypes.RequestMainThreadFrame] = { title: WebInspector.UISt ring("Request Main Thread Frame"), category: categories["rendering"] };
26 eventStyles[recordTypes.BeginFrame] = { title: WebInspector.UIString("Frame Start"), category: categories["rendering"] };
27 eventStyles[recordTypes.BeginMainThreadFrame] = { title: WebInspector.UIStri ng("Frame Start (main thread)"), category: categories["rendering"] };
28 eventStyles[recordTypes.DrawFrame] = { title: WebInspector.UIString("Draw Fr ame"), category: categories["rendering"] };
29 eventStyles[recordTypes.ScheduleStyleRecalculation] = { title: WebInspector. UIString("Schedule Style Recalculation"), category: categories["rendering"] };
30 eventStyles[recordTypes.RecalculateStyles] = { title: WebInspector.UIString( "Recalculate Style"), category: categories["rendering"] };
31 eventStyles[recordTypes.InvalidateLayout] = { title: WebInspector.UIString(" Invalidate Layout"), category: categories["rendering"] };
32 eventStyles[recordTypes.Layout] = { title: WebInspector.UIString("Layout"), category: categories["rendering"] };
33 eventStyles[recordTypes.PaintSetup] = { title: WebInspector.UIString("Paint Setup"), category: categories["painting"] };
34 eventStyles[recordTypes.Paint] = { title: WebInspector.UIString("Paint"), ca tegory: categories["painting"] };
35 eventStyles[recordTypes.Rasterize] = { title: WebInspector.UIString("Paint") , category: categories["painting"] };
36 eventStyles[recordTypes.RasterTask] = { title: WebInspector.UIString("Paint" ), category: categories["painting"] };
37 eventStyles[recordTypes.ScrollLayer] = { title: WebInspector.UIString("Scrol l"), category: categories["rendering"] };
38 eventStyles[recordTypes.CompositeLayers] = { title: WebInspector.UIString("C omposite Layers"), category: categories["painting"] };
39 eventStyles[recordTypes.ParseHTML] = { title: WebInspector.UIString("Parse H TML"), category: categories["loading"] };
40 eventStyles[recordTypes.TimerInstall] = { title: WebInspector.UIString("Inst all Timer"), category: categories["scripting"] };
41 eventStyles[recordTypes.TimerRemove] = { title: WebInspector.UIString("Remov e Timer"), category: categories["scripting"] };
42 eventStyles[recordTypes.TimerFire] = { title: WebInspector.UIString("Timer F ired"), category: categories["scripting"] };
43 eventStyles[recordTypes.XHRReadyStateChange] = { title: WebInspector.UIStrin g("XHR Ready State Change"), category: categories["scripting"] };
44 eventStyles[recordTypes.XHRLoad] = { title: WebInspector.UIString("XHR Load" ), category: categories["scripting"] };
45 eventStyles[recordTypes.EvaluateScript] = { title: WebInspector.UIString("Ev aluate Script"), category: categories["scripting"] };
46 eventStyles[recordTypes.MarkLoad] = { title: WebInspector.UIString("Load eve nt"), category: categories["scripting"] };
47 eventStyles[recordTypes.MarkDOMContent] = { title: WebInspector.UIString("DO MContentLoaded event"), category: categories["scripting"] };
48 eventStyles[recordTypes.MarkFirstPaint] = { title: WebInspector.UIString("Fi rst paint"), category: categories["painting"] };
49 eventStyles[recordTypes.TimeStamp] = { title: WebInspector.UIString("Stamp") , category: categories["scripting"] };
50 eventStyles[recordTypes.ConsoleTime] = { title: WebInspector.UIString("Conso le Time"), category: categories["scripting"] };
51 eventStyles[recordTypes.ResourceSendRequest] = { title: WebInspector.UIStrin g("Send Request"), category: categories["loading"] };
52 eventStyles[recordTypes.ResourceReceiveResponse] = { title: WebInspector.UIS tring("Receive Response"), category: categories["loading"] };
53 eventStyles[recordTypes.ResourceFinish] = { title: WebInspector.UIString("Fi nish Loading"), category: categories["loading"] };
54 eventStyles[recordTypes.ResourceReceivedData] = { title: WebInspector.UIStri ng("Receive Data"), category: categories["loading"] };
55 eventStyles[recordTypes.FunctionCall] = { title: WebInspector.UIString("Func tion Call"), category: categories["scripting"] };
56 eventStyles[recordTypes.GCEvent] = { title: WebInspector.UIString("GC Event" ), category: categories["scripting"] };
57 eventStyles[recordTypes.JSFrame] = { title: WebInspector.UIString("JS Frame" ), category: categories["scripting"] };
58 eventStyles[recordTypes.RequestAnimationFrame] = { title: WebInspector.UIStr ing("Request Animation Frame"), category: categories["scripting"] };
59 eventStyles[recordTypes.CancelAnimationFrame] = { title: WebInspector.UIStri ng("Cancel Animation Frame"), category: categories["scripting"] };
60 eventStyles[recordTypes.FireAnimationFrame] = { title: WebInspector.UIString ("Animation Frame Fired"), category: categories["scripting"] };
61 eventStyles[recordTypes.WebSocketCreate] = { title: WebInspector.UIString("C reate WebSocket"), category: categories["scripting"] };
62 eventStyles[recordTypes.WebSocketSendHandshakeRequest] = { title: WebInspect or.UIString("Send WebSocket Handshake"), category: categories["scripting"] };
63 eventStyles[recordTypes.WebSocketReceiveHandshakeResponse] = { title: WebIns pector.UIString("Receive WebSocket Handshake"), category: categories["scripting" ] };
64 eventStyles[recordTypes.WebSocketDestroy] = { title: WebInspector.UIString(" Destroy WebSocket"), category: categories["scripting"] };
65 eventStyles[recordTypes.EmbedderCallback] = { title: WebInspector.UIString(" Embedder Callback"), category: categories["scripting"] };
66 eventStyles[recordTypes.DecodeImage] = { title: WebInspector.UIString("Image Decode"), category: categories["painting"] };
67 eventStyles[recordTypes.ResizeImage] = { title: WebInspector.UIString("Image Resize"), category: categories["painting"] };
68
69 WebInspector.TracingTimelineUIUtils._eventStylesMap = eventStyles;
70 return eventStyles;
71 }
72
73 /**
74 * @param {!WebInspector.TracingModel.Event} event
75 * @return {!{title: string, category: !WebInspector.TimelineCategory}}
76 */
77 WebInspector.TracingTimelineUIUtils.eventStyle = function(event)
78 {
79 return WebInspector.TracingTimelineUIUtils.styleForTraceEvent(event.name);
80 }
81
82 /**
83 * @param {string} name
84 * @return {!{title: string, category: !WebInspector.TimelineCategory}}
85 */
86 WebInspector.TracingTimelineUIUtils.styleForTraceEvent = function(name)
87 {
88 var eventStyles = WebInspector.TracingTimelineUIUtils._initEventStyles();
89 var result = eventStyles[name];
90 if (!result) {
91 result = {
92 title: WebInspector.UIString("Unknown: %s", name),
93 category: WebInspector.TimelineUIUtils.categories()["other"]
94 };
95 eventStyles[name] = result;
96 }
97 return result;
98 }
99
100 /**
12 * @param {!WebInspector.TracingModel.Event} event 101 * @param {!WebInspector.TracingModel.Event} event
13 * @param {!WebInspector.Linkifier} linkifier 102 * @param {!WebInspector.Linkifier} linkifier
14 * @param {boolean} loadedFromFile 103 * @param {boolean} loadedFromFile
15 * @param {?WebInspector.TimelineTraceEventBindings} bindings 104 * @param {?WebInspector.TimelineTraceEventBindings} bindings
16 * @param {!WebInspector.Target} target 105 * @param {!WebInspector.Target} target
17 * @return {?Node} 106 * @return {?Node}
18 */ 107 */
19 WebInspector.TracingTimelineUIUtils.buildDetailsNodeForTraceEvent = function(eve nt, linkifier, loadedFromFile, bindings, target) 108 WebInspector.TracingTimelineUIUtils.buildDetailsNodeForTraceEvent = function(eve nt, linkifier, loadedFromFile, bindings, target)
20 { 109 {
21 var recordType = WebInspector.TimelineTraceEventBindings.RecordType; 110 var recordType = WebInspector.TimelineTraceEventBindings.RecordType;
(...skipping 189 matching lines...) Expand 10 before | Expand all | Expand 10 after
211 * @param {boolean} loadedFromFile 300 * @param {boolean} loadedFromFile
212 * @param {?WebInspector.TimelineTraceEventBindings} bindings 301 * @param {?WebInspector.TimelineTraceEventBindings} bindings
213 * @param {!WebInspector.Target} target 302 * @param {!WebInspector.Target} target
214 * @return {!DocumentFragment} 303 * @return {!DocumentFragment}
215 */ 304 */
216 WebInspector.TracingTimelineUIUtils._buildTraceEventDetailsSynchronously = funct ion(event, model, linkifier, relatedNode, loadedFromFile, bindings, target) 305 WebInspector.TracingTimelineUIUtils._buildTraceEventDetailsSynchronously = funct ion(event, model, linkifier, relatedNode, loadedFromFile, bindings, target)
217 { 306 {
218 var fragment = document.createDocumentFragment(); 307 var fragment = document.createDocumentFragment();
219 var stats = WebInspector.TracingTimelineUIUtils._aggregatedStatsForTraceEven t(model, event); 308 var stats = WebInspector.TracingTimelineUIUtils._aggregatedStatsForTraceEven t(model, event);
220 var pieChart = stats.hasChildren ? 309 var pieChart = stats.hasChildren ?
221 WebInspector.TimelineUIUtils.generatePieChart(stats.aggregatedStats, Web Inspector.TimelineUIUtils.styleForTimelineEvent(event.name).category, event.self Time / 1000) : 310 WebInspector.TimelineUIUtils.generatePieChart(stats.aggregatedStats, Web Inspector.TracingTimelineUIUtils.styleForTraceEvent(event.name).category, event. selfTime / 1000) :
222 WebInspector.TimelineUIUtils.generatePieChart(stats.aggregatedStats); 311 WebInspector.TimelineUIUtils.generatePieChart(stats.aggregatedStats);
223 fragment.appendChild(pieChart); 312 fragment.appendChild(pieChart);
224 313
225 var recordTypes = WebInspector.TimelineTraceEventBindings.RecordType; 314 var recordTypes = WebInspector.TimelineTraceEventBindings.RecordType;
226 315
227 // The messages may vary per event.name; 316 // The messages may vary per event.name;
228 var callSiteStackTraceLabel; 317 var callSiteStackTraceLabel;
229 var callStackLabel; 318 var callStackLabel;
230 var relatedNodeLabel; 319 var relatedNodeLabel;
231 320
(...skipping 162 matching lines...) Expand 10 before | Expand all | Expand 10 after
394 var endTime = event.endTime; 483 var endTime = event.endTime;
395 if (endTime) { 484 if (endTime) {
396 for (var i = index; i < events.length; i++) { 485 for (var i = index; i < events.length; i++) {
397 var nextEvent = events[i]; 486 var nextEvent = events[i];
398 if (nextEvent.startTime >= endTime) 487 if (nextEvent.startTime >= endTime)
399 break; 488 break;
400 if (!nextEvent.selfTime) 489 if (!nextEvent.selfTime)
401 continue; 490 continue;
402 if (i > index) 491 if (i > index)
403 hasChildren = true; 492 hasChildren = true;
404 var category = WebInspector.TimelineUIUtils.styleForTimelineEvent(ne xtEvent.name).category.name; 493 var category = WebInspector.TracingTimelineUIUtils.styleForTraceEven t(nextEvent.name).category.name;
405 aggregatedStats[category] = (aggregatedStats[category] || 0) + nextE vent.selfTime / 1000; 494 aggregatedStats[category] = (aggregatedStats[category] || 0) + nextE vent.selfTime / 1000;
406 } 495 }
407 } 496 }
408 return { aggregatedStats: aggregatedStats, hasChildren: hasChildren }; 497 return { aggregatedStats: aggregatedStats, hasChildren: hasChildren };
409 } 498 }
410 499
411 500
OLDNEW
« no previous file with comments | « Source/devtools/front_end/timeline/TimelineTraceEventBindings.js ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698