From 04255d26e1a8639409db239ed4be66a9baa038a4 Mon Sep 17 00:00:00 2001 From: Matt Bierner Date: Tue, 8 May 2018 13:29:20 -0700 Subject: [PATCH] Ensure we send file configuration before running organize imports --- .../src/features/organizeImports.ts | 8 ++++++-- .../typescript-language-features/src/languageProvider.ts | 2 +- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/extensions/typescript-language-features/src/features/organizeImports.ts b/extensions/typescript-language-features/src/features/organizeImports.ts index 7aa0f124d3f..2eee2cf95ac 100644 --- a/extensions/typescript-language-features/src/features/organizeImports.ts +++ b/extensions/typescript-language-features/src/features/organizeImports.ts @@ -9,6 +9,7 @@ import * as Proto from '../protocol'; import { ITypeScriptServiceClient } from '../typescriptService'; import { Command, CommandManager } from '../utils/commandManager'; import * as typeconverts from '../utils/typeConverters'; +import FileConfigurationManager from './fileConfigurationManager'; const localize = nls.loadMessageBundle(); @@ -48,7 +49,8 @@ class OrganizeImportsCommand implements Command { export class OrganizeImportsCodeActionProvider implements vscode.CodeActionProvider { public constructor( private readonly client: ITypeScriptServiceClient, - commandManager: CommandManager + commandManager: CommandManager, + private readonly fileConfigManager: FileConfigurationManager, ) { commandManager.register(new OrganizeImportsCommand(client)); } @@ -61,7 +63,7 @@ export class OrganizeImportsCodeActionProvider implements vscode.CodeActionProvi document: vscode.TextDocument, _range: vscode.Range, _context: vscode.CodeActionContext, - _token: vscode.CancellationToken + token: vscode.CancellationToken ): vscode.CodeAction[] { if (!this.client.apiVersion.has280Features()) { return []; @@ -72,6 +74,8 @@ export class OrganizeImportsCodeActionProvider implements vscode.CodeActionProvi return []; } + this.fileConfigManager.ensureConfigurationForDocument(document, token); + const action = new vscode.CodeAction( localize('oraganizeImportsAction.title', "Organize Imports"), vscode.CodeActionKind.SourceOrganizeImports); diff --git a/extensions/typescript-language-features/src/languageProvider.ts b/extensions/typescript-language-features/src/languageProvider.ts index ad10a3e1264..08a509b83ae 100644 --- a/extensions/typescript-language-features/src/languageProvider.ts +++ b/extensions/typescript-language-features/src/languageProvider.ts @@ -249,7 +249,7 @@ export default class LanguageProvider { } if (this.client.apiVersion.has280Features()) { - const organizeImportsProvider = new (await import('./features/organizeImports')).OrganizeImportsCodeActionProvider(this.client, this.commandManager); + const organizeImportsProvider = new (await import('./features/organizeImports')).OrganizeImportsCodeActionProvider(this.client, this.commandManager, this.fileConfigurationManager); this.versionDependentDisposables.push(languages.registerCodeActionsProvider(selector, organizeImportsProvider, organizeImportsProvider.metadata)); } } -- GitLab