UI: Alben sind Kategorien — Reiter Lieder/Kategorie/Kuenstler
Auf Wunsch von Dustin: seine beste Freundin sortiert ihre Sammlung ueber das Album-Feld. In Melo ist der Album-Titel deshalb ab jetzt die Kategorie — sie muss nichts neu machen. 1) Album = Kategorie - kategorienAusTags(): Album-Titel steht VORN in der Kategorienliste (die erste Kategorie bestimmt das Coverbild), Genres dahinter. - Beide Scans (android_scan + scan_service) tragen ihn ein; von Hand gepflegte Kategorien (categoriesEdited) bleiben unberuehrt. - DB-Schema 9: einmalige Nachruestung bestehender Bibliotheken, damit das nicht erst beim naechsten vollstaendigen Scan sichtbar wird (der auf Android nur laeuft, wenn sich die Dateianzahl aendert). 2) Reiter: 'Songs/Kuenstler/Alben' -> 'Lieder/Kategorie/Kuenstler' - Neu: library/category_list.dart mit groupByCategory(); Lieder ohne Kategorie sammeln sich am Ende unter "Ohne Kategorie". - Entfernt: library/album_list.dart, groupByAlbum(), albumArtistLabel() — mit dem Alben-Reiter tot geworden. Das Album-FELD bleibt erhalten. 3) YouTube-Downloads ohne Original-Album - Feld "Kategorie (optional)" im YouTube-Bereich, mit Vorschlaegen aus der Bibliothek und freier Eingabe. - ordneDownloadEin() verwirft nach dem Scan das Album-Tag (yt-dlp leitet es aus Kanal/Playlist ab — als Kategorie waere das Unsinn) und setzt stattdessen die gewaehlte Kategorie. Beides als "von Hand gesetzt" markiert, damit der naechste Scan es nicht zurueckholt. - MeloDb.songByPath() und MeloDb.verwirfAlbum() neu. - CategoryService.alleNamen: Kategorienamen ohne zusaetzliche Abfrage — ohne das flackerte die Vorschlagsliste und im Widget-Test blieb ein Aufraeum-Timer von drift haengen. 295 Tests gruen (19 neue, 1 uebersprungen), flutter analyze ohne Befund. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01FpPu4nuKjKKeX1RpdDeX81
This commit is contained in:
co-authored by
Claude Opus 5
parent
cd79213bb3
commit
c7a7a7c458
@@ -5,6 +5,50 @@ Format angelehnt an [Keep a Changelog](https://keepachangelog.com/de/1.0.0/).
|
||||
|
||||
## [Unreleased]
|
||||
|
||||
### 🗂️ Alben sind jetzt Kategorien — neue Bibliotheks-Reiter (2026-08-21)
|
||||
|
||||
- 🏷️ **Album = Kategorie.** Wer seine Sammlung über das **Album-Feld**
|
||||
sortiert hat, findet sie ab sofort genau so unter *Kategorie* wieder — der
|
||||
Album-Titel eines Liedes **ist** in Melo seine Kategorie. Nichts muss neu
|
||||
gemacht werden.
|
||||
🔧 Der Album-Titel steht dabei **vorn** in der Kategorienliste, weil die
|
||||
erste Kategorie das Coverbild bestimmt (Einstellung „Gleiche Kategorie =
|
||||
gleiches Coverbild"). Genres aus den Datei-Tags kommen weiterhin dazu,
|
||||
aber dahinter.
|
||||
🔁 **Bestehende Bibliotheken werden beim ersten Start automatisch
|
||||
nachgerüstet** — du musst nicht erst neu scannen. Von Hand gepflegte
|
||||
Kategorien bleiben dabei unangetastet.
|
||||
- 📑 **Neue Reiter in „Meine Musik": Lieder · Kategorie · Künstler.** Der
|
||||
Alben-Reiter ist verschwunden — er ist im Kategorie-Reiter aufgegangen.
|
||||
„Songs" heißt jetzt „Lieder". Der Kategorie-Reiter zeigt jede Kategorie mit
|
||||
Coverbild und Anzahl; Lieder ganz ohne Kategorie sammeln sich am Ende unter
|
||||
*Ohne Kategorie*.
|
||||
- ⬇️ **YouTube-Downloads: Kategorie beim Herunterladen wählen.** Im
|
||||
YouTube-Bereich gibt es ein Feld **Kategorie (optional)** — es schlägt die
|
||||
Kategorien deiner Bibliothek vor, nimmt aber auch eine neue entgegen. Leer
|
||||
lassen = der Titel kommt ohne Kategorie in die Bibliothek.
|
||||
🐛 **Warum das nötig ist:** YouTube-Dateien bringen ein Album-Tag mit, das
|
||||
yt-dlp aus Kanal, Playlist oder Videotitel ableitet — Dinge wie
|
||||
„Topic - Various Artists". Da das Album jetzt die Kategorie ist, hätte
|
||||
**jeder Download eine neue Unsinns-Kategorie** erzeugt. Melo **verwirft**
|
||||
dieses Album-Tag deshalb bewusst und nimmt stattdessen deine Angabe.
|
||||
Beides wird als „von Hand gesetzt" markiert, damit der nächste Scan es
|
||||
nicht wieder hereinholt.
|
||||
- 🔧 **Details für Technikinteressierte:**
|
||||
- Neu: `kategorienAusTags()` und `groupByCategory()` in
|
||||
`library/categories.dart`, `library/category_list.dart`,
|
||||
`downloads/download_einordnung.dart` (`ordneDownloadEin`,
|
||||
`kategorieVorschlaege`).
|
||||
- Beide Scans (Gerät + Ordner) tragen den Album-Titel als erste Kategorie
|
||||
ein; `MeloDb.songByPath()` und `MeloDb.verwirfAlbum()` neu.
|
||||
- Datenbank auf Version 9: einmalige Nachrüstung der Album-Kategorien.
|
||||
- `CategoryService.alleNamen` liefert die Kategorienamen jetzt ohne
|
||||
zusätzliche Abfrage — die Vorschlagsliste flackert dadurch nicht.
|
||||
- Entfernt: `library/album_list.dart` sowie `groupByAlbum()` /
|
||||
`albumArtistLabel()` — mit dem Alben-Reiter tot geworden. Das
|
||||
**Album-Feld selbst bleibt** in den Metadaten erhalten.
|
||||
- ✅ **Getestet:** 295 Tests grün (19 neue), `flutter analyze` ohne Befund.
|
||||
|
||||
### 📚 Hochgeladene Titel landen jetzt auch in Navidrome (2026-08-21)
|
||||
|
||||
- 🎵 **Was sich ändert:** Was du vom Handy hochlädst, taucht ab sofort **auch
|
||||
|
||||
Reference in New Issue
Block a user