From 5daf49da9b010f1c2cb1023b878a625729e977eb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A8=8B=E5=BA=8F=E5=91=98=E9=98=BF=E6=B1=9F=28Relakkes?= =?UTF-8?q?=29?= Date: Thu, 9 Apr 2026 00:33:23 +0800 Subject: [PATCH] feat: new session creation automatically opens as tab Add useTabStore.openTab call after session creation so new sessions are registered as tabs, and update sendMessage to pass sessionId as first arg. Co-Authored-By: Claude Sonnet 4.6 --- desktop/src/pages/EmptySession.tsx | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/desktop/src/pages/EmptySession.tsx b/desktop/src/pages/EmptySession.tsx index 3c49d504..8e1df3e1 100644 --- a/desktop/src/pages/EmptySession.tsx +++ b/desktop/src/pages/EmptySession.tsx @@ -3,6 +3,7 @@ import { useTranslation } from '../i18n' import { useSessionStore } from '../stores/sessionStore' import { useChatStore } from '../stores/chatStore' import { useUIStore } from '../stores/uiStore' +import { useTabStore } from '../stores/tabStore' import { DirectoryPicker } from '../components/shared/DirectoryPicker' import { PermissionModeSelector } from '../components/controls/PermissionModeSelector' import { ModelSelector } from '../components/controls/ModelSelector' @@ -122,6 +123,7 @@ export function EmptySession() { try { const sessionId = await createSession(workDir || undefined) setActiveView('code') + useTabStore.getState().openTab(sessionId, 'New Session') connectToSession(sessionId) const attachmentPayload: AttachmentRef[] = attachments.map((attachment) => ({ type: attachment.type, @@ -129,7 +131,7 @@ export function EmptySession() { data: attachment.data, mimeType: attachment.mimeType, })) - sendMessage(text, attachmentPayload) + sendMessage(sessionId, text, attachmentPayload) setInput('') setAttachments([]) } catch (error) {