diff --git a/extensions/void/src/sidebar/Sidebar.tsx b/extensions/void/src/sidebar/Sidebar.tsx index 0ad474fb..684dbe71 100644 --- a/extensions/void/src/sidebar/Sidebar.tsx +++ b/extensions/void/src/sidebar/Sidebar.tsx @@ -5,21 +5,25 @@ import { awaitVSCodeResponse, getVSCodeAPI, onMessageFromVSCode, useOnVSCodeMess import { SidebarThreadSelector } from "./SidebarThreadSelector"; import { useThreads } from "./contextForThreads"; import { SidebarChat } from "./SidebarChat"; +import { SidebarSettings } from './SidebarSettings'; const Sidebar = () => { - const [isThreadSelectorOpen, setIsThreadSelectorOpen] = useState(false) + const [tab, setTab] = useState<'threadSelector' | 'chat' | 'settings'>('chat') - // if they pressed the + to add a new chat - useOnVSCodeMessage('startNewThread', (m) => { - setIsThreadSelectorOpen(false) - }) + // if they pressed the + to add a new chat + useOnVSCodeMessage('startNewThread', (m) => { + setTab('chat') + }) - // if they toggled thread selector - useOnVSCodeMessage('toggleThreadSelector', (m) => { - setIsThreadSelectorOpen(v => !v) - }) + // if they toggled thread selector + useOnVSCodeMessage('toggleThreadSelector', (m) => { + if (tab === 'threadSelector') + setTab('chat') + else + setTab('threadSelector') + }) // Receive messages from the VSCode extension @@ -33,15 +37,24 @@ const Sidebar = () => { }, []) - return <> -