From 60322745e1ccff52d8906374e839f0c0b4b7e0d2 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 11 Mar 2026 18:25:21 +0000 Subject: [PATCH 1/2] Initial plan From a16ce457d58685abfc8306e2672e3fb8da7126e1 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 11 Mar 2026 18:29:42 +0000 Subject: [PATCH 2/2] Fix: Close editor tab when discarding Container App revision draft Co-authored-by: motm32 <59709511+motm32@users.noreply.github.com> --- src/commands/revisionDraft/RevisionDraftFileSystem.ts | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/commands/revisionDraft/RevisionDraftFileSystem.ts b/src/commands/revisionDraft/RevisionDraftFileSystem.ts index fde9d5fa..bfa2f80c 100644 --- a/src/commands/revisionDraft/RevisionDraftFileSystem.ts +++ b/src/commands/revisionDraft/RevisionDraftFileSystem.ts @@ -6,7 +6,7 @@ import { KnownActiveRevisionsMode, type Template } from "@azure/arm-appcontainers"; import { parseAzureResourceId, type ParsedAzureResourceId } from "@microsoft/vscode-azext-azureutils"; import { nonNullValueAndProp } from "@microsoft/vscode-azext-utils"; -import { Disposable, EventEmitter, FileChangeType, FileType, commands, window, workspace, type Event, type FileChangeEvent, type FileStat, type FileSystemProvider, type TextDocument, type Uri } from "vscode"; +import { Disposable, EventEmitter, FileChangeType, FileType, TabInputText, commands, window, workspace, type Event, type FileChangeEvent, type FileStat, type FileSystemProvider, type TextDocument, type Uri } from "vscode"; import { URI } from "vscode-uri"; import { ext } from "../../extensionVariables"; import { ContainerAppItem, type ContainerAppModel } from "../../tree/ContainerAppItem"; @@ -179,6 +179,15 @@ export class RevisionDraftFileSystem implements FileSystemProvider { } this.delete(uri); + this.closeEditorForUri(uri); + } + + private closeEditorForUri(uri: Uri): void { + const tabsToClose = window.tabGroups.all + .flatMap(tabGroup => tabGroup.tabs) + .filter(tab => tab.input instanceof TabInputText && tab.input.uri.scheme === uri.scheme && tab.input.uri.path === uri.path); + + void window.tabGroups.close(tabsToClose); } delete(uri: Uri): void {