mirror of
https://github.com/neovim/neovim.git
synced 2025-09-17 16:58:17 +00:00
fix(lsp): avoid re-enabling document_color
on registerCapability
(#35774)
Problem: The registerCapability handler re-enables document_color, making it impossible to disable it in LspAttach. Solution: Enable it once on initialization and avoid re-enabling on registerCapability.
This commit is contained in:
@@ -784,7 +784,6 @@ function lsp._set_defaults(client, bufnr)
|
|||||||
if client:supports_method(ms.textDocument_diagnostic) then
|
if client:supports_method(ms.textDocument_diagnostic) then
|
||||||
lsp.diagnostic._enable(bufnr)
|
lsp.diagnostic._enable(bufnr)
|
||||||
end
|
end
|
||||||
lsp.document_color.enable(true, bufnr)
|
|
||||||
end
|
end
|
||||||
|
|
||||||
--- @deprecated
|
--- @deprecated
|
||||||
|
@@ -1087,6 +1087,10 @@ function Client:on_attach(bufnr)
|
|||||||
self:_text_document_did_open_handler(bufnr)
|
self:_text_document_did_open_handler(bufnr)
|
||||||
|
|
||||||
lsp._set_defaults(self, bufnr)
|
lsp._set_defaults(self, bufnr)
|
||||||
|
-- `enable(true)` cannot be called from `_set_defaults` for features with dynamic registration,
|
||||||
|
-- because it overrides the state every time `client/registerCapability` is received.
|
||||||
|
-- To allow disabling it once in `LspAttach`, we enable it once here instead.
|
||||||
|
lsp.document_color.enable(true, bufnr)
|
||||||
|
|
||||||
api.nvim_exec_autocmds('LspAttach', {
|
api.nvim_exec_autocmds('LspAttach', {
|
||||||
buffer = bufnr,
|
buffer = bufnr,
|
||||||
|
Reference in New Issue
Block a user