diff options
author | Nate Sesti <sestinj@gmail.com> | 2023-08-02 20:42:08 -0700 |
---|---|---|
committer | Nate Sesti <sestinj@gmail.com> | 2023-08-02 20:42:08 -0700 |
commit | 0f0cbf6d65dffc71c9141a045aacaed0fb6466d6 (patch) | |
tree | 062a997b69e5b28834d188aaa1fa0ba33b12b55c /extension/src | |
parent | d8958e3ca256cacdd2073ef390e842d3f3ffbc54 (diff) | |
parent | 65747716b3a2fd58843f63d66a0f25a81aa504d8 (diff) | |
download | sncontinue-0f0cbf6d65dffc71c9141a045aacaed0fb6466d6.tar.gz sncontinue-0f0cbf6d65dffc71c9141a045aacaed0fb6466d6.tar.bz2 sncontinue-0f0cbf6d65dffc71c9141a045aacaed0fb6466d6.zip |
Merge branch 'main' into package-python
Diffstat (limited to 'extension/src')
-rw-r--r-- | extension/src/continueIdeClient.ts | 24 |
1 files changed, 13 insertions, 11 deletions
diff --git a/extension/src/continueIdeClient.ts b/extension/src/continueIdeClient.ts index a0ce009c..220edafa 100644 --- a/extension/src/continueIdeClient.ts +++ b/extension/src/continueIdeClient.ts @@ -125,7 +125,7 @@ class IdeProtocolClient { // Setup listeners for any selection changes in open editors vscode.window.onDidChangeTextEditorSelection((event) => { - if (this.editorIsTerminal(event.textEditor)) { + if (!this.editorIsCode(event.textEditor)) { return; } if (this._highlightDebounce) { @@ -442,17 +442,19 @@ class IdeProtocolClient { // ------------------------------------ // // Respond to request - private editorIsTerminal(editor: vscode.TextEditor) { - return ( - !!path.basename(editor.document.uri.fsPath).match(/\d/) || - (editor.document.languageId === "plaintext" && - editor.document.getText() === "accessible-buffer-accessible-buffer-") + // Checks to see if the editor is a code editor. + // In some cases vscode.window.visibleTextEditors can return non-code editors + // e.g. terminal editors in side-by-side mode + private editorIsCode(editor: vscode.TextEditor) { + return !( + editor.document.languageId === "plaintext" && + editor.document.getText() === "accessible-buffer-accessible-buffer-" ); } getOpenFiles(): string[] { return vscode.window.visibleTextEditors - .filter((editor) => !this.editorIsTerminal(editor)) + .filter((editor) => this.editorIsCode(editor)) .map((editor) => { return editor.document.uri.fsPath; }); @@ -460,7 +462,7 @@ class IdeProtocolClient { getVisibleFiles(): string[] { return vscode.window.visibleTextEditors - .filter((editor) => !this.editorIsTerminal(editor)) + .filter((editor) => this.editorIsCode(editor)) .map((editor) => { return editor.document.uri.fsPath; }); @@ -468,7 +470,7 @@ class IdeProtocolClient { saveFile(filepath: string) { vscode.window.visibleTextEditors - .filter((editor) => !this.editorIsTerminal(editor)) + .filter((editor) => this.editorIsCode(editor)) .forEach((editor) => { if (editor.document.uri.fsPath === filepath) { editor.document.save(); @@ -479,7 +481,7 @@ class IdeProtocolClient { readFile(filepath: string): string { let contents: string | undefined; vscode.window.visibleTextEditors - .filter((editor) => !this.editorIsTerminal(editor)) + .filter((editor) => this.editorIsCode(editor)) .forEach((editor) => { if (editor.document.uri.fsPath === filepath) { contents = editor.document.getText(); @@ -525,7 +527,7 @@ class IdeProtocolClient { // TODO let rangeInFiles: RangeInFile[] = []; vscode.window.visibleTextEditors - .filter((editor) => !this.editorIsTerminal(editor)) + .filter((editor) => this.editorIsCode(editor)) .forEach((editor) => { editor.selections.forEach((selection) => { // if (!selection.isEmpty) { |