From 1b3678b30423cbf1af86216f4f5fc76fd9799c3d Mon Sep 17 00:00:00 2001 From: Matt Bierner Date: Thu, 12 Aug 2021 15:34:34 -0700 Subject: [PATCH] Don't return trigger characters for ambient JS suggestions Fixes #130096 --- .../src/languageFeatures/completions.ts | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/extensions/typescript-language-features/src/languageFeatures/completions.ts b/extensions/typescript-language-features/src/languageFeatures/completions.ts index fbf7165add356..017395050194b 100644 --- a/extensions/typescript-language-features/src/languageFeatures/completions.ts +++ b/extensions/typescript-language-features/src/languageFeatures/completions.ts @@ -89,7 +89,7 @@ class MyCompletionItem extends vscode.CompletionItem { this.useCodeSnippet = completionContext.useCodeSnippetsOnMethodSuggest && (this.kind === vscode.CompletionItemKind.Function || this.kind === vscode.CompletionItemKind.Method); this.range = this.getRangeFromReplacementSpan(tsEntry, completionContext); - this.commitCharacters = MyCompletionItem.getCommitCharacters(completionContext); + this.commitCharacters = MyCompletionItem.getCommitCharacters(completionContext, tsEntry); this.insertText = isSnippet && tsEntry.insertText ? new vscode.SnippetString(tsEntry.insertText) : tsEntry.insertText; this.filterText = this.getFilterText(completionContext.line, tsEntry.insertText); @@ -489,7 +489,11 @@ class MyCompletionItem extends vscode.CompletionItem { } } - private static getCommitCharacters(context: CompletionContext): string[] | undefined { + private static getCommitCharacters(context: CompletionContext, entry: Proto.CompletionEntry): string[] | undefined { + if (entry.kind === PConst.Kind.warning) { // Ambient JS word based suggestion + return undefined; + } + if (context.isNewIdentifierLocation || !context.isInValidCommitCharacterContext) { return undefined; }