Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 /* | 1 /* |
| 2 * Copyright (C) 2013 Google Inc. All rights reserved. | 2 * Copyright (C) 2013 Google Inc. All rights reserved. |
| 3 * Copyright (C) 2012 Intel Inc. All rights reserved. | 3 * Copyright (C) 2012 Intel Inc. All rights reserved. |
| 4 * | 4 * |
| 5 * Redistribution and use in source and binary forms, with or without | 5 * Redistribution and use in source and binary forms, with or without |
| 6 * modification, are permitted provided that the following conditions are | 6 * modification, are permitted provided that the following conditions are |
| 7 * met: | 7 * met: |
| 8 * | 8 * |
| 9 * * Redistributions of source code must retain the above copyright | 9 * * Redistributions of source code must retain the above copyright |
| 10 * notice, this list of conditions and the following disclaimer. | 10 * notice, this list of conditions and the following disclaimer. |
| (...skipping 719 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 730 * @param {?Element} imagePreviewElement | 730 * @param {?Element} imagePreviewElement |
| 731 * @param {?WebInspector.DOMNode} relatedNode | 731 * @param {?WebInspector.DOMNode} relatedNode |
| 732 * @param {boolean} loadedFromFile | 732 * @param {boolean} loadedFromFile |
| 733 * @param {?WebInspector.TimelineTraceEventBindings} bindings | 733 * @param {?WebInspector.TimelineTraceEventBindings} bindings |
| 734 * @param {!WebInspector.Target} target | 734 * @param {!WebInspector.Target} target |
| 735 * @return {!DocumentFragment} | 735 * @return {!DocumentFragment} |
| 736 */ | 736 */ |
| 737 WebInspector.TimelineUIUtils._buildTraceEventDetailsSynchronously = function(eve nt, model, linkifier, imagePreviewElement, relatedNode, loadedFromFile, bindings , target) | 737 WebInspector.TimelineUIUtils._buildTraceEventDetailsSynchronously = function(eve nt, model, linkifier, imagePreviewElement, relatedNode, loadedFromFile, bindings , target) |
| 738 { | 738 { |
| 739 var fragment = document.createDocumentFragment(); | 739 var fragment = document.createDocumentFragment(); |
| 740 var stats = WebInspector.TimelineUIUtils._aggregatedStatsForTraceEvent(model , event); | |
| 741 fragment.appendChild(WebInspector.TimelineUIUtils.generatePieChart(stats)); | |
| 742 | |
| 740 var recordTypes = WebInspector.TimelineModel.RecordType; | 743 var recordTypes = WebInspector.TimelineModel.RecordType; |
| 741 | 744 |
| 742 // The messages may vary per event.name; | 745 // The messages may vary per event.name; |
| 743 var callSiteStackTraceLabel; | 746 var callSiteStackTraceLabel; |
| 744 var callStackLabel; | 747 var callStackLabel; |
| 745 var relatedNodeLabel; | 748 var relatedNodeLabel; |
| 746 | 749 |
| 747 var contentHelper = new WebInspector.TimelineDetailsContentHelper(target, li nkifier, true); | 750 var contentHelper = new WebInspector.TimelineDetailsContentHelper(target, li nkifier, true); |
| 748 contentHelper.appendTextRow(WebInspector.UIString("Self Time"), Number.milli sToString(event.selfTime / 1000, true)); | 751 contentHelper.appendTextRow(WebInspector.UIString("Self Time"), Number.milli sToString(event.selfTime / 1000, true)); |
| 749 contentHelper.appendTextRow(WebInspector.UIString("Start Time"), Number.mill isToString((event.startTime - model.minimumRecordTime()) / 1000)); | 752 contentHelper.appendTextRow(WebInspector.UIString("Start Time"), Number.mill isToString((event.startTime - model.minimumRecordTime()) / 1000)); |
| (...skipping 126 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 876 if (warning) { | 879 if (warning) { |
| 877 var div = document.createElement("div"); | 880 var div = document.createElement("div"); |
| 878 div.textContent = warning; | 881 div.textContent = warning; |
| 879 contentHelper.appendElementRow(WebInspector.UIString("Warning"), div); | 882 contentHelper.appendElementRow(WebInspector.UIString("Warning"), div); |
| 880 } | 883 } |
| 881 fragment.appendChild(contentHelper.element); | 884 fragment.appendChild(contentHelper.element); |
| 882 return fragment; | 885 return fragment; |
| 883 } | 886 } |
| 884 | 887 |
| 885 /** | 888 /** |
| 889 * @param {!WebInspector.TracingModel} model | |
| 890 * @param {!WebInspector.TracingModel.Event} event | |
| 891 * @return {!Object} | |
| 892 */ | |
| 893 WebInspector.TimelineUIUtils._aggregatedStatsForTraceEvent = function(model, eve nt) | |
| 894 { | |
| 895 var events = model.inspectedTargetEvents(); | |
| 896 /** | |
| 897 * @param {number} startTime | |
| 898 * @param {!WebInspector.TracingModel.Event} e | |
| 899 * @return {number} | |
| 900 */ | |
| 901 function eventComparator(startTime, e) | |
| 902 { | |
| 903 return startTime - e.startTime; | |
| 904 } | |
| 905 var index = events.binaryIndexOf(event.startTime, eventComparator); | |
| 906 var aggregatedStats = {}; | |
| 907 var endTime = event.endTime; | |
| 908 if (!endTime) | |
| 909 return aggregatedStats; | |
| 910 for (;index < events.length; index++) { | |
|
alph
2014/05/28 18:43:14
missing space
yurys
2014/05/28 19:18:41
Done.
| |
| 911 var nextEvent = events[index]; | |
| 912 if (nextEvent.startTime > endTime) | |
| 913 break; | |
| 914 if (!nextEvent.selfTime) | |
| 915 continue; | |
| 916 var category = WebInspector.TimelineUIUtils.styleForTimelineEvent(nextEv ent.name).category.name; | |
| 917 aggregatedStats[category] = (aggregatedStats[category] || 0) + nextEvent .selfTime; | |
| 918 } | |
| 919 return aggregatedStats; | |
| 920 } | |
| 921 | |
| 922 /** | |
| 886 * @param {!Array.<number>} quad | 923 * @param {!Array.<number>} quad |
| 887 * @return {number} | 924 * @return {number} |
| 888 */ | 925 */ |
| 889 WebInspector.TimelineUIUtils._quadHeight = function(quad) | 926 WebInspector.TimelineUIUtils._quadHeight = function(quad) |
| 890 { | 927 { |
| 891 return Math.round(Math.sqrt(Math.pow(quad[0] - quad[6], 2) + Math.pow(quad[1 ] - quad[7], 2))); | 928 return Math.round(Math.sqrt(Math.pow(quad[0] - quad[6], 2) + Math.pow(quad[1 ] - quad[7], 2))); |
| 892 } | 929 } |
| 893 | 930 |
| 894 /** | 931 /** |
| 895 * @param {!WebInspector.TimelineModel.Record} record | 932 * @param {!WebInspector.TimelineModel.Record} record |
| (...skipping 446 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1342 for (var i = 0; i < stackTrace.length; ++i) { | 1379 for (var i = 0; i < stackTrace.length; ++i) { |
| 1343 var stackFrame = stackTrace[i]; | 1380 var stackFrame = stackTrace[i]; |
| 1344 var row = stackTraceElement.createChild("div"); | 1381 var row = stackTraceElement.createChild("div"); |
| 1345 row.createTextChild(stackFrame.functionName || WebInspector.UIString ("(anonymous function)")); | 1382 row.createTextChild(stackFrame.functionName || WebInspector.UIString ("(anonymous function)")); |
| 1346 row.createTextChild(" @ "); | 1383 row.createTextChild(" @ "); |
| 1347 var urlElement = this._linkifier.linkifyLocation(this._target, stack Frame.url, stackFrame.lineNumber - 1); | 1384 var urlElement = this._linkifier.linkifyLocation(this._target, stack Frame.url, stackFrame.lineNumber - 1); |
| 1348 row.appendChild(urlElement); | 1385 row.appendChild(urlElement); |
| 1349 } | 1386 } |
| 1350 } | 1387 } |
| 1351 } | 1388 } |
| OLD | NEW |