From ef6d5f314eaa512af63d3166cef081c000149f9b Mon Sep 17 00:00:00 2001 From: yogeshwaran-c Date: Thu, 26 Mar 2026 06:43:52 +0530 Subject: [PATCH] fix: send user preferences to TS server even without visible editor When ensureConfigurationForDocument is called and no visible text editor is found for the document, getFormattingOptions returns undefined and the method returns early without sending any configuration including user preferences like preferTypeOnlyAutoImports to the TS server. This causes source.addMissingImports to ignore the user's preferTypeOnlyAutoImports setting. Fix by falling back to undefined formatting options when no visible editor is found, ensuring user preferences are always sent. Closes #272479 --- .../src/languageFeatures/fileConfigurationManager.ts | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/extensions/typescript-language-features/src/languageFeatures/fileConfigurationManager.ts b/extensions/typescript-language-features/src/languageFeatures/fileConfigurationManager.ts index 915de13e13c..adac2436edf 100644 --- a/extensions/typescript-language-features/src/languageFeatures/fileConfigurationManager.ts +++ b/extensions/typescript-language-features/src/languageFeatures/fileConfigurationManager.ts @@ -53,10 +53,9 @@ export default class FileConfigurationManager extends Disposable { document: vscode.TextDocument, token: vscode.CancellationToken ): Promise { - const formattingOptions = this.getFormattingOptions(document); - if (formattingOptions) { - return this.ensureConfigurationOptions(document, formattingOptions, token); - } + const formattingOptions = this.getFormattingOptions(document) + ?? { tabSize: undefined, insertSpaces: undefined }; + return this.ensureConfigurationOptions(document, formattingOptions, token); } private getFormattingOptions(document: vscode.TextDocument): FormattingOptions | undefined {