File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -398,7 +398,9 @@ export default function Sidebar() {
398398 const [ expandedThreadListsByProject , setExpandedThreadListsByProject ] = useState <
399399 ReadonlySet < ProjectId >
400400 > ( ( ) => new Set ( ) ) ;
401- const [ filesExpanded , setFilesExpanded ] = useState ( true ) ;
401+ const [ filesCollapsedByProject , setFilesCollapsedByProject ] = useState <
402+ ReadonlySet < ProjectId >
403+ > ( ( ) => new Set ( ) ) ;
402404 const dragInProgressRef = useRef ( false ) ;
403405 const suppressProjectClickAfterDragRef = useRef ( false ) ;
404406 const [ desktopUpdateState , setDesktopUpdateState ] = useState < DesktopUpdateState | null > ( null ) ;
@@ -1480,18 +1482,28 @@ export default function Sidebar() {
14801482 < button
14811483 type = "button"
14821484 className = "mb-1.5 flex w-full items-center gap-1.5 px-2 text-[10px] uppercase tracking-[0.14em] text-muted-foreground/58 hover:text-muted-foreground/80"
1483- onClick = { ( ) => setFilesExpanded ( ( prev ) => ! prev ) }
1485+ onClick = { ( ) =>
1486+ setFilesCollapsedByProject ( ( current ) => {
1487+ const next = new Set ( current ) ;
1488+ if ( next . has ( project . id ) ) {
1489+ next . delete ( project . id ) ;
1490+ } else {
1491+ next . add ( project . id ) ;
1492+ }
1493+ return next ;
1494+ } )
1495+ }
14841496 >
14851497 < ChevronRightIcon
14861498 className = { cn (
14871499 "size-3 shrink-0 transition-transform" ,
1488- filesExpanded && "rotate-90" ,
1500+ ! filesCollapsedByProject . has ( project . id ) && "rotate-90" ,
14891501 ) }
14901502 />
14911503 < FolderIcon className = "size-3 shrink-0" />
14921504 < span > Files</ span >
14931505 </ button >
1494- { filesExpanded && (
1506+ { ! filesCollapsedByProject . has ( project . id ) && (
14951507 < WorkspaceFileTree cwd = { activeWorkspaceCwd } resolvedTheme = { resolvedTheme } />
14961508 ) }
14971509 </ div >
You can’t perform that action at this time.
0 commit comments