fix: update webview terminal settings to use numeric limits

- Add terminalOutputLineLimit, terminalOutputCharacterLimit to SettingsView destructuring
- Add terminalCompressProgressBar to SettingsView destructuring
- Update TerminalSettings props to pass numeric settings instead of enum
- Fix ExtensionStateContext setters for numeric terminal settings
This commit is contained in:
Hannes Rudolph 2026-01-28 17:45:41 -07:00
parent d2befe4e08
commit 9eafcc505c
2 changed files with 12 additions and 9 deletions

View file

@ -182,7 +182,10 @@ const SettingsView = forwardRef<SettingsViewRef, SettingsViewProps>(({ onDone, t
ttsSpeed,
soundVolume,
telemetrySetting,
terminalOutputLineLimit,
terminalOutputCharacterLimit,
terminalOutputPreviewSize,
terminalCompressProgressBar,
terminalShellIntegrationTimeout,
terminalShellIntegrationDisabled, // Added from upstream
terminalCommandDelay,
@ -428,13 +431,9 @@ const SettingsView = forwardRef<SettingsViewRef, SettingsViewProps>(({ onDone, t
mcpEnabled,
// Apply validation bounds only when value is defined, otherwise pass undefined
maxOpenTabsContext:
maxOpenTabsContext !== undefined
? Math.min(Math.max(0, maxOpenTabsContext), 500)
: undefined,
maxOpenTabsContext !== undefined ? Math.min(Math.max(0, maxOpenTabsContext), 500) : undefined,
maxWorkspaceFiles:
maxWorkspaceFiles !== undefined
? Math.min(Math.max(0, maxWorkspaceFiles), 500)
: undefined,
maxWorkspaceFiles !== undefined ? Math.min(Math.max(0, maxWorkspaceFiles), 500) : undefined,
showRooIgnoredFiles,
enableSubfolderRules,
maxReadFileLine,
@ -913,7 +912,8 @@ const SettingsView = forwardRef<SettingsViewRef, SettingsViewProps>(({ onDone, t
{/* Terminal Section */}
{renderTab === "terminal" && (
<TerminalSettings
terminalOutputPreviewSize={terminalOutputPreviewSize}
terminalOutputLineLimit={terminalOutputLineLimit}
terminalOutputCharacterLimit={terminalOutputCharacterLimit}
terminalShellIntegrationTimeout={terminalShellIntegrationTimeout}
terminalShellIntegrationDisabled={terminalShellIntegrationDisabled}
terminalCommandDelay={terminalCommandDelay}
@ -922,6 +922,7 @@ const SettingsView = forwardRef<SettingsViewRef, SettingsViewProps>(({ onDone, t
terminalZshOhMy={terminalZshOhMy}
terminalZshP10k={terminalZshP10k}
terminalZdotdir={terminalZdotdir}
terminalCompressProgressBar={terminalCompressProgressBar}
setCachedStateField={setCachedStateField}
/>
)}

View file

@ -539,8 +539,10 @@ export const ExtensionStateContextProvider: React.FC<{ children: React.ReactNode
setState((prevState) => ({ ...prevState, browserViewportSize: value })),
setWriteDelayMs: (value) => setState((prevState) => ({ ...prevState, writeDelayMs: value })),
setScreenshotQuality: (value) => setState((prevState) => ({ ...prevState, screenshotQuality: value })),
setTerminalOutputPreviewSize: (value) =>
setState((prevState) => ({ ...prevState, terminalOutputPreviewSize: value })),
setTerminalOutputLineLimit: (value) =>
setState((prevState) => ({ ...prevState, terminalOutputLineLimit: value })),
setTerminalOutputCharacterLimit: (value) =>
setState((prevState) => ({ ...prevState, terminalOutputCharacterLimit: value })),
setTerminalShellIntegrationTimeout: (value) =>
setState((prevState) => ({ ...prevState, terminalShellIntegrationTimeout: value })),
setTerminalShellIntegrationDisabled: (value) =>