From 1d3ad9d0758a94e42fa88d20618d164fe1140f11 Mon Sep 17 00:00:00 2001 From: christine betts Date: Fri, 25 Jul 2025 14:50:34 +0000 Subject: Add drawer for active files in IDE mode (#4682) Co-authored-by: Shreya --- .../src/ui/components/IDEContextDetailDisplay.tsx | 52 ++++++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 packages/cli/src/ui/components/IDEContextDetailDisplay.tsx (limited to 'packages/cli/src/ui/components/IDEContextDetailDisplay.tsx') diff --git a/packages/cli/src/ui/components/IDEContextDetailDisplay.tsx b/packages/cli/src/ui/components/IDEContextDetailDisplay.tsx new file mode 100644 index 00000000..8d4fb2c9 --- /dev/null +++ b/packages/cli/src/ui/components/IDEContextDetailDisplay.tsx @@ -0,0 +1,52 @@ +/** + * @license + * Copyright 2025 Google LLC + * SPDX-License-Identifier: Apache-2.0 + */ + +import { Box, Text } from 'ink'; +import { type OpenFiles } from '@google/gemini-cli-core'; +import { Colors } from '../colors.js'; +import path from 'node:path'; + +interface IDEContextDetailDisplayProps { + openFiles: OpenFiles | undefined; +} + +export function IDEContextDetailDisplay({ + openFiles, +}: IDEContextDetailDisplayProps) { + if ( + !openFiles || + !openFiles.recentOpenFiles || + openFiles.recentOpenFiles.length === 0 + ) { + return null; + } + const recentFiles = openFiles.recentOpenFiles || []; + + return ( + + + IDE Context (ctrl+e to toggle) + + {recentFiles.length > 0 && ( + + Recent files: + {recentFiles.map((file) => ( + + - {path.basename(file.filePath)} + {file.filePath === openFiles.activeFile ? ' (active)' : ''} + + ))} + + )} + + ); +} -- cgit v1.2.3