Allow renaming terminal tabs (persisted per project)
Build App / compute-version (pull_request) Successful in 3s
Build App / build-windows (pull_request) Successful in 5m33s
Build Container / build-container (pull_request) Successful in 7m58s
Build App / build-linux (pull_request) Successful in 4m51s
Build App / build-macos (pull_request) Successful in 2m39s
Build App / create-tag (pull_request) Has been skipped
Build App / sync-to-github (pull_request) Has been skipped
Build App / compute-version (pull_request) Successful in 3s
Build App / build-windows (pull_request) Successful in 5m33s
Build Container / build-container (pull_request) Successful in 7m58s
Build App / build-linux (pull_request) Successful in 4m51s
Build App / build-macos (pull_request) Successful in 2m39s
Build App / create-tag (pull_request) Has been skipped
Build App / sync-to-github (pull_request) Has been skipped
Right-click a tab (or double-click) to rename. Renamed labels show as "ProjectName: CustomName" and are stored in the project's renamed_session_names map. The entry is cleared on tab close. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -28,8 +28,25 @@ export function useTerminal() {
|
||||
|
||||
const close = useCallback(
|
||||
async (sessionId: string) => {
|
||||
// Capture session/project info before we drop it from local state.
|
||||
const { sessions: currentSessions, projects } = useAppState.getState();
|
||||
const session = currentSessions.find((s) => s.id === sessionId);
|
||||
const project = session ? projects.find((p) => p.id === session.projectId) : undefined;
|
||||
|
||||
await commands.closeTerminalSession(sessionId);
|
||||
removeSession(sessionId);
|
||||
|
||||
// Drop any persisted custom name for this session.
|
||||
if (project && project.renamed_session_names && sessionId in project.renamed_session_names) {
|
||||
const map = { ...project.renamed_session_names };
|
||||
delete map[sessionId];
|
||||
try {
|
||||
const updated = await commands.updateProject({ ...project, renamed_session_names: map });
|
||||
useAppState.getState().updateProjectInList(updated);
|
||||
} catch (err) {
|
||||
console.error("Failed to clear renamed tab name on close:", err);
|
||||
}
|
||||
}
|
||||
},
|
||||
[removeSession],
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user