diff --git a/src/EditorFeatures/Test2/IntelliSense/VisualBasicCompletionCommandHandlerTests.vb b/src/EditorFeatures/Test2/IntelliSense/VisualBasicCompletionCommandHandlerTests.vb index b8391d4a353ac1ee0dc963bb32093fce6f0fe482..ade2c07d5c041cc6fc1343aac79dd0a8eab88129 100644 --- a/src/EditorFeatures/Test2/IntelliSense/VisualBasicCompletionCommandHandlerTests.vb +++ b/src/EditorFeatures/Test2/IntelliSense/VisualBasicCompletionCommandHandlerTests.vb @@ -613,6 +613,27 @@ End Module]]>) End Using End Sub + + + Public Sub NotEnumPreselectionAfterBackspace() + Using state = TestState.CreateVisualBasicTestState( + ) + + state.SendBackspace() + state.AssertSelectedCompletionItem(displayText:="b", isHardSelected:=True) + End Using + End Sub + Public Sub TestNumericLiteralWithNoMatch() diff --git a/src/Features/VisualBasic/Completion/VisualBasicCompletionRules.vb b/src/Features/VisualBasic/Completion/VisualBasicCompletionRules.vb index fc8e69a2f353683eb5009b762100a665ef7b01ac..044283da41970a2d326bea177f0360d257585bd7 100644 --- a/src/Features/VisualBasic/Completion/VisualBasicCompletionRules.vb +++ b/src/Features/VisualBasic/Completion/VisualBasicCompletionRules.vb @@ -25,7 +25,7 @@ Namespace Microsoft.CodeAnalysis.VisualBasic.Completion Dim prefixLength1 = GetPrefixLength(item1.FilterText, filterText) Dim prefixLength2 = GetPrefixLength(item2.FilterText, filterText) - Return prefixLength1 > prefixLength2 OrElse (item1.Preselect AndAlso Not item2.Preselect) + Return prefixLength1 > prefixLength2 OrElse ((item1.Preselect AndAlso Not item2.Preselect) AndAlso TypeOf item1.CompletionProvider IsNot EnumCompletionProvider) End If If TypeOf item2.CompletionProvider Is EnumCompletionProvider Then