diff options
| author | DanielGavin <danielgavin5@hotmail.com> | 2025-05-29 20:24:59 +0200 |
|---|---|---|
| committer | DanielGavin <danielgavin5@hotmail.com> | 2025-05-29 20:24:59 +0200 |
| commit | dba39a1e8420eacb60719e02d9a2fcfd3cb5f537 (patch) | |
| tree | 5760d7bf3569e84b69a0797db8ed33f6712bdb6d /src/server | |
| parent | 83dec1712fc5f62cfd4f3b0c0d093b483bf0742b (diff) | |
Remember to check if the client has dynamic registration for change watched files.
Diffstat (limited to 'src/server')
| -rw-r--r-- | src/server/requests.odin | 4 | ||||
| -rw-r--r-- | src/server/types.odin | 10 |
2 files changed, 13 insertions, 1 deletions
diff --git a/src/server/requests.odin b/src/server/requests.odin index 84bb405..d5a3481 100644 --- a/src/server/requests.odin +++ b/src/server/requests.odin @@ -725,7 +725,9 @@ request_initialize :: proc( try_build_package(pkg) } - register_dynamic_capabilities(writer) + if initialize_params.capabilities.workspace.didChangeWatchedFiles.dynamicRegistration { + register_dynamic_capabilities(writer) + } return .None } diff --git a/src/server/types.odin b/src/server/types.odin index c9107ff..4a4ef8f 100644 --- a/src/server/types.odin +++ b/src/server/types.odin @@ -213,8 +213,18 @@ ParameterInformationCapabilities :: struct { ClientCapabilities :: struct { textDocument: TextDocumentClientCapabilities, general: GeneralClientCapabilities, + workspace: WorkspaceCapabilities, } +WorkspaceCapabilities :: struct { + didChangeWatchedFiles: DidChangeWatchedFilesClientCapabilities, +} + +DidChangeWatchedFilesClientCapabilities :: struct { + dynamicRegistration: bool, +} + + RangeOptional :: union { common.Range, } |