Skip to content

feat: collapse tree by default, add expand/collapse all, move reload button#47

Merged
mstroppel merged 2 commits intomainfrom
feat/tree-collapse-controls
Apr 14, 2026
Merged

feat: collapse tree by default, add expand/collapse all, move reload button#47
mstroppel merged 2 commits intomainfrom
feat/tree-collapse-controls

Conversation

@mstroppel
Copy link
Copy Markdown
Owner

Summary

  • Tree nodes now start fully collapsed when the app loads
  • Added "▾ Alle" (expand all) and "▸ Keine" (collapse all) buttons above the tree in the sidebar
  • Moved the reload button from the top header into the sidebar toolbar alongside the expand/collapse buttons
  • Individual node toggling still works independently after using expand/collapse all

Test plan

  • On load, all tree nodes are collapsed
  • Clicking "▾ Alle" expands all branch nodes; leaf events/invalid/ignored remain non-expandable
  • Clicking "▸ Keine" collapses all nodes
  • After expanding/collapsing all, individual nodes can still be toggled normally
  • Reload button in sidebar toolbar refetches the tree (and current event if one is selected)
  • Reload button shows "Laden…" and is disabled while fetching
  • Header no longer contains the reload button

🤖 Generated with Claude Code

mstroppel and others added 2 commits April 14, 2026 22:42
- All tree nodes now start collapsed on load
- Add "▾ Alle" (expand all) and "▸ Keine" (collapse all) buttons above the tree
- Move the reload button from the top header into the sidebar toolbar
- Individual node toggling still works independently after expand/collapse all

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Replace per-node useState+useEffect with a single Set<string> of expanded
paths managed in ArchiveTree. Expand/collapse all mutates the set directly,
individual toggles update it via onToggle — no effects needed.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@mstroppel mstroppel merged commit b7e1ed8 into main Apr 14, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant