diff --git a/frontend/src/routes/components/Editor.svelte b/frontend/src/routes/components/Editor.svelte index ca64f0c983..62d04ed925 100644 --- a/frontend/src/routes/components/Editor.svelte +++ b/frontend/src/routes/components/Editor.svelte @@ -132,9 +132,7 @@ async function connectToLanguageServer(url: string, name: string, options?: any) { try { const webSocket = new WebSocket(url) - webSocket.onclose = () => { - websocketAlive[name] = false - } + webSocket.onopen = () => { websockets.push(webSocket) const socket = toSocket(webSocket) @@ -142,6 +140,9 @@ const writer = new WebSocketMessageWriter(socket) const languageClient = createLanguageClient({ reader, writer }, name, options) languageClient.start() + socket.onClose((_code, _reason) => { + websocketAlive[name] = false + }) vscode.commands.registerCommand('deno.cache', (uris: DocumentUri[] = []) => { languageClient.sendRequest(new RequestType('deno/cache'), {