From 8b1fa3ea5298a7e067cf1e24c10f4c2ee992a943 Mon Sep 17 00:00:00 2001 From: Lewis Sanchez <87730006+lewis-sanchez@users.noreply.github.com> Date: Fri, 8 Oct 2021 17:37:08 -0700 Subject: [PATCH] Don't prompt for save when JSON column untitled file is closed (version 2) (#17327) * Stops flagging untitled editors with pre-loaded content as dirty * Code changes address broken unit tests. * Completes original comment * Defines new non dirty text editor model * Revert "Completes original comment" This reverts commit 6d0e90bb9f0650eead5a0ec1ca8524dfe96c56cd. * Revert "Code changes address broken unit tests." This reverts commit 5b8cdd9f0bb43638bdd427a454ea177f6fbc024d. * Revert "Stops flagging untitled editors with pre-loaded content as dirty" This reverts commit 7a39226b7961af3aba8dc2f08113ed09eb2a1d61. * Stops marking untitled editors with JSON as dirty * Code clean up. --- src/sql/workbench/contrib/query/browser/gridPanel.ts | 2 ++ .../services/untitled/common/untitledTextEditorModel.ts | 7 +++++++ 2 files changed, 9 insertions(+) diff --git a/src/sql/workbench/contrib/query/browser/gridPanel.ts b/src/sql/workbench/contrib/query/browser/gridPanel.ts index 762128f75a..e79d7f5957 100644 --- a/src/sql/workbench/contrib/query/browser/gridPanel.ts +++ b/src/sql/workbench/contrib/query/browser/gridPanel.ts @@ -694,6 +694,8 @@ export abstract class GridTableBase extends Disposable implements IView { const input = this.untitledEditorService.create({ mode: column.isXml ? 'xml' : 'json', initialValue: content }); await input.resolve(); await this.instantiationService.invokeFunction(formatDocumentWithSelectedProvider, input.textEditorModel, FormattingMode.Explicit, Progress.None, CancellationToken.None); + input.setDirty(false); + return this.editorService.openEditor(input); }); } diff --git a/src/vs/workbench/services/untitled/common/untitledTextEditorModel.ts b/src/vs/workbench/services/untitled/common/untitledTextEditorModel.ts index c5b39cf6aa..911c054eb2 100644 --- a/src/vs/workbench/services/untitled/common/untitledTextEditorModel.ts +++ b/src/vs/workbench/services/untitled/common/untitledTextEditorModel.ts @@ -63,6 +63,13 @@ export interface IUntitledTextEditorModel extends ITextEditorModel, IModeSupport * Resolves the untitled model. */ resolve(): Promise; + + // {{SQL CARBON EDIT}} - START + /** + * Sets the dirty state for this untitled model + */ + setDirty(dirty: boolean): void + // {{SQL CARBON EDIT}} - END } export class UntitledTextEditorModel extends BaseTextEditorModel implements IUntitledTextEditorModel {