UX-Simulation, Teil 2: Player-Feinschliff, Downloads, Einstellungen

Zweiter Block aus der UX-Simulation (39 Funde insgesamt):

- Songtext-Icon deaktiviert statt totem Knopf, wenn kein Ziel bekannt ist
- Sleep-Timer-Restzeit jetzt auch im Sheet sichtbar, nicht nur im Tooltip
- Drag-Handle in der Warteschlange, Wisch-nach-unten schließt den
  Vollbild-Player
- Fehlender Tooltip am Songtext-Sheet-Schließen-Knopf ergänzt
- YouTube-Download: Zeitüberschreitung meldet sich anders als toter Server
- Server-Tab zeigte beim Öffnen kurz fälschlich "nicht verbunden"
- Einstellungen: Favoriten-/Playlisten-Sync von "Speicher" zu
  "Musikserver" verschoben, Navidrome-Eintrag erklärt jetzt seinen Zweck
- Kommentar in geteilte_adresse.dart korrigiert (Verhalten unverändert,
  dafür gibt es einen Test)

Bewusst zurückgestellt: ServerFavoriteButton bleibt lokal-only (dokumentierte
Architektur-Entscheidung, siehe G3 im UX-Review), Live-Wischgeste am
Mini-Player, YouTube-Download-Abbrechen, Download-Badge im inaktiven
Unterreiter, Versionsnummer (neue Abhängigkeit nötig).

539 Tests grün (vorher 537), flutter analyze ohne Befund.
This commit is contained in:
Hermes (Server)
2026-08-25 09:49:47 +02:00
parent 07acf77ba4
commit 5645660a2d
8 changed files with 186 additions and 40 deletions
+46
View File
@@ -5,6 +5,52 @@ Format angelehnt an [Keep a Changelog](https://keepachangelog.com/de/1.0.0/).
## [Unreleased]
### 🧑‍🤝‍🧑 UX-Simulation, Teil 2: Player-Feinschliff, Downloads, Einstellungen (2026-08-25)
Zweiter Block derselben 39 Funde:
- 🎧 **Songtext-Icon ohne ID war ein toter Knopf** — sichtbar, tippbar, aber
ohne jede Wirkung. Jetzt ausgegraut mit erklärendem Tooltip, wenn kein
Songtext-Ziel bekannt ist.
- ⏱️ **Sleep-Timer-Restzeit war faktisch unsichtbar** (nur im Tooltip, den
kaum jemand per Long-Press entdeckt) — steht jetzt auch im Sheet.
- ↕️ **Warteschlange umsortieren war unauffindbar:** kein sichtbares Zeichen,
dass die Liste per Drag reagiert. Jetzt mit Drag-Handle-Symbol wie bei
Spotify/Apple Music.
- 👇 **Vollbild-Player ließ sich nicht wegwischen** — nur über den
Zurück-Pfeil schließbar, obwohl der Mini-Player schon Wischgesten kann.
Jetzt schließt Wischen nach unten den Player, wie bei Apple Music/Spotify.
- 🏷️ Fehlendes `tooltip:` am Schließen-Knopf des Songtext-Sheets ergänzt —
jeder andere Icon-Button der App hat einen.
- 📡 **YouTube-Downloads:** Zeitüberschreitung (Server erreichbar, braucht
nur zu lange) und toter Server meldeten sich bisher identisch — jetzt mit
eigener, ehrlicherer Meldung ("braucht zu lange" statt "nicht
erreichbar").
- 🔄 **Server-Tab blitzte beim Öffnen kurz "nicht verbunden" auf**, obwohl
verbunden — weil `build()` lief, bevor die gespeicherten Zugangsdaten
fertig geladen waren. Jetzt erst ein Ladezustand, dann die echte Antwort.
- 🗂️ **Einstellungen umsortiert:** Favoriten-Sync und Playlisten-Sync
standen unter "Speicher", obwohl sie nichts mit Speicherplatz zu tun
haben — jetzt bei "Musikserver", direkt beim Navidrome-Eintrag. Der
Navidrome-Eintrag selbst sagt jetzt, wofür er da ist ("Eigener
Musik-Server"), statt nur den Software-Namen zu zeigen.
- ✏️ Kommentar in `geteilte_adresse.dart` korrigiert: er behauptete, der
Server entscheide über nicht-YouTube-Adressen — tatsächlich lehnt
`YtDownloadService` sie schon vorher ab. Verhalten bewusst nicht
geändert (dafür gibt es einen eigenen Test), nur die Doku richtiggestellt.
- ⏸️ **Bewusst nicht angefasst:** das separate Server-Favoriten-Herz
(`ServerFavoriteButton`) bleibt wie dokumentiert lokal-only — das ist eine
bestehende, begründete Architektur-Entscheidung (siehe G3 im
UX-Review) und keine Kleinigkeit, die sich nebenbei mitreparieren lässt.
Ebenso zurückgestellt: Live-Mitführen des Fingers beim langsamen Wischen
am Mini-Player, ein Abbrechen-Knopf für laufende YouTube-Downloads, ein
Lauf-Badge auf dem inaktiven Download-Unterreiter und eine Versionsnummer
unter "Über Melo" (bräuchte eine neue Abhängigkeit) — alles eigene
kleine Vorhaben, keine Fünf-Minuten-Fixe.
-**Getestet:** 539 Tests grün (vorher 537, 2 neu für die
Timeout-Unterscheidung beim YouTube-Download), `flutter analyze` ohne
Befund.
### 🧑‍🤝‍🧑 UX-Simulation: Mehrfachauswahl, Baka-Login, Bestätigungen, Suche (2026-08-25)
7 Agenten sind die App wie ein normaler Nutzer durchgegangen (Erststart,