fix(workspace): preserve ClaudeSession across tab switches with CSS display

This commit is contained in:
Hibryda 2026-03-08 23:22:48 +01:00
parent 6585208233
commit fa9ca415be

View file

@ -64,26 +64,22 @@
</div> </div>
<div class="project-content-area"> <div class="project-content-area">
{#if activeTab === 'claude'} <!-- Use CSS display instead of {#if} to keep ClaudeSession alive across tab switches -->
<div class="content-pane"> <div class="content-pane" style:display={activeTab === 'claude' ? 'flex' : 'none'}>
<ClaudeSession {project} onsessionid={(id) => mainSessionId = id} /> <ClaudeSession {project} onsessionid={(id) => mainSessionId = id} />
{#if mainSessionId} {#if mainSessionId}
<TeamAgentsPanel {mainSessionId} /> <TeamAgentsPanel {mainSessionId} />
{/if} {/if}
</div> </div>
{:else if activeTab === 'files'} <div class="content-pane" style:display={activeTab === 'files' ? 'flex' : 'none'}>
<div class="content-pane"> <ProjectFiles cwd={project.cwd} projectName={project.name} />
<ProjectFiles cwd={project.cwd} projectName={project.name} /> </div>
</div> <div class="content-pane" style:display={activeTab === 'context' ? 'flex' : 'none'}>
{:else if activeTab === 'context'} <ContextPane projectName={project.name} projectCwd={project.cwd} />
<div class="content-pane"> </div>
<ContextPane projectName={project.name} projectCwd={project.cwd} />
</div>
{/if}
</div> </div>
{#if activeTab === 'claude'} <div class="terminal-section" style:display={activeTab === 'claude' ? 'flex' : 'none'}>
<div class="terminal-section">
<button class="terminal-toggle" onclick={toggleTerminal}> <button class="terminal-toggle" onclick={toggleTerminal}>
<span class="toggle-chevron" class:expanded={terminalExpanded}> <span class="toggle-chevron" class:expanded={terminalExpanded}>
<svg width="10" height="10" viewBox="0 0 10 10" fill="none"> <svg width="10" height="10" viewBox="0 0 10 10" fill="none">
@ -101,8 +97,7 @@
<TerminalTabs {project} agentSessionId={mainSessionId} /> <TerminalTabs {project} agentSessionId={mainSessionId} />
</div> </div>
{/if} {/if}
</div> </div>
{/if}
</div> </div>
<style> <style>