Asset browser: implement optional lateral folder tree panel
Goal
Implement an optional lateral panel in the asset browser showing the complete folder structure as a collapsible tree widget, enabling efficient navigation without the current folder-traversal button row. When this panel is active, hide the .. "go up" button since tree-based navigation makes it redundant.
Context / integration points
- Asset browser currently displays a breadcrumb + folder buttons (
.., refresh); the breadcrumb is static. - The folder tree panel should coexist with the current grid view (or switchable).
- Related to #68 (closed) (clickable breadcrumb) and #70 (closed) (tree-exclusive navigation) — this is the foundation.
- Shares UI patterns with scene hierarchy panel (both are hierarchical tree widgets over filesystem).
Design
- Add a toggle in the header to show/hide the lateral tree panel (similar to "Details" panels in many editors).
- Tree widget displays the
asset/directory structure recursively; can be collapsed/expanded per folder. - Clicking a folder in the tree navigates the main grid view to that folder.
- When tree panel is visible, hide the
..button in the main grid header (breadcrumb navigation via tree).
Tasks
- Implement collapsible tree widget component (reusable, not specific to asset browser)
- Wire tree widget to scan the
asset/directory and build the hierarchy - Add toggle button in asset browser header to show/hide the tree panel
- Navigate main grid view when tree node is clicked
- Hide
..button when tree panel is visible - Persist toggle state in settings (remember if tree was open/closed last session)
Acceptance criteria
- Tree panel displays the full
asset/hierarchy with all subdirectories. - Clicking a folder in the tree updates the main grid to show that folder's contents.
- Tree can be toggled on/off;
..button hides when tree is visible. - Navigating via tree is as fast as the current button-based approach.
Dependencies
Related to #68 (closed) (breadcrumb), #70 (closed) (tree-exclusive mode). Unblocked; can ship independently.
Out of scope
- File display in the tree (that's #70 (closed), tree-exclusive mode).
- Drag-drop reorganization of assets.
- Advanced tree filtering/search (future enhancement).