diff --git a/packages/app/src/components/sliding-sidebar.tsx b/packages/app/src/components/sliding-sidebar.tsx index 6c8e07079..78dd8d938 100644 --- a/packages/app/src/components/sliding-sidebar.tsx +++ b/packages/app/src/components/sliding-sidebar.tsx @@ -206,7 +206,10 @@ export function SlidingSidebar({ selectedAgentId }: SlidingSidebarProps) { isGesturing.value = false; }); - const swipeGesture = Gesture.Simultaneous( + // Use Race so that whichever gesture activates first wins - if vertical scroll + // happens first (via Native), the Pan gesture fails; if horizontal swipe + // happens first, Pan wins and closes the sidebar + const swipeGesture = Gesture.Race( isOpen ? closeGesture : openGesture, Gesture.Native() );