diff --git a/src/vs/workbench/browser/parts/editor/textEditor.ts b/src/vs/workbench/browser/parts/editor/textEditor.ts index 6207b2a0e626a8404272a0fadb30b53fd6b28736..a041653045979d2ddea57114812f227c18f3e921 100644 --- a/src/vs/workbench/browser/parts/editor/textEditor.ts +++ b/src/vs/workbench/browser/parts/editor/textEditor.ts @@ -223,7 +223,17 @@ export abstract class BaseTextEditor extends EditorPane implements ITextEditorPa return this.editorControl; } - protected saveTextEditorViewState(resource: URI, editor?: IEditorInput): void { + getViewState(): IEditorViewState | undefined { + const resource = this.input?.resource; + if (resource) { + return withNullAsUndefined(this.retrieveTextEditorViewState(resource)); + } + + return undefined; + } + + + protected saveTextEditorViewState(resource: URI, cleanUpOnDispose?: IEditorInput): void { const editorViewState = this.retrieveTextEditorViewState(resource); if (!editorViewState || !this.group) { return; @@ -231,8 +241,8 @@ export abstract class BaseTextEditor extends EditorPane implements ITextEditorPa this.editorMemento.saveEditorState(this.group, resource, editorViewState); - if (editor) { - this.editorMemento.clearEditorStateOnDispose(resource, editor); + if (cleanUpOnDispose) { + this.editorMemento.clearEditorStateOnDispose(resource, cleanUpOnDispose); } } @@ -247,15 +257,6 @@ export abstract class BaseTextEditor extends EditorPane implements ITextEditorPa return true; } - getViewState(): IEditorViewState | undefined { - const resource = this.input?.resource; - if (resource) { - return withNullAsUndefined(this.retrieveTextEditorViewState(resource)); - } - - return undefined; - } - protected retrieveTextEditorViewState(resource: URI): IEditorViewState | null { const control = this.getControl(); if (!isCodeEditor(control)) { @@ -288,9 +289,9 @@ export abstract class BaseTextEditor extends EditorPane implements ITextEditorPa } protected clearTextEditorViewState(resources: URI[], group?: IEditorGroup): void { - resources.forEach(resource => { + for (const resource of resources) { this.editorMemento.clearEditorState(resource, group); - }); + } } private updateEditorConfiguration(configuration?: IEditorConfiguration): void {