Fix #232
This commit is contained in:
@@ -307,9 +307,11 @@ source.complete = function(self, ctx, callback)
|
|||||||
completion_context = completion_context,
|
completion_context = completion_context,
|
||||||
},
|
},
|
||||||
self.complete_dedup(vim.schedule_wrap(function(response)
|
self.complete_dedup(vim.schedule_wrap(function(response)
|
||||||
self.revision = self.revision + 1
|
|
||||||
if #((response or {}).items or response or {}) > 0 then
|
if #((response or {}).items or response or {}) > 0 then
|
||||||
debug.log(self:get_debug_name(), 'retrieve', #(response.items or response))
|
debug.log(self:get_debug_name(), 'retrieve', #(response.items or response))
|
||||||
|
local old_offset = self.offset
|
||||||
|
local old_entries = self.entries
|
||||||
|
|
||||||
self.status = source.SourceStatus.COMPLETED
|
self.status = source.SourceStatus.COMPLETED
|
||||||
self.incomplete = response.isIncomplete or false
|
self.incomplete = response.isIncomplete or false
|
||||||
self.entries = {}
|
self.entries = {}
|
||||||
@@ -320,6 +322,12 @@ source.complete = function(self, ctx, callback)
|
|||||||
self.offset = math.min(self.offset, e:get_offset())
|
self.offset = math.min(self.offset, e:get_offset())
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
self.revision = self.revision + 1
|
||||||
|
if #self:get_entries(ctx) == 0 then
|
||||||
|
self.offset = old_offset
|
||||||
|
self.entries = old_entries
|
||||||
|
self.revision = self.revision + 1
|
||||||
|
end
|
||||||
else
|
else
|
||||||
debug.log(self:get_debug_name(), 'continue', 'nil')
|
debug.log(self:get_debug_name(), 'continue', 'nil')
|
||||||
if completion_context.triggerKind == types.lsp.CompletionTriggerKind.TriggerCharacter then
|
if completion_context.triggerKind == types.lsp.CompletionTriggerKind.TriggerCharacter then
|
||||||
|
|||||||
Reference in New Issue
Block a user