Improve incomplete handling

This commit is contained in:
hrsh7th
2021-11-24 12:57:04 +09:00
parent ac476e05df
commit 2e4270d028
2 changed files with 11 additions and 11 deletions

View File

@@ -222,7 +222,7 @@ core.complete = function(self, ctx)
end
self:set_context(ctx)
for _, s in ipairs(self:get_sources({ source.SourceStatus.WAITING, source.SourceStatus.COMPLETED })) do
for _, s in ipairs(self:get_sources()) do
local callback
callback = (function(s_)
return function()
@@ -230,17 +230,17 @@ core.complete = function(self, ctx)
if s_.incomplete and new:changed(s_.context) then
s_:complete(new, callback)
else
for _, s__ in ipairs(self:get_sources({ source.SourceStatus.FETCHING })) do
if s_ == s__ then
break
end
if not s__.incomplete and SOURCE_TIMEOUT > s__:get_fetching_time() then
return
end
for _, s__ in ipairs(self:get_sources({ source.SourceStatus.FETCHING })) do
if s_ == s__ then
break
end
if not s__.incomplete and SOURCE_TIMEOUT > s__:get_fetching_time() then
return
end
self.filter.timeout = self.view:visible() and THROTTLE_TIME or 0
self:filter()
end
self.filter.timeout = self.view:visible() and THROTTLE_TIME or 0
self:filter()
end
end
end)(s)
s:complete(ctx, callback)

View File

@@ -255,7 +255,7 @@ source.complete = function(self, ctx, callback)
}
elseif ctx:get_reason() ~= types.cmp.ContextReason.TriggerOnly then
if self:get_keyword_length() <= (ctx.cursor.col - offset) then
if self.incomplete and self.context.cursor.col ~= ctx.cursor.col then
if self.incomplete and self.context.cursor.col ~= ctx.cursor.col and self.status ~= source.SourceStatus.FETCHING then
completion_context = {
triggerKind = types.lsp.CompletionTriggerKind.TriggerForIncompleteCompletions,
}