Skip to content

Commit 37ee87d

Browse files
committed
fix: hide irrelevant stats in quickpick, allow disabling qp charts
Fixes microsoft/vscode#107789
1 parent 1efc2de commit 37ee87d

File tree

2 files changed

+15
-8
lines changed

2 files changed

+15
-8
lines changed

packages/vscode-js-profile-flame/src/extension.ts

+8-8
Original file line numberDiff line numberDiff line change
@@ -52,10 +52,12 @@ export function activate(context: vscode.ExtensionContext) {
5252

5353
quickpick.title = 'Toggle visible performance charts';
5454
quickpick.canSelectMany = true;
55-
quickpick.items = metrics.map((metric, i) => ({
56-
label: metric.name(),
57-
index: i,
58-
}));
55+
quickpick.items = (realtimeTracker.currentData?.filter(m => m.hasData()) ?? metrics).map(
56+
(metric, i) => ({
57+
label: metric.name(),
58+
index: i,
59+
}),
60+
);
5961
quickpick.selectedItems = settings.enabledMetrics.length
6062
? settings.enabledMetrics.map(index => quickpick.items[index])
6163
: quickpick.items.slice();
@@ -69,11 +71,9 @@ export function activate(context: vscode.ExtensionContext) {
6971

7072
quickpick.dispose();
7173

72-
if (!chosen || !chosen.length) {
73-
return;
74+
if (chosen) {
75+
realtimeTracker.setEnabledMetrics(chosen);
7476
}
75-
76-
realtimeTracker.setEnabledMetrics(chosen);
7777
}),
7878

7979
vscode.commands.registerCommand('vscode-js-profile-flame.toggleSplitCharts', () => {

packages/vscode-js-profile-flame/src/realtimeSessionTracker.ts

+7
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,13 @@ export class RealtimeSessionTracker {
5555
return [...this.webviews].filter(w => w.visible);
5656
}
5757

58+
/**
59+
* Gets currently displayed metric data.
60+
*/
61+
public get currentData() {
62+
return this.displayedSession && this.sessionData.get(this.displayedSession)?.metrics;
63+
}
64+
5865
constructor(private readonly context: vscode.ExtensionContext) {}
5966

6067
/**

0 commit comments

Comments
 (0)