summaryrefslogtreecommitdiff
path: root/extension/src
diff options
context:
space:
mode:
authorNate Sesti <sestinj@gmail.com>2023-08-01 14:09:23 -0700
committerNate Sesti <sestinj@gmail.com>2023-08-01 14:09:23 -0700
commitfe1b9265a631f3ce5ace109d1eac6716b1fe2eb6 (patch)
treef3d084aee695cabf8e25735170cb34ca2a18ed35 /extension/src
parentc4d88a8d22622d7c63ca19ba1945dd82dbc3e008 (diff)
downloadsncontinue-fe1b9265a631f3ce5ace109d1eac6716b1fe2eb6.tar.gz
sncontinue-fe1b9265a631f3ce5ace109d1eac6716b1fe2eb6.tar.bz2
sncontinue-fe1b9265a631f3ce5ace109d1eac6716b1fe2eb6.zip
refactor: :loud_sound: show errors to IDE before GUI connected
Diffstat (limited to 'extension/src')
-rw-r--r--extension/src/continueIdeClient.ts16
1 files changed, 16 insertions, 0 deletions
diff --git a/extension/src/continueIdeClient.ts b/extension/src/continueIdeClient.ts
index 498cf9de..a0ce009c 100644
--- a/extension/src/continueIdeClient.ts
+++ b/extension/src/continueIdeClient.ts
@@ -192,6 +192,8 @@ class IdeProtocolClient {
});
}
+ visibleMessages: Set<string> = new Set();
+
async handleMessage(
messageType: string,
data: any,
@@ -254,6 +256,20 @@ class IdeProtocolClient {
this.openFile(data.filepath);
// TODO: Close file if False
break;
+ case "showMessage":
+ if (!this.visibleMessages.has(data.message)) {
+ this.visibleMessages.add(data.message);
+ vscode.window
+ .showInformationMessage(data.message, "Copy Traceback", "View Logs")
+ .then((selection) => {
+ if (selection === "View Logs") {
+ vscode.commands.executeCommand("continue.viewLogs");
+ } else if (selection === "Copy Traceback") {
+ vscode.env.clipboard.writeText(data.message);
+ }
+ });
+ }
+ break;
case "showVirtualFile":
this.showVirtualFile(data.name, data.contents);
break;