Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 /** | 4 /** |
| 5 * @unrestricted | 5 * @unrestricted |
| 6 */ | 6 */ |
| 7 Timeline.TimelineTreeView = class extends UI.VBox { | 7 Timeline.TimelineTreeView = class extends UI.VBox { |
| 8 constructor() { | 8 constructor() { |
| 9 super(); | 9 super(); |
| 10 this.element.classList.add('timeline-tree-view'); | 10 this.element.classList.add('timeline-tree-view'); |
| (...skipping 488 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 499 switch (this._groupBySetting.get()) { | 499 switch (this._groupBySetting.get()) { |
| 500 case Timeline.AggregatedTimelineTreeView.GroupBy.Category: | 500 case Timeline.AggregatedTimelineTreeView.GroupBy.Category: |
| 501 var category = categories[node.id] || categories['other']; | 501 var category = categories[node.id] || categories['other']; |
| 502 return {name: category.title, color: category.color}; | 502 return {name: category.title, color: category.color}; |
| 503 | 503 |
| 504 case Timeline.AggregatedTimelineTreeView.GroupBy.Domain: | 504 case Timeline.AggregatedTimelineTreeView.GroupBy.Domain: |
| 505 case Timeline.AggregatedTimelineTreeView.GroupBy.Subdomain: | 505 case Timeline.AggregatedTimelineTreeView.GroupBy.Subdomain: |
| 506 var name = node.id; | 506 var name = node.id; |
| 507 if (Timeline.AggregatedTimelineTreeView._isExtensionInternalURL(name)) | 507 if (Timeline.AggregatedTimelineTreeView._isExtensionInternalURL(name)) |
| 508 name = Common.UIString('[Chrome extensions overhead]'); | 508 name = Common.UIString('[Chrome extensions overhead]'); |
| 509 else if (Timeline.AggregatedTimelineTreeView._isV8NativeURL(name)) | |
| 510 name = Common.UIString('[V8 Runtime]'); | |
| 509 else if (name.startsWith('chrome-extension')) | 511 else if (name.startsWith('chrome-extension')) |
| 510 name = this._executionContextNamesByOrigin.get(name) || name; | 512 name = this._executionContextNamesByOrigin.get(name) || name; |
| 511 return {name: name || Common.UIString('unattributed'), color: color}; | 513 return {name: name || Common.UIString('unattributed'), color: color}; |
| 512 | 514 |
| 513 case Timeline.AggregatedTimelineTreeView.GroupBy.EventName: | 515 case Timeline.AggregatedTimelineTreeView.GroupBy.EventName: |
| 514 var name = node.event.name === TimelineModel.TimelineModel.RecordType.JS Frame ? | 516 var name = node.event.name === TimelineModel.TimelineModel.RecordType.JS Frame ? |
| 515 Common.UIString('JavaScript') : | 517 Common.UIString('JavaScript') : |
| 516 Timeline.TimelineUIUtils.eventTitle(node.event); | 518 Timeline.TimelineUIUtils.eventTitle(node.event); |
| 517 return { | 519 return { |
| 518 name: name, | 520 name: name, |
| (...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 628 | 630 |
| 629 /** | 631 /** |
| 630 * @param {boolean} groupSubdomains | 632 * @param {boolean} groupSubdomains |
| 631 * @param {!SDK.TracingModel.Event} event | 633 * @param {!SDK.TracingModel.Event} event |
| 632 * @return {string} | 634 * @return {string} |
| 633 */ | 635 */ |
| 634 function groupByDomain(groupSubdomains, event) { | 636 function groupByDomain(groupSubdomains, event) { |
| 635 var url = TimelineModel.TimelineProfileTree.eventURL(event) || ''; | 637 var url = TimelineModel.TimelineProfileTree.eventURL(event) || ''; |
| 636 if (Timeline.AggregatedTimelineTreeView._isExtensionInternalURL(url)) | 638 if (Timeline.AggregatedTimelineTreeView._isExtensionInternalURL(url)) |
| 637 return Timeline.AggregatedTimelineTreeView._extensionInternalPrefix; | 639 return Timeline.AggregatedTimelineTreeView._extensionInternalPrefix; |
| 640 if (Timeline.AggregatedTimelineTreeView._isV8NativeURL(url)) | |
| 641 return Timeline.AggregatedTimelineTreeView._V8NativePrefix; | |
| 638 var parsedURL = url.asParsedURL(); | 642 var parsedURL = url.asParsedURL(); |
| 639 if (!parsedURL) | 643 if (!parsedURL) |
| 640 return ''; | 644 return ''; |
| 641 if (parsedURL.scheme === 'chrome-extension') | 645 if (parsedURL.scheme === 'chrome-extension') |
| 642 return parsedURL.scheme + '://' + parsedURL.host; | 646 return parsedURL.scheme + '://' + parsedURL.host; |
| 643 if (!groupSubdomains) | 647 if (!groupSubdomains) |
| 644 return parsedURL.host; | 648 return parsedURL.host; |
| 645 if (/^[.0-9]+$/.test(parsedURL.host)) | 649 if (/^[.0-9]+$/.test(parsedURL.host)) |
| 646 return parsedURL.host; | 650 return parsedURL.host; |
| 647 var domainMatch = /([^.]*\.)?[^.]*$/.exec(parsedURL.host); | 651 var domainMatch = /([^.]*\.)?[^.]*$/.exec(parsedURL.host); |
| (...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 684 contextMenu.appendApplicableItems(frame.ownerNode); | 688 contextMenu.appendApplicableItems(frame.ownerNode); |
| 685 } | 689 } |
| 686 | 690 |
| 687 /** | 691 /** |
| 688 * @param {string} url | 692 * @param {string} url |
| 689 * @return {boolean} | 693 * @return {boolean} |
| 690 */ | 694 */ |
| 691 static _isExtensionInternalURL(url) { | 695 static _isExtensionInternalURL(url) { |
| 692 return url.startsWith(Timeline.AggregatedTimelineTreeView._extensionInternal Prefix); | 696 return url.startsWith(Timeline.AggregatedTimelineTreeView._extensionInternal Prefix); |
| 693 } | 697 } |
| 698 | |
| 699 /** | |
| 700 * @param {string} url | |
| 701 * @return {boolean} | |
| 702 */ | |
| 703 static _isV8NativeURL(url) { | |
| 704 return url.startsWith(Timeline.AggregatedTimelineTreeView._V8NativePrefix); | |
| 705 } | |
| 694 }; | 706 }; |
| 695 | 707 |
| 696 Timeline.AggregatedTimelineTreeView._extensionInternalPrefix = 'extensions::'; | 708 Timeline.AggregatedTimelineTreeView._extensionInternalPrefix = 'extensions::'; |
| 709 Timeline.AggregatedTimelineTreeView._V8NativePrefix = 'native '; | |
|
caseq
2017/01/09 20:35:24
_v8NativePreifix
| |
| 697 | 710 |
| 698 /** | 711 /** |
| 699 * @enum {string} | 712 * @enum {string} |
| 700 */ | 713 */ |
| 701 Timeline.AggregatedTimelineTreeView.GroupBy = { | 714 Timeline.AggregatedTimelineTreeView.GroupBy = { |
| 702 None: 'None', | 715 None: 'None', |
| 703 EventName: 'EventName', | 716 EventName: 'EventName', |
| 704 Category: 'Category', | 717 Category: 'Category', |
| 705 Domain: 'Domain', | 718 Domain: 'Domain', |
| 706 Subdomain: 'Subdomain', | 719 Subdomain: 'Subdomain', |
| (...skipping 230 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 937 | 950 |
| 938 _onSelectionChanged() { | 951 _onSelectionChanged() { |
| 939 this.dispatchEventToListeners(Timeline.TimelineStackView.Events.SelectionCha nged); | 952 this.dispatchEventToListeners(Timeline.TimelineStackView.Events.SelectionCha nged); |
| 940 } | 953 } |
| 941 }; | 954 }; |
| 942 | 955 |
| 943 /** @enum {symbol} */ | 956 /** @enum {symbol} */ |
| 944 Timeline.TimelineStackView.Events = { | 957 Timeline.TimelineStackView.Events = { |
| 945 SelectionChanged: Symbol('SelectionChanged') | 958 SelectionChanged: Symbol('SelectionChanged') |
| 946 }; | 959 }; |
| OLD | NEW |