From cfabb26c46a7c53c0efc1c0df9261def20139d65 Mon Sep 17 00:00:00 2001 From: alexweininger Date: Wed, 1 Jul 2026 15:38:25 -0400 Subject: [PATCH 1/3] Add Select Subscriptions button to Resources view toolbar Place the Select Subscriptions command between the group-by and refresh buttons in the Azure Resources view title bar. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> --- package.json | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index 84cf1a28..702fffa9 100644 --- a/package.json +++ b/package.json @@ -459,15 +459,20 @@ "when": "view == azureResourceGroups", "group": "navigation@2" }, + { + "command": "azureResourceGroups.selectSubscriptions", + "when": "view == azureResourceGroups", + "group": "navigation@3" + }, { "command": "azureFocusView.refreshTree", "when": "view == azureFocusView", - "group": "navigation@3" + "group": "navigation@4" }, { "command": "azureResourceGroups.refreshTree", "when": "view == azureResourceGroups", - "group": "navigation@3" + "group": "navigation@4" }, { "command": "azureResourceGroups.askAgentAboutActivityLog", From 1ada6c5c67779544bddf8a81c2600b73fe8a5dad Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 2 Jul 2026 17:04:48 +0000 Subject: [PATCH 2/3] Hide Select Subscriptions toolbar button when not signed in --- package.json | 2 +- src/tree/azure/AzureResourceTreeDataProvider.ts | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/package.json b/package.json index 702fffa9..ac01ffe7 100644 --- a/package.json +++ b/package.json @@ -461,7 +461,7 @@ }, { "command": "azureResourceGroups.selectSubscriptions", - "when": "view == azureResourceGroups", + "when": "view == azureResourceGroups && azureResourceGroups.isSignedIn", "group": "navigation@3" }, { diff --git a/src/tree/azure/AzureResourceTreeDataProvider.ts b/src/tree/azure/AzureResourceTreeDataProvider.ts index 3726d1d7..c5d72170 100644 --- a/src/tree/azure/AzureResourceTreeDataProvider.ts +++ b/src/tree/azure/AzureResourceTreeDataProvider.ts @@ -97,6 +97,7 @@ export class AzureResourceTreeDataProvider extends AzureResourceTreeDataProvider try { await vscode.commands.executeCommand('setContext', 'azureResourceGroups.needsTenantAuth', false); const subscriptions = await subscriptionProvider.getAvailableSubscriptions({ noCache: shouldClearCache }); + await vscode.commands.executeCommand('setContext', 'azureResourceGroups.isSignedIn', true); this.sendSubscriptionTelemetryIfNeeded(); // Don't send until the above call is done, to avoid cache missing context.telemetry.measurements.subscriptionCount = subscriptions.length; @@ -235,6 +236,7 @@ export class AzureResourceTreeDataProvider extends AzureResourceTreeDataProvider } catch (error) { if (isNotSignedInError(error)) { context.telemetry.properties.outcome = 'notSignedIn'; + await vscode.commands.executeCommand('setContext', 'azureResourceGroups.isSignedIn', false); return getSignInTreeItems(true); } From 03a1550347afdd6eb47ae444339453769ddddfcc Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 2 Jul 2026 19:57:57 +0000 Subject: [PATCH 3/3] Revert: remove isSignedIn context key, keep button always visible --- package.json | 2 +- src/tree/azure/AzureResourceTreeDataProvider.ts | 2 -- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/package.json b/package.json index ac01ffe7..702fffa9 100644 --- a/package.json +++ b/package.json @@ -461,7 +461,7 @@ }, { "command": "azureResourceGroups.selectSubscriptions", - "when": "view == azureResourceGroups && azureResourceGroups.isSignedIn", + "when": "view == azureResourceGroups", "group": "navigation@3" }, { diff --git a/src/tree/azure/AzureResourceTreeDataProvider.ts b/src/tree/azure/AzureResourceTreeDataProvider.ts index c5d72170..3726d1d7 100644 --- a/src/tree/azure/AzureResourceTreeDataProvider.ts +++ b/src/tree/azure/AzureResourceTreeDataProvider.ts @@ -97,7 +97,6 @@ export class AzureResourceTreeDataProvider extends AzureResourceTreeDataProvider try { await vscode.commands.executeCommand('setContext', 'azureResourceGroups.needsTenantAuth', false); const subscriptions = await subscriptionProvider.getAvailableSubscriptions({ noCache: shouldClearCache }); - await vscode.commands.executeCommand('setContext', 'azureResourceGroups.isSignedIn', true); this.sendSubscriptionTelemetryIfNeeded(); // Don't send until the above call is done, to avoid cache missing context.telemetry.measurements.subscriptionCount = subscriptions.length; @@ -236,7 +235,6 @@ export class AzureResourceTreeDataProvider extends AzureResourceTreeDataProvider } catch (error) { if (isNotSignedInError(error)) { context.telemetry.properties.outcome = 'notSignedIn'; - await vscode.commands.executeCommand('setContext', 'azureResourceGroups.isSignedIn', false); return getSignInTreeItems(true); }