M23: Experte-Tab-Sektionsüberschriften prominenter + einklappbar

Section-Header größer/fett mit adaptivem accentColor-Hintergrund statt
macOS' winzigem Kapitälchen-Default. Einklappbar per eigenem Chevron
(immer sichtbar, nicht macOS' Hover-only-Sidebar-Dreieck) statt
Section(isExpanded:), da SwiftUI dessen natives Disclosure-Verhalten
nicht anpassen lässt. Startet standardmäßig komplett zugeklappt.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
Kay
2026-09-16 11:03:39 +02:00
co-authored by Claude Sonnet 5
parent a0e7e53f22
commit 567feed93a
3 changed files with 114 additions and 27 deletions
+29
View File
@@ -1389,6 +1389,35 @@ in eine private `resetToInitialState()` plus zwei benannte Wrapper
Aufrufkontext (erfolgreicher Apply vs. Nutzer bricht ab) unter dem
passenden Namen lesbar. Live bestätigt ("sieht gut aus").
**M23: Experte-Tab-Sektionsüberschriften prominenter + einklappbar**
(2026-09-16, Nutzerwunsch: "die Sektionsüberschriften ... müssen
prominenter sein und eingefärbt, bitte größer machen und passend
farblich hinterlegen (darkmode beachten)", danach "die einzelnen
Sektion einklappbar machen"). Zwei Schritte:
1. `Section("...")`s Standard-Header (macOS' winzige graue Kapitälchen-
Beschriftung) durch eigenen `Text` ersetzt: größer/fett
(`.title3.bold()`), Hintergrund `Color.accentColor.opacity(0.18)`
statt eines festen RGB-Werts, damit Light/Dark Mode automatisch
passend kontrastieren — `.textCase(nil)` nötig, sonst erzwingt macOS
trotzdem wieder seine eigene Kapitälchen-Darstellung über dem
eigenen View.
2. Einklappbar gemacht — erster Versuch mit SwiftUIs eingebautem
`Section(isExpanded:)` (native Disclosure-Dreieck), vom Nutzer
sofort korrigiert: "der Pfeil sollte immer zu sehen sein und nicht
erst beim Hovern" — das native macOS-Sidebar-Dreieck ist genau wie
in Finder standardmäßig Hover-only, keine SwiftUI-Option dafür
vorgesehen. Fix: eigenes Chevron-Icon (`chevron.right`, per
`.rotationEffect` gedreht) direkt im selbstgebauten Header, ganzer
Header als `Button` klickbar; `Section(isExpanded:)`-API komplett
fallengelassen zugunsten eines `if isExpanded { ForEach(...) }`
innerhalb eines schlichten `Section { }`, gesteuert über eigenen
`@State`/Binding (`collapsedCategories: Set<RouterOSMenuCategory>`
für die neun Kategorien, `isCustomPathExpanded: Bool` für "Eigener
Menüpfad"). Auf Nutzerwunsch ("standardmäßig sollten beim Öffnen des
Experte-Tab alle Sektion zugeklappt sein") startet alles zugeklappt.
`.listStyle(.sidebar)` an der `List` ergänzt, für den nativen
macOS-Sidebar-Look. Live bestätigt ("sehr gut, bin sehr zufrieden").
## Nächste Schritte
1. ~~M16: restliche `RouterOSSchemaCatalog.swift`-Sektionen übersetzen~~,