feat(accessibility): Add option to disable loading phrases (#745)

This commit is contained in:
N. Taylor Mullen
2025-06-04 00:46:57 -07:00
committed by GitHub
parent d179b3aae4
commit afc30e314f
6 changed files with 31 additions and 3 deletions

View File

@@ -12,6 +12,7 @@ import {
MCPServerConfig,
ApprovalMode,
ToolRegistry,
AccessibilitySettings,
} from '@gemini-code/core';
import { LoadedSettings, SettingsFile, Settings } from '../config/settings.js';
@@ -35,6 +36,7 @@ interface MockServerConfig {
approvalMode: ApprovalMode;
vertexai?: boolean;
showMemoryUsage?: boolean;
accessibility?: AccessibilitySettings;
getApiKey: Mock<() => string>;
getModel: Mock<() => string>;
@@ -58,6 +60,7 @@ interface MockServerConfig {
setApprovalMode: Mock<(skip: ApprovalMode) => void>;
getVertexAI: Mock<() => boolean | undefined>;
getShowMemoryUsage: Mock<() => boolean>;
getAccessibility: Mock<() => AccessibilitySettings>;
}
// Mock @gemini-code/core and its Config class
@@ -87,6 +90,7 @@ vi.mock('@gemini-code/core', async (importOriginal) => {
approvalMode: opts.approvalMode ?? ApprovalMode.DEFAULT,
vertexai: opts.vertexai,
showMemoryUsage: opts.showMemoryUsage ?? false,
accessibility: opts.accessibility ?? {},
getApiKey: vi.fn(() => opts.apiKey || 'test-key'),
getModel: vi.fn(() => opts.model || 'test-model-in-mock-factory'),
@@ -112,6 +116,7 @@ vi.mock('@gemini-code/core', async (importOriginal) => {
setApprovalMode: vi.fn(),
getVertexAI: vi.fn(() => opts.vertexai),
getShowMemoryUsage: vi.fn(() => opts.showMemoryUsage ?? false),
getAccessibility: vi.fn(() => opts.accessibility ?? {}),
};
});
return {

View File

@@ -399,7 +399,11 @@ export const App = ({
) : (
<>
<LoadingIndicator
currentLoadingPhrase={currentLoadingPhrase}
currentLoadingPhrase={
config.getAccessibility()?.disableLoadingPhrases
? undefined
: currentLoadingPhrase
}
elapsedTime={elapsedTime}
/>
<Box

View File

@@ -12,7 +12,7 @@ import { StreamingState } from '../types.js';
import { GeminiRespondingSpinner } from './GeminiRespondingSpinner.js';
interface LoadingIndicatorProps {
currentLoadingPhrase: string;
currentLoadingPhrase?: string;
elapsedTime: number;
rightContent?: React.ReactNode;
}
@@ -37,7 +37,9 @@ export const LoadingIndicator: React.FC<LoadingIndicatorProps> = ({
}
/>
</Box>
<Text color={Colors.AccentPurple}>{currentLoadingPhrase}</Text>
{currentLoadingPhrase && (
<Text color={Colors.AccentPurple}>{currentLoadingPhrase}</Text>
)}
<Text color={Colors.SubtleComment}>
{streamingState === StreamingState.WaitingForConfirmation
? ''