Keep tabs hidden but in memory

This commit is contained in:
Shantur Rathore
2025-12-09 11:12:41 +00:00
parent 54a2917faa
commit e54f80f20e

View File

@@ -1,4 +1,4 @@
import { Component, Show, createMemo, createEffect, createSignal, onMount, onCleanup } from "solid-js" import { Component, For, Show, createMemo, createEffect, createSignal, onMount, onCleanup } from "solid-js"
import { Dialog } from "@kobalte/core/dialog" import { Dialog } from "@kobalte/core/dialog"
import { Toaster } from "solid-toast" import { Toaster } from "solid-toast"
import AlertDialog from "./components/alert-dialog" import AlertDialog from "./components/alert-dialog"
@@ -325,20 +325,26 @@ const App: Component = () => {
onOpenRemoteAccess={() => setRemoteAccessOpen(true)} onOpenRemoteAccess={() => setRemoteAccessOpen(true)}
/> />
<Show when={activeInstance()} keyed> <For each={Array.from(instances().values())}>
{(instance) => ( {(instance) => {
<InstanceShell const isActiveInstance = () => activeInstanceId() === instance.id
instance={instance} return (
escapeInDebounce={escapeInDebounce()} <div class="flex-1 min-h-0" style={{ display: isActiveInstance() ? "flex" : "none" }}>
paletteCommands={paletteCommands} <InstanceShell
onCloseSession={(sessionId) => handleCloseSession(instance.id, sessionId)} instance={instance}
onNewSession={() => handleNewSession(instance.id)} escapeInDebounce={escapeInDebounce()}
handleSidebarAgentChange={(sessionId, agent) => handleSidebarAgentChange(instance.id, sessionId, agent)} paletteCommands={paletteCommands}
handleSidebarModelChange={(sessionId, model) => handleSidebarModelChange(instance.id, sessionId, model)} onCloseSession={(sessionId) => handleCloseSession(instance.id, sessionId)}
onExecuteCommand={executeCommand} onNewSession={() => handleNewSession(instance.id)}
/> handleSidebarAgentChange={(sessionId, agent) => handleSidebarAgentChange(instance.id, sessionId, agent)}
)} handleSidebarModelChange={(sessionId, model) => handleSidebarModelChange(instance.id, sessionId, model)}
</Show> onExecuteCommand={executeCommand}
/>
</div>
)
}}
</For>
</> </>
} }
> >