提交 c337a61f 编写于 作者: R Ravi Chande 提交者: GitHub

Merge pull request #15424 from rchande/suggestionmodetrigger

Trigger C# suggestion mode except for snippets
......@@ -7,6 +7,7 @@
using Microsoft.CodeAnalysis.Editor.UnitTests.Workspaces;
using Roslyn.Test.Utilities;
using Xunit;
using System.Collections.Generic;
namespace Microsoft.CodeAnalysis.Editor.CSharp.UnitTests.Completion.CompletionProviders
{
......@@ -758,8 +759,15 @@ private async Task VerifyWorkerAsync(string markup, bool isBuilder)
private async Task CheckResultsAsync(Document document, int position, bool isBuilder)
{
var triggerInfo = CompletionTrigger.CreateInsertionTrigger('a');
var triggerInfos = new List<CompletionTrigger>();
triggerInfos.Add(CompletionTrigger.CreateInsertionTrigger('a'));
triggerInfos.Add(CompletionTrigger.Default);
triggerInfos.Add(CompletionTrigger.CreateDeletionTrigger('z'));
var service = GetCompletionService(document.Project.Solution.Workspace);
foreach (var triggerInfo in triggerInfos)
{
var completionList = await service.GetContextAsync(
service.ExclusiveProviders?[0], document, position, triggerInfo,
options: null, cancellationToken: CancellationToken.None);
......@@ -778,4 +786,5 @@ private async Task CheckResultsAsync(Document document, int position, bool isBui
}
}
}
}
}
......@@ -290,7 +290,7 @@ class Variable
}]]></Document>)
state.SendInvokeCompletionList()
Await state.AssertSelectedCompletionItem(displayText:="as", isHardSelected:=True)
Await state.AssertSelectedCompletionItem(displayText:="as", isHardSelected:=False)
End Using
End Function
......@@ -307,7 +307,7 @@ class Variable
}]]></Document>)
state.SendInvokeCompletionList()
Await state.AssertSelectedCompletionItem(displayText:="as", isHardSelected:=True)
Await state.AssertSelectedCompletionItem(displayText:="as", isHardSelected:=False)
End Using
End Function
......
......@@ -21,7 +21,7 @@ internal class CSharpSuggestionModeCompletionProvider : SuggestionModeCompletion
protected override async Task<CompletionItem> GetSuggestionModeItemAsync(
Document document, int position, TextSpan itemSpan, CompletionTrigger trigger, CancellationToken cancellationToken = default(CancellationToken))
{
if (trigger.Kind == CompletionTriggerKind.Insertion)
if (trigger.Kind != CompletionTriggerKind.Snippets)
{
var text = await document.GetTextAsync(cancellationToken).ConfigureAwait(false);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册