From 14144ec152db24470b29569bdd3ab0bfa0f5dde5 Mon Sep 17 00:00:00 2001 From: frelodev Date: Tue, 1 Oct 2024 18:54:30 +0200 Subject: [PATCH] fix: remove cursors from inactive files --- src/commands/client.ts | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/src/commands/client.ts b/src/commands/client.ts index e3e5e9a..6490f5a 100644 --- a/src/commands/client.ts +++ b/src/commands/client.ts @@ -79,19 +79,33 @@ export async function join(selected: vscode.TreeItem | undefined) { } }); + let once = true; vscode.window.onDidChangeTextEditorSelection(async (event: vscode.TextEditorSelectionChangeEvent) => { if (event.kind == vscode.TextEditorSelectionChangeKind.Command) return; // TODO commands might move cursor too let buf = event.textEditor.document.uri; let selection: vscode.Selection = event.selections[0] let buffer = mapping.bufferMapper.by_editor(buf) - if (buffer === undefined) return; - let cursor: codemp.Cursor = { + if (buffer === undefined) { + if (once) { + await controller.send({ + startRow: 0, + startCol: 0, + endRow: 0, + endCol: 0, + buffer: "", + }); + } + once = false; + } else { + await controller.send({ startRow: selection.anchor.line, startCol: selection.anchor.character, endRow: selection.active.line, endCol: selection.active.character, buffer: buffer, user: undefined, + }); + once = true; } await controller.send(cursor); });