@@ -22,7 +22,10 @@ getCompletionsLSP
2222 -> IdeState
2323 -> CompletionParams
2424 -> IO CompletionResponseResult
25−getCompletionsLSP lsp ide CompletionParams{_textDocument=TextDocumentIdentifier uri,_position=position} = do
25+getCompletionsLSP lsp ide
26+ CompletionParams{_textDocument=TextDocumentIdentifier uri
27+ ,_position=position
28+ ,_context=completionContext} = do
2629 contents <- LSP.getVirtualFileFunc lsp $ toNormalizedUri uri
2730 case (contents, uriToFilePath' uri) of
2831 (Just cnts, Just path) -> do
@@ -32,8 +35,10 @@ getCompletionsLSP lsp ide CompletionParams{_textDocument=TextDocumentIdentifier
3235 Just ((cci', tm'), mapping) -> do
3336 let position' = fromCurrentPosition mapping position
3437 pfix <- maybe (return Nothing) (flip VFS.getCompletionPrefix cnts) position'
35− case pfix of
36− Just pfix' -> do
38+ case (pfix, completionContext) of
39+ (Just (VFS.PosPrefixInfo _ "" _ _), Just CompletionContext { _triggerCharacter = Just "."})
40+ -> return (Completions $ List [])
41+ (Just pfix', _) -> do
3742 let fakeClientCapabilities = ClientCapabilities Nothing Nothing Nothing Nothing
3843 Completions . List <$> getCompletions ideOpts cci' (tmrModule tm') pfix' fakeClientCapabilities (WithSnippets True)
3944 _ -> return (Completions $ List [])