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

Side by Side Diff: third_party/WebKit/Source/devtools/front_end/timeline/TimelinePanel.js

Issue 2580903003: DevTools: Rearrange Timeline toolbar for landing page mode (Closed)
Patch Set: addressing comments Created 4 years 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
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2012 Google Inc. All rights reserved. 2 * Copyright (C) 2012 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 26 matching lines...) Expand all
37 */ 37 */
38 Timeline.TimelinePanel = class extends UI.Panel { 38 Timeline.TimelinePanel = class extends UI.Panel {
39 constructor() { 39 constructor() {
40 super('timeline'); 40 super('timeline');
41 this.registerRequiredCSS('timeline/timelinePanel.css'); 41 this.registerRequiredCSS('timeline/timelinePanel.css');
42 this.element.addEventListener('contextmenu', this._contextMenu.bind(this), f alse); 42 this.element.addEventListener('contextmenu', this._contextMenu.bind(this), f alse);
43 this._dropTarget = new UI.DropTarget( 43 this._dropTarget = new UI.DropTarget(
44 this.element, [UI.DropTarget.Types.Files, UI.DropTarget.Types.URIList], 44 this.element, [UI.DropTarget.Types.Files, UI.DropTarget.Types.URIList],
45 Common.UIString('Drop timeline file or URL here'), this._handleDrop.bind (this)); 45 Common.UIString('Drop timeline file or URL here'), this._handleDrop.bind (this));
46 46
47 /** @type {!Array<!UI.ToolbarItem>} */
48 this._recordingOptionUIControls = [];
47 this._state = Timeline.TimelinePanel.State.Idle; 49 this._state = Timeline.TimelinePanel.State.Idle;
48 this._detailsLinkifier = new Components.Linkifier(); 50 this._detailsLinkifier = new Components.Linkifier();
49 this._windowStartTime = 0; 51 this._windowStartTime = 0;
50 this._windowEndTime = Infinity; 52 this._windowEndTime = Infinity;
51 this._millisecondsToRecordAfterLoadEvent = 3000; 53 this._millisecondsToRecordAfterLoadEvent = 3000;
52 this._toggleRecordAction = 54 this._toggleRecordAction =
53 /** @type {!UI.Action }*/ (UI.actionRegistry.action('timeline.toggle-rec ording')); 55 /** @type {!UI.Action }*/ (UI.actionRegistry.action('timeline.toggle-rec ording'));
54 56
55 /** @type {!Array<!TimelineModel.TimelineModel.Filter>} */ 57 /** @type {!Array<!TimelineModel.TimelineModel.Filter>} */
56 this._filters = []; 58 this._filters = [];
(...skipping 16 matching lines...) Expand all
73 75
74 /** @type {!Array<!Timeline.TimelineModeView>} */ 76 /** @type {!Array<!Timeline.TimelineModeView>} */
75 this._currentViews = []; 77 this._currentViews = [];
76 78
77 this._captureNetworkSetting = Common.settings.createSetting('timelineCapture Network', false); 79 this._captureNetworkSetting = Common.settings.createSetting('timelineCapture Network', false);
78 this._captureJSProfileSetting = Common.settings.createSetting('timelineEnabl eJSSampling', true); 80 this._captureJSProfileSetting = Common.settings.createSetting('timelineEnabl eJSSampling', true);
79 this._captureMemorySetting = Common.settings.createSetting('timelineCaptureM emory', false); 81 this._captureMemorySetting = Common.settings.createSetting('timelineCaptureM emory', false);
80 this._captureLayersAndPicturesSetting = Common.settings.createSetting('timel ineCaptureLayersAndPictures', false); 82 this._captureLayersAndPicturesSetting = Common.settings.createSetting('timel ineCaptureLayersAndPictures', false);
81 this._captureFilmStripSetting = Common.settings.createSetting('timelineCaptu reFilmStrip', false); 83 this._captureFilmStripSetting = Common.settings.createSetting('timelineCaptu reFilmStrip', false);
82 84
85 this._showScreenshotsSetting = Common.settings.createLocalSetting('timelineS howScreenshots', false);
86 this._showScreenshotsSetting.addChangeListener(this._onModeChanged, this);
87 this._showMemorySetting = Common.settings.createLocalSetting('timelineShowMe mory', false);
88 this._showMemorySetting.addChangeListener(this._onModeChanged, this);
89
83 this._markUnusedCSS = Common.settings.createSetting('timelineMarkUnusedCSS', false); 90 this._markUnusedCSS = Common.settings.createSetting('timelineMarkUnusedCSS', false);
84 91
85 this._panelToolbar = new UI.Toolbar('', this.element); 92 this._panelToolbar = new UI.Toolbar('', this.element);
86 93
87 this._timelinePane = new UI.VBox(); 94 this._timelinePane = new UI.VBox();
88 this._timelinePane.show(this.element); 95 this._timelinePane.show(this.element);
89 var topPaneElement = this._timelinePane.element.createChild('div', 'hbox'); 96 var topPaneElement = this._timelinePane.element.createChild('div', 'hbox');
90 topPaneElement.id = 'timeline-overview-panel'; 97 topPaneElement.id = 'timeline-overview-panel';
91 98
92 // Create top overview component. 99 // Create top overview component.
(...skipping 173 matching lines...) Expand 10 before | Expand all | Expand 10 after
266 this._updateTimelineControls(); 273 this._updateTimelineControls();
267 } 274 }
268 275
269 /** 276 /**
270 * @param {string} name 277 * @param {string} name
271 * @param {!Common.Setting} setting 278 * @param {!Common.Setting} setting
272 * @param {string} tooltip 279 * @param {string} tooltip
273 * @return {!UI.ToolbarItem} 280 * @return {!UI.ToolbarItem}
274 */ 281 */
275 _createSettingCheckbox(name, setting, tooltip) { 282 _createSettingCheckbox(name, setting, tooltip) {
276 if (!this._recordingOptionUIControls) 283 const checkboxItem = new UI.ToolbarCheckbox(name, tooltip, setting);
277 this._recordingOptionUIControls = [];
278 var checkboxItem = new UI.ToolbarCheckbox(name, tooltip, setting);
279 this._recordingOptionUIControls.push(checkboxItem); 284 this._recordingOptionUIControls.push(checkboxItem);
280 return checkboxItem; 285 return checkboxItem;
281 } 286 }
282 287
283 _recreateToolbarItems() { 288 _recreateToolbarItems() {
284 this._panelToolbar.removeToolbarItems(); 289 this._panelToolbar.removeToolbarItems();
285 290
286 var perspectiveSetting = 291 const perspectiveSetting =
287 Common.settings.createSetting('timelinePerspective', Timeline.TimelinePa nel.Perspectives.Load); 292 Common.settings.createSetting('timelinePerspective', Timeline.TimelinePa nel.Perspectives.Load);
288 293
289 // Record 294 // Record
290 if (Runtime.experiments.isEnabled('timelineRecordingPerspectives') && 295 if (Runtime.experiments.isEnabled('timelineLandingPage')) {
296 this._panelToolbar.appendToolbarItem(UI.Toolbar.createActionButton(this._t oggleRecordAction));
297 this._panelToolbar.appendToolbarItem(UI.Toolbar.createActionButtonForId('m ain.reload'));
298 } else if (Runtime.experiments.isEnabled('timelineRecordingPerspectives') &&
291 perspectiveSetting.get() === Timeline.TimelinePanel.Perspectives.Load) { 299 perspectiveSetting.get() === Timeline.TimelinePanel.Perspectives.Load) {
292 this._reloadButton = new UI.ToolbarButton(Common.UIString('Record & Reload '), 'largeicon-refresh'); 300 const reloadButton = new UI.ToolbarButton(Common.UIString('Record & Reload '), 'largeicon-refresh');
293 this._reloadButton.addEventListener(UI.ToolbarButton.Events.Click, () => S DK.targetManager.reloadPage()); 301 reloadButton.addEventListener(UI.ToolbarButton.Events.Click, () => SDK.tar getManager.reloadPage());
294 this._panelToolbar.appendToolbarItem(this._reloadButton); 302 this._panelToolbar.appendToolbarItem(reloadButton);
295 } else { 303 } else {
296 this._panelToolbar.appendToolbarItem(UI.Toolbar.createActionButton(this._t oggleRecordAction)); 304 this._panelToolbar.appendToolbarItem(UI.Toolbar.createActionButton(this._t oggleRecordAction));
297 } 305 }
298 306
299 // Clear 307 // Clear
300 var clearButton = new UI.ToolbarButton(Common.UIString('Clear recording'), ' largeicon-clear'); 308 var clearButton = new UI.ToolbarButton(Common.UIString('Clear recording'), ' largeicon-clear');
301 clearButton.addEventListener(UI.ToolbarButton.Events.Click, this._clear, thi s); 309 clearButton.addEventListener(UI.ToolbarButton.Events.Click, this._clear, thi s);
302 this._panelToolbar.appendToolbarItem(clearButton); 310 this._panelToolbar.appendToolbarItem(clearButton);
303 311
304 this._panelToolbar.appendSeparator(); 312 this._panelToolbar.appendSeparator();
305 313
306 // Combo 314 // Combo
307 if (Runtime.experiments.isEnabled('timelineRecordingPerspectives')) { 315 if (!Runtime.experiments.isEnabled('timelineLandingPage') &&
316 Runtime.experiments.isEnabled('timelineRecordingPerspectives')) {
308 /** 317 /**
309 * @this {!Timeline.TimelinePanel} 318 * @this {!Timeline.TimelinePanel}
310 */ 319 */
311 function onPerspectiveChanged() { 320 function onPerspectiveChanged() {
312 perspectiveSetting.set(perspectiveCombobox.selectElement().value); 321 perspectiveSetting.set(perspectiveCombobox.selectElement().value);
313 this._recreateToolbarItems(); 322 this._recreateToolbarItems();
314 } 323 }
315 324
316 /** 325 /**
317 * @param {string} id 326 * @param {string} id
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after
355 this._captureLayersAndPicturesSetting.set(false); 364 this._captureLayersAndPicturesSetting.set(false);
356 this._captureFilmStripSetting.set(false); 365 this._captureFilmStripSetting.set(false);
357 this._detailsView.selectTab(Timeline.TimelinePanel.DetailsTab.BottomUp , false); 366 this._detailsView.selectTab(Timeline.TimelinePanel.DetailsTab.BottomUp , false);
358 break; 367 break;
359 } 368 }
360 369
361 this._bulkUpdate = false; 370 this._bulkUpdate = false;
362 this._onModeChanged(); 371 this._onModeChanged();
363 } 372 }
364 373
365 var screenshotCheckbox = this._createSettingCheckbox( 374 if (Runtime.experiments.isEnabled('timelineLandingPage')) {
366 Common.UIString('Screenshots'), this._captureFilmStripSetting, 375 if (!this._model.isEmpty()) {
367 Common.UIString('Capture screenshots while recording. (Has small perform ance overhead)')); 376 this._panelToolbar.appendToolbarItem(this._createSettingCheckbox(Common. UIString('Memory'),
377 this._showMemorySetting, Common.UIString('Show memory timeline.')));
378 if (this._filmStripModel.frames().length) {
379 this._showScreenshotsSetting.set(true);
380 this._panelToolbar.appendToolbarItem(this._createSettingCheckbox(Commo n.UIString('Screenshots'),
381 this._showScreenshotsSetting, Common.UIString('Show captured scree nshots.')));
382 }
383 }
384 } else {
385 const screenshotCheckbox = this._createSettingCheckbox(
386 Common.UIString('Screenshots'), this._captureFilmStripSetting,
387 Common.UIString('Capture screenshots while recording. (Has small perfo rmance overhead)'));
368 388
369 if (!Runtime.experiments.isEnabled('timelineRecordingPerspectives') || 389 if (!Runtime.experiments.isEnabled('timelineRecordingPerspectives') ||
370 perspectiveSetting.get() === Timeline.TimelinePanel.Perspectives.Custom) { 390 perspectiveSetting.get() === Timeline.TimelinePanel.Perspectives.Custo m) {
371 this._panelToolbar.appendToolbarItem(this._createSettingCheckbox( 391 this._panelToolbar.appendToolbarItem(this._createSettingCheckbox(
372 Common.UIString('Network'), this._captureNetworkSetting, 392 Common.UIString('Network'), this._captureNetworkSetting,
373 Common.UIString('Show network requests information'))); 393 Common.UIString('Show network requests information')));
374 this._panelToolbar.appendToolbarItem(this._createSettingCheckbox( 394 this._panelToolbar.appendToolbarItem(this._createSettingCheckbox(
375 Common.UIString('JS Profile'), this._captureJSProfileSetting, 395 Common.UIString('JS Profile'), this._captureJSProfileSetting,
376 Common.UIString('Capture JavaScript stacks with sampling profiler. (Ha s small performance overhead)'))); 396 Common.UIString('Capture JavaScript stacks with sampling profiler. ( Has small performance overhead)')));
377 this._panelToolbar.appendToolbarItem(screenshotCheckbox); 397 this._panelToolbar.appendToolbarItem(screenshotCheckbox);
378 this._panelToolbar.appendToolbarItem(this._createSettingCheckbox( 398 this._panelToolbar.appendToolbarItem(this._createSettingCheckbox(
379 Common.UIString('Memory'), this._captureMemorySetting, 399 Common.UIString('Memory'), this._captureMemorySetting,
380 Common.UIString('Capture memory information on every timeline event.') )); 400 Common.UIString('Capture memory information on every timeline event. ')));
381 this._panelToolbar.appendToolbarItem(this._createSettingCheckbox( 401 this._panelToolbar.appendToolbarItem(this._createSettingCheckbox(
382 Common.UIString('Paint'), this._captureLayersAndPicturesSetting, 402 Common.UIString('Paint'), this._captureLayersAndPicturesSetting,
383 Common.UIString( 403 Common.UIString(
384 'Capture graphics layer positions and rasterization draw calls. (H as large performance overhead)'))); 404 'Capture graphics layer positions and rasterization draw calls. (Has large performance overhead)')));
385 } else { 405 } else {
386 this._panelToolbar.appendToolbarItem(screenshotCheckbox); 406 this._panelToolbar.appendToolbarItem(screenshotCheckbox);
407 }
387 } 408 }
388 409
389 if (Runtime.experiments.isEnabled('timelineRuleUsageRecording')) { 410 if (Runtime.experiments.isEnabled('timelineRuleUsageRecording')) {
390 this._panelToolbar.appendToolbarItem(this._createSettingCheckbox( 411 this._panelToolbar.appendToolbarItem(this._createSettingCheckbox(
391 Common.UIString('CSS coverage'), this._markUnusedCSS, Common.UIString( 'Mark unused CSS in souces.'))); 412 Common.UIString('CSS coverage'), this._markUnusedCSS, Common.UIString( 'Mark unused CSS in souces.')));
392 } 413 }
393 414
394 const traceProviders = Extensions.extensionServer.traceProviders(); 415 const traceProviders = Extensions.extensionServer.traceProviders();
395 if (traceProviders.length) { 416 if (traceProviders.length) {
396 this._panelToolbar.appendSeparator(); 417 this._panelToolbar.appendSeparator();
(...skipping 131 matching lines...) Expand 10 before | Expand all | Expand 10 after
528 * @param {string} url 549 * @param {string} url
529 */ 550 */
530 _loadFromURL(url) { 551 _loadFromURL(url) {
531 if (this._state !== Timeline.TimelinePanel.State.Idle) 552 if (this._state !== Timeline.TimelinePanel.State.Idle)
532 return; 553 return;
533 this._prepareToLoadTimeline(); 554 this._prepareToLoadTimeline();
534 this._loader = Timeline.TimelineLoader.loadFromURL(this._tracingModel, url, this); 555 this._loader = Timeline.TimelineLoader.loadFromURL(this._tracingModel, url, this);
535 } 556 }
536 557
537 _refreshViews() { 558 _refreshViews() {
538 for (var i = 0; i < this._currentViews.length; ++i) { 559 this._currentViews.forEach(view => view.refreshRecords());
539 var view = this._currentViews[i];
540 view.refreshRecords();
541 }
542 this._updateSelectionDetails(); 560 this._updateSelectionDetails();
543 } 561 }
544 562
545 _onModeChanged() { 563 _onModeChanged() {
546 if (this._bulkUpdate) 564 if (this._bulkUpdate)
547 return; 565 return;
566 const showMemory = Runtime.experiments.isEnabled('timelineLandingPage')
567 ? this._showMemorySetting.get() : this._captureMemorySetting.get();
568 const showScreenshots = Runtime.experiments.isEnabled('timelineLandingPage')
569 ? this._showScreenshotsSetting.get() && this._filmStripModel.frames().le ngth
570 : this._captureFilmStripSetting.get();
548 // Set up overview controls. 571 // Set up overview controls.
549 this._overviewControls = []; 572 this._overviewControls = [];
550 this._overviewControls.push(new Timeline.TimelineEventOverviewResponsiveness (this._model, this._frameModel)); 573 this._overviewControls.push(new Timeline.TimelineEventOverviewResponsiveness (this._model, this._frameModel));
551 if (Runtime.experiments.isEnabled('inputEventsOnTimelineOverview')) 574 if (Runtime.experiments.isEnabled('inputEventsOnTimelineOverview'))
552 this._overviewControls.push(new Timeline.TimelineEventOverviewInput(this._ model)); 575 this._overviewControls.push(new Timeline.TimelineEventOverviewInput(this._ model));
553 this._overviewControls.push(new Timeline.TimelineEventOverviewFrames(this._m odel, this._frameModel)); 576 this._overviewControls.push(new Timeline.TimelineEventOverviewFrames(this._m odel, this._frameModel));
554 this._overviewControls.push(new Timeline.TimelineEventOverviewCPUActivity(th is._model)); 577 this._overviewControls.push(new Timeline.TimelineEventOverviewCPUActivity(th is._model));
555 this._overviewControls.push(new Timeline.TimelineEventOverviewNetwork(this._ model)); 578 this._overviewControls.push(new Timeline.TimelineEventOverviewNetwork(this._ model));
556 if (this._captureFilmStripSetting.get()) 579 if (showScreenshots)
557 this._overviewControls.push(new Timeline.TimelineFilmStripOverview(this._m odel, this._filmStripModel)); 580 this._overviewControls.push(new Timeline.TimelineFilmStripOverview(this._m odel, this._filmStripModel));
558 if (this._captureMemorySetting.get()) 581 if (showMemory)
559 this._overviewControls.push(new Timeline.TimelineEventOverviewMemory(this. _model)); 582 this._overviewControls.push(new Timeline.TimelineEventOverviewMemory(this. _model));
560 this._overviewPane.setOverviewControls(this._overviewControls); 583 this._overviewPane.setOverviewControls(this._overviewControls);
561 584
562 // Set up the main view. 585 // Set up the main view.
563 this._removeAllModeViews(); 586 this._removeAllModeViews();
564 this._flameChart = new Timeline.TimelineFlameChartView( 587 this._flameChart = new Timeline.TimelineFlameChartView(
565 this, this._model, this._frameModel, this._irModel, this._extensionTraci ngModels, this._filters); 588 this, this._model, this._frameModel, this._irModel, this._extensionTraci ngModels, this._filters);
566 this._flameChart.enableNetworkPane(this._captureNetworkSetting.get()); 589 this._flameChart.enableNetworkPane(this._captureNetworkSetting.get());
567 this._addModeView(this._flameChart); 590 this._addModeView(this._flameChart);
568 591
569 if (this._captureMemorySetting.get()) { 592 if (showMemory) {
570 this._addModeView( 593 this._addModeView(new Timeline.MemoryCountersGraph(
571 new Timeline.MemoryCountersGraph(this, this._model, [Timeline.Timeline UIUtils.visibleEventsFilter()])); 594 this, this._model, [Timeline.TimelineUIUtils.visibleEventsFilter()]));
572 } 595 }
596 if (Runtime.experiments.isEnabled('timelineLandingPage'))
597 this._flameChart.enableNetworkPane(true);
573 598
574 this.doResize(); 599 this.doResize();
575 this.select(null); 600 this.select(null);
576 } 601 }
577 602
578 _onNetworkChanged() { 603 _onNetworkChanged() {
579 if (this._flameChart) 604 if (this._flameChart)
580 this._flameChart.enableNetworkPane(this._captureNetworkSetting.get(), true ); 605 this._flameChart.enableNetworkPane(this._captureNetworkSetting.get(), true );
581 } 606 }
582 607
583 _onCPUThrottlingChanged() { 608 _onCPUThrottlingChanged() {
584 if (!this._cpuThrottlingManager) 609 if (!this._cpuThrottlingManager)
585 return; 610 return;
586 var text = this._cpuThrottlingCombobox.selectedOption().value; 611 var text = this._cpuThrottlingCombobox.selectedOption().value;
587 this._cpuThrottlingManager.setRate(Number.parseFloat(text)); 612 this._cpuThrottlingManager.setRate(Number.parseFloat(text));
588 } 613 }
589 614
590 /** 615 /**
591 * @param {boolean} enabled 616 * @param {boolean} enabled
592 */ 617 */
593 _setUIControlsEnabled(enabled) { 618 _setUIControlsEnabled(enabled) {
594 /** 619 this._recordingOptionUIControls.forEach(control => control.setEnabled(enable d));
595 * @param {!UI.ToolbarButton} toolbarButton
596 */
597 function handler(toolbarButton) {
598 toolbarButton.setEnabled(enabled);
599 }
600 this._recordingOptionUIControls.forEach(handler);
601 } 620 }
602 621
603 /** 622 /**
604 * @param {boolean} userInitiated 623 * @param {boolean} userInitiated
605 */ 624 */
606 _startRecording(userInitiated) { 625 _startRecording(userInitiated) {
607 console.assert(!this._statusPane, 'Status pane is already opened.'); 626 console.assert(!this._statusPane, 'Status pane is already opened.');
608 var mainTarget = SDK.targetManager.mainTarget(); 627 var mainTarget = SDK.targetManager.mainTarget();
609 if (!mainTarget) 628 if (!mainTarget)
610 return; 629 return;
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after
671 else if (this._state === Timeline.TimelinePanel.State.Recording) 690 else if (this._state === Timeline.TimelinePanel.State.Recording)
672 this._stopRecording(); 691 this._stopRecording();
673 } 692 }
674 693
675 _clear() { 694 _clear() {
676 this._showRecordingHelpMessage(); 695 this._showRecordingHelpMessage();
677 this._detailsSplitWidget.hideSidebar(); 696 this._detailsSplitWidget.hideSidebar();
678 this._sessionGeneration = null; 697 this._sessionGeneration = null;
679 this._recordingStartTime = 0; 698 this._recordingStartTime = 0;
680 this._reset(); 699 this._reset();
700 this._recreateToolbarItems();
681 } 701 }
682 702
683 _reset() { 703 _reset() {
684 if (Runtime.experiments.isEnabled('timelineRuleUsageRecording') && this._mar kUnusedCSS.get()) 704 if (Runtime.experiments.isEnabled('timelineRuleUsageRecording') && this._mar kUnusedCSS.get())
685 Components.CoverageProfile.instance().reset(); 705 Components.CoverageProfile.instance().reset();
686 706
687 Components.LineLevelProfile.instance().reset(); 707 Components.LineLevelProfile.instance().reset();
688 this._tracingModel.reset(); 708 this._tracingModel.reset();
689 this._model.reset(); 709 this._model.reset();
690 for (let extensionEntry of this._extensionTracingModels) 710 for (let extensionEntry of this._extensionTracingModels)
(...skipping 172 matching lines...) Expand 10 before | Expand all | Expand 10 after
863 var asyncEventsByGroup = this._model.mainThreadAsyncEvents(); 883 var asyncEventsByGroup = this._model.mainThreadAsyncEvents();
864 this._irModel.populate(asyncEventsByGroup.get(groups.input), asyncEventsByGr oup.get(groups.animation)); 884 this._irModel.populate(asyncEventsByGroup.get(groups.input), asyncEventsByGr oup.get(groups.animation));
865 this._model.cpuProfiles().forEach(profile => Components.LineLevelProfile.ins tance().appendCPUProfile(profile)); 885 this._model.cpuProfiles().forEach(profile => Components.LineLevelProfile.ins tance().appendCPUProfile(profile));
866 if (this._statusPane) 886 if (this._statusPane)
867 this._statusPane.hide(); 887 this._statusPane.hide();
868 delete this._statusPane; 888 delete this._statusPane;
869 889
870 for (let entry of this._extensionTracingModels) 890 for (let entry of this._extensionTracingModels)
871 entry.model.adjustTime(this._model.minimumRecordTime() + (entry.timeOffset / 1000) - this._recordingStartTime); 891 entry.model.adjustTime(this._model.minimumRecordTime() + (entry.timeOffset / 1000) - this._recordingStartTime);
872 892
893 this._recreateToolbarItems();
873 this._flameChart.resizeToPreferredHeights(); 894 this._flameChart.resizeToPreferredHeights();
874 this._overviewPane.reset(); 895 this._overviewPane.reset();
875 this._overviewPane.setBounds(this._model.minimumRecordTime(), this._model.ma ximumRecordTime()); 896 this._overviewPane.setBounds(this._model.minimumRecordTime(), this._model.ma ximumRecordTime());
876 this._setAutoWindowTimes(); 897 this._setAutoWindowTimes();
877 this._refreshViews(); 898 this._refreshViews();
878 for (var i = 0; i < this._overviewControls.length; ++i) 899 for (var i = 0; i < this._overviewControls.length; ++i)
879 this._overviewControls[i].timelineStopped(); 900 this._overviewControls[i].timelineStopped();
880 this._setMarkers(); 901 this._setMarkers();
881 this._overviewPane.scheduleUpdate(); 902 this._overviewPane.scheduleUpdate();
882 this._updateSearchHighlight(false, true); 903 this._updateSearchHighlight(false, true);
(...skipping 1182 matching lines...) Expand 10 before | Expand all | Expand 10 after
2065 } 2086 }
2066 2087
2067 /** 2088 /**
2068 * @override 2089 * @override
2069 * @param {!SDK.Target} target 2090 * @param {!SDK.Target} target
2070 */ 2091 */
2071 targetRemoved(target) { 2092 targetRemoved(target) {
2072 this._targets.remove(target, true); 2093 this._targets.remove(target, true);
2073 } 2094 }
2074 }; 2095 };
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698