From 1e1012a2cd8537af1ba1a65227a6473da44a2578 Mon Sep 17 00:00:00 2001
From: Ty Dunn <ty@tydunn.com>
Date: Wed, 21 Jun 2023 15:02:20 -0700
Subject: removing captured terminal

---
 extension/src/activation/activate.ts | 37 +++---------------------------------
 extension/src/commands.ts            |  5 -----
 extension/src/continueIdeClient.ts   | 14 +++-----------
 3 files changed, 6 insertions(+), 50 deletions(-)

diff --git a/extension/src/activation/activate.ts b/extension/src/activation/activate.ts
index 32726c86..34abdff7 100644
--- a/extension/src/activation/activate.ts
+++ b/extension/src/activation/activate.ts
@@ -8,7 +8,7 @@ import * as path from "path";
 import IdeProtocolClient from "../continueIdeClient";
 import { getContinueServerUrl } from "../bridge";
 import { setupDebugPanel, ContinueGUIWebviewViewProvider } from "../debugPanel";
-import { CapturedTerminal } from "../terminal/terminalEmulator";
+// import { CapturedTerminal } from "../terminal/terminalEmulator";
 
 export let extensionContext: vscode.ExtensionContext | undefined = undefined;
 
@@ -49,41 +49,10 @@ export function activateExtension(
   })();
 
   // All opened terminals should be replaced by our own terminal
-  vscode.window.onDidOpenTerminal((terminal) => {
-    if (terminal.name === "Continue") {
-      return;
-    }
-    const options = terminal.creationOptions;
-    const capturedTerminal = new CapturedTerminal({
-      ...options,
-      name: "Continue",
-    });
-    terminal.dispose();
-    if (!ideProtocolClient.continueTerminal) {
-      ideProtocolClient.continueTerminal = capturedTerminal;
-    }
-  });
+  // vscode.window.onDidOpenTerminal((terminal) => {});
 
   // If any terminals are open to start, replace them
-  vscode.window.terminals.forEach((terminal) => {
-    if (terminal.name === "Continue") {
-      return;
-    }
-    const options = terminal.creationOptions;
-    const capturedTerminal = new CapturedTerminal(
-      {
-        ...options,
-        name: "Continue",
-      },
-      (commandOutput: string) => {
-        ideProtocolClient.sendCommandOutput(commandOutput);
-      }
-    );
-    terminal.dispose();
-    if (!ideProtocolClient.continueTerminal) {
-      ideProtocolClient.continueTerminal = capturedTerminal;
-    }
-  });
+  // vscode.window.terminals.forEach((terminal) => {}
 
   extensionContext = context;
 }
diff --git a/extension/src/commands.ts b/extension/src/commands.ts
index 22e15c43..291a3ceb 100644
--- a/extension/src/commands.ts
+++ b/extension/src/commands.ts
@@ -13,7 +13,6 @@ import {
 } from "./suggestions";
 import * as bridge from "./bridge";
 import { debugPanelWebview, setupDebugPanel } from "./debugPanel";
-// import { openCapturedTerminal } from "./terminal/terminalEmulator";
 import { getRightViewColumn } from "./util/vscode";
 import {
   findSuspiciousCode,
@@ -67,10 +66,6 @@ const commandsMap: { [command: string]: (...args: any) => any } = {
       type: "focusContinueInput",
     });
   },
-  "continue.openCapturedTerminal": () => {
-    // Happens in webview resolution function
-    // openCapturedTerminal();
-  },
   "continue.findSuspiciousCode": async (
     debugContext: SerializedDebugContext
   ) => {
diff --git a/extension/src/continueIdeClient.ts b/extension/src/continueIdeClient.ts
index fbad5f5d..202077de 100644
--- a/extension/src/continueIdeClient.ts
+++ b/extension/src/continueIdeClient.ts
@@ -12,7 +12,6 @@ import { debugPanelWebview, setupDebugPanel } from "./debugPanel";
 import { FileEditWithFullContents } from "../schema/FileEditWithFullContents";
 import fs = require("fs");
 import { WebsocketMessenger } from "./util/messenger";
-import { CapturedTerminal } from "./terminal/terminalEmulator";
 import { decorationManager } from "./decorations";
 
 class IdeProtocolClient {
@@ -326,17 +325,10 @@ class IdeProtocolClient {
     return rangeInFiles;
   }
 
-  public continueTerminal: CapturedTerminal | undefined;
-
   async runCommand(command: string) {
-    if (!this.continueTerminal || this.continueTerminal.isClosed()) {
-      this.continueTerminal = new CapturedTerminal({
-        name: "Continue",
-      });
-    }
-
-    this.continueTerminal.show();
-    return await this.continueTerminal.runCommand(command);
+    const terminal = vscode.window.createTerminal();
+    terminal.show();
+    terminal.sendText(command);
   }
 
   sendCommandOutput(output: string) {
-- 
cgit v1.2.3-70-g09d2


From 0fc6e9c3e3c8117fd29c8fefd3134cf45f043b85 Mon Sep 17 00:00:00 2001
From: Ty Dunn <ty@tydunn.com>
Date: Wed, 21 Jun 2023 21:36:24 -0700
Subject: run existing terminal if possible

---
 extension/src/continueIdeClient.ts | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/extension/src/continueIdeClient.ts b/extension/src/continueIdeClient.ts
index 202077de..3a77e348 100644
--- a/extension/src/continueIdeClient.ts
+++ b/extension/src/continueIdeClient.ts
@@ -326,9 +326,13 @@ class IdeProtocolClient {
   }
 
   async runCommand(command: string) {
-    const terminal = vscode.window.createTerminal();
-    terminal.show();
-    terminal.sendText(command);
+    if (vscode.window.terminals.length) {
+      vscode.window.terminals[0].sendText(command);
+    } else {
+        const terminal = vscode.window.createTerminal();
+        terminal.show();
+        terminal.sendText(command);
+    }
   }
 
   sendCommandOutput(output: string) {
-- 
cgit v1.2.3-70-g09d2