From 099f0ec401b059dcb7169fd3fe72cd9395b476a1 Mon Sep 17 00:00:00 2001 From: Toshii <94262432+0xToshii@users.noreply.github.com> Date: Wed, 11 Jun 2025 01:24:42 -0700 Subject: [PATCH] fix the settings for terminal timeout (#4153) * base * changeset --- .changeset/real-clouds-act.md | 5 ++++ proto/state.proto | 1 - .../state/updateTerminalConnectionTimeout.ts | 27 ------------------- .../settings/TerminalSettingsSection.tsx | 14 ---------- 4 files changed, 5 insertions(+), 42 deletions(-) create mode 100644 .changeset/real-clouds-act.md delete mode 100644 src/core/controller/state/updateTerminalConnectionTimeout.ts diff --git a/.changeset/real-clouds-act.md b/.changeset/real-clouds-act.md new file mode 100644 index 0000000000..0bc6af8180 --- /dev/null +++ b/.changeset/real-clouds-act.md @@ -0,0 +1,5 @@ +--- +"claude-dev": patch +--- + +fix menu for setting terminal timeout diff --git a/proto/state.proto b/proto/state.proto index 486efb7e2a..48b427abe1 100644 --- a/proto/state.proto +++ b/proto/state.proto @@ -11,7 +11,6 @@ service StateService { rpc toggleFavoriteModel(StringRequest) returns (Empty); rpc resetState(EmptyRequest) returns (Empty); rpc togglePlanActMode(TogglePlanActModeRequest) returns (Empty); - rpc updateTerminalConnectionTimeout(Int64Request) returns (Int64); rpc updateAutoApprovalSettings(AutoApprovalSettingsRequest) returns (Empty); rpc updateSettings(UpdateSettingsRequest) returns (Empty); } diff --git a/src/core/controller/state/updateTerminalConnectionTimeout.ts b/src/core/controller/state/updateTerminalConnectionTimeout.ts deleted file mode 100644 index e3e549b1eb..0000000000 --- a/src/core/controller/state/updateTerminalConnectionTimeout.ts +++ /dev/null @@ -1,27 +0,0 @@ -import { Controller } from ".." -import { Int64, Int64Request } from "../../../shared/proto/common" -import { updateGlobalState } from "../../storage/state" - -/** - * Updates the terminal connection timeout setting - * @param controller The controller instance - * @param request The request containing the timeout value in milliseconds - * @returns The updated timeout value - */ -export async function updateTerminalConnectionTimeout(controller: Controller, request: Int64Request): Promise { - try { - const timeout = request.value - - if (typeof timeout === "number" && !isNaN(timeout) && timeout > 0) { - // Update the global state directly - await updateGlobalState(controller.context, "shellIntegrationTimeout", timeout) - return Int64.create({ value: timeout }) - } else { - console.warn(`Invalid shell integration timeout value received: ${timeout}. Expected a positive number.`) - throw new Error("Invalid timeout value. Expected a positive number.") - } - } catch (error) { - console.error(`Failed to update terminal connection timeout: ${error}`) - throw error - } -} diff --git a/webview-ui/src/components/settings/TerminalSettingsSection.tsx b/webview-ui/src/components/settings/TerminalSettingsSection.tsx index eaff9173ff..1ff264b313 100644 --- a/webview-ui/src/components/settings/TerminalSettingsSection.tsx +++ b/webview-ui/src/components/settings/TerminalSettingsSection.tsx @@ -1,8 +1,6 @@ import React, { useState } from "react" import { VSCodeTextField, VSCodeCheckbox } from "@vscode/webview-ui-toolkit/react" import { useExtensionState } from "@/context/ExtensionStateContext" -import { StateServiceClient } from "@/services/grpc-client" -import { Int64, Int64Request } from "@shared/proto/common" export const TerminalSettingsSection: React.FC = () => { const { shellIntegrationTimeout, setShellIntegrationTimeout, terminalReuseEnabled, setTerminalReuseEnabled } = @@ -27,18 +25,6 @@ export const TerminalSettingsSection: React.FC = () => { // Update local state setShellIntegrationTimeout(timeout) - - // Send to extension using gRPC - StateServiceClient.updateTerminalConnectionTimeout({ - value: timeout, - } as Int64Request) - .then((response: Int64) => { - setShellIntegrationTimeout(response.value) - setInputValue((response.value / 1000).toString()) - }) - .catch((error) => { - console.error("Failed to update terminal connection timeout:", error) - }) } const handleInputBlur = () => {