From 113e899f410c2f467700b37b8f3aaf101c9795d0 Mon Sep 17 00:00:00 2001 From: Jordan Pittman Date: Wed, 19 Mar 2025 11:27:10 -0400 Subject: [PATCH 1/3] Refresh projects when VSCode settings update --- packages/tailwindcss-language-server/src/projects.ts | 8 +++----- packages/tailwindcss-language-server/src/tw.ts | 3 +++ 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/packages/tailwindcss-language-server/src/projects.ts b/packages/tailwindcss-language-server/src/projects.ts index afc4515f..a8012920 100644 --- a/packages/tailwindcss-language-server/src/projects.ts +++ b/packages/tailwindcss-language-server/src/projects.ts @@ -1181,11 +1181,9 @@ export async function createProjectService( if (state.enabled) { refreshDiagnostics() } - if (settings.editor?.colorDecorators) { - updateCapabilities() - } else { - connection.sendNotification('@/tailwindCSS/clearColors') - } + + updateCapabilities() + connection.sendNotification('@/tailwindCSS/clearColors') }, onFileEvents, async onHover(params: TextDocumentPositionParams): Promise { diff --git a/packages/tailwindcss-language-server/src/tw.ts b/packages/tailwindcss-language-server/src/tw.ts index fc6a87a8..1b673b52 100644 --- a/packages/tailwindcss-language-server/src/tw.ts +++ b/packages/tailwindcss-language-server/src/tw.ts @@ -33,6 +33,7 @@ import { DocumentLinkRequest, TextDocumentSyncKind, CodeLensRequest, + DidChangeConfigurationNotification, } from 'vscode-languageserver/node' import { URI } from 'vscode-uri' import normalizePath from 'normalize-path' @@ -799,6 +800,7 @@ export class TW { private updateCapabilities() { if (!supportsDynamicRegistration(this.initializeParams)) { + this.connection.client.register(DidChangeConfigurationNotification.type, undefined) return } @@ -815,6 +817,7 @@ export class TW { capabilities.add(CodeActionRequest.type, { documentSelector: null }) capabilities.add(CodeLensRequest.type, { documentSelector: null }) capabilities.add(DocumentLinkRequest.type, { documentSelector: null }) + capabilities.add(DidChangeConfigurationNotification.type, undefined) capabilities.add(CompletionRequest.type, { documentSelector: null, From 3f2919379709d4d6671f2aa52eb44b64acd213ab Mon Sep 17 00:00:00 2001 From: Jordan Pittman Date: Wed, 19 Mar 2025 11:35:24 -0400 Subject: [PATCH 2/3] Update changelog --- packages/vscode-tailwindcss/CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/vscode-tailwindcss/CHANGELOG.md b/packages/vscode-tailwindcss/CHANGELOG.md index 468cdd08..fa2d07c3 100644 --- a/packages/vscode-tailwindcss/CHANGELOG.md +++ b/packages/vscode-tailwindcss/CHANGELOG.md @@ -6,6 +6,7 @@ - v4: Make sure completions show after variants using arbitrary and bare values ([#1263](https://github.com/tailwindlabs/tailwindcss-intellisense/pull/1263)) - v4: Add support for upcoming `@source not` feature ([#1262](https://github.com/tailwindlabs/tailwindcss-intellisense/pull/1262)) - v4: Add support for upcoming `@source inline(…)` feature ([#1262](https://github.com/tailwindlabs/tailwindcss-intellisense/pull/1262)) +- LSP: Refresh internal caches when settings are updated ([#1273](https://github.com/tailwindlabs/tailwindcss-intellisense/pull/1273)) # 0.14.9 From 810bf22ae09454dd1b9750517fddb7f6d602b280 Mon Sep 17 00:00:00 2001 From: Jordan Pittman Date: Wed, 19 Mar 2025 11:44:44 -0400 Subject: [PATCH 3/3] Add notes --- packages/tailwindcss-language-server/src/tw.ts | 3 +++ 1 file changed, 3 insertions(+) diff --git a/packages/tailwindcss-language-server/src/tw.ts b/packages/tailwindcss-language-server/src/tw.ts index 1b673b52..48d7b5f7 100644 --- a/packages/tailwindcss-language-server/src/tw.ts +++ b/packages/tailwindcss-language-server/src/tw.ts @@ -812,6 +812,8 @@ export class TW { let capabilities = BulkRegistration.create() + // TODO: We should *not* be re-registering these capabilities + // IDEA: These should probably be static registrations up front capabilities.add(HoverRequest.type, { documentSelector: null }) capabilities.add(DocumentColorRequest.type, { documentSelector: null }) capabilities.add(CodeActionRequest.type, { documentSelector: null }) @@ -819,6 +821,7 @@ export class TW { capabilities.add(DocumentLinkRequest.type, { documentSelector: null }) capabilities.add(DidChangeConfigurationNotification.type, undefined) + // TODO: Only re-register this if trigger characters change capabilities.add(CompletionRequest.type, { documentSelector: null, resolveProvider: true,