From 42531b37a5e782e4978af5e4e37f6a7d8a8c648b Mon Sep 17 00:00:00 2001 From: Timothy Cardoza Date: Tue, 3 Mar 2026 12:51:34 -0600 Subject: [PATCH] bucket picker fix --- src/components/Layout.tsx | 8 +++++++- src/components/Navigation.tsx | 6 +++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/src/components/Layout.tsx b/src/components/Layout.tsx index 4a821a0..f33f94b 100644 --- a/src/components/Layout.tsx +++ b/src/components/Layout.tsx @@ -20,6 +20,7 @@ interface LayoutProps { export const Layout: Component = (props) => { const [isSidebarLocked, setIsSidebarLocked] = createSignal(true); const [isSidebarPeeking, setIsSidebarPeeking] = createSignal(false); + const [isDropdownOpen, setIsDropdownOpen] = createSignal(false); // Lift selectedNoteId up to Layout so it can be passed to NotesSidebar and NotepadView const [selectedNoteId, setSelectedNoteId] = createSignal(null); @@ -64,7 +65,11 @@ export const Layout: Component = (props) => { !isSidebarLocked() && (isSidebarPeeking() || (store.isNotepadMode && !selectedNoteId())) && "translate-x-0 shadow-2xl ring-1 ring-border" )} onMouseEnter={() => !isSidebarLocked() && setIsSidebarPeeking(true)} - onMouseLeave={() => !isSidebarLocked() && setIsSidebarPeeking(false)}> + onMouseLeave={() => { + if (!isSidebarLocked() && !isDropdownOpen()) { + setIsSidebarPeeking(false); + } + }}>
{/* Task Sidebar Wrapper */} @@ -82,6 +87,7 @@ export const Layout: Component = (props) => { isPeeking={isSidebarPeeking()} setIsPeeking={setIsSidebarPeeking} isEmbed={true} + onDropdownOpenChange={setIsDropdownOpen} />
diff --git a/src/components/Navigation.tsx b/src/components/Navigation.tsx index 4d63e70..9c9dd04 100644 --- a/src/components/Navigation.tsx +++ b/src/components/Navigation.tsx @@ -300,6 +300,7 @@ export const Sidebar: Component<{ isPeeking: boolean; setIsPeeking: (v: boolean) => void; isEmbed?: boolean; + onDropdownOpenChange?: (open: boolean) => void; }> = (props) => { const [switcherOpen, setSwitcherOpen] = createSignal(false); @@ -374,7 +375,10 @@ export const Sidebar: Component<{ isLocked={props.isLocked} isPeeking={props.isPeeking} setIsPeeking={props.setIsPeeking} - onOpenChange={setSwitcherOpen} + onOpenChange={(open) => { + setSwitcherOpen(open); + props.onDropdownOpenChange?.(open); + }} />