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 |