No description
Find a file
TySmi 8dcd6f2ebf Library upgrade: Playlists, Artists, Albums, Songs and Genres
- Library tab opens on a list of categories, each opening its own view.
- Artists: A–Z under the server's letter headings, with artist photos
  (initial on a purple circle as fallback). Artist page: photo, Play all,
  albums in a horizontal row (covers fly to the album page), and every song
  on their albums.
- Albums: the grid, now with a Sort menu (Title, Artist, Year newest
  first, Recently added). Also reused for a genre's albums.
- Songs: every song A–Z, fetched 100 at a time wherever you scroll, with
  same-size placeholders and an A–Z fast-scroll bar (letter bubble,
  haptic ticks). Letter jumps binary-search single positions instead of
  downloading the whole list, remembering what they've seen. Tapping a
  song queues it plus the next 99.
- Playlists: Navidrome playlists, each with cover, length, Play and its
  songs in playlist order. Genres: genres with album/song counts, each
  opening its album grid.
- Data: new OpenSubsonic calls (getArtists, getArtist, getPlaylists,
  getPlaylist, getGenres, more getAlbumList2 options). The title-sorted song
  list uses Navidrome's own REST API (OpenSubsonic can't sort songs), kept
  in its own client with JWT login and automatic re-login.
- Shared UI pieces: large title with back button, song rows, album cards,
  load/retry handling, cover-URL and playback hooks for screens.
- Tests for the letter index, new API parsing and the Navidrome login flow.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-11 20:39:38 -04:00
.idea Add album page, Media3 playback and mini player 2026-10-11 19:08:03 -04:00
app Library upgrade: Playlists, Artists, Albums, Songs and Genres 2026-10-11 20:39:38 -04:00
gradle Make purple the brand color; color album pages and Now Playing from cover art 2026-10-11 19:41:25 -04:00
.gitattributes Add Navidrome login and album grid 2026-10-11 18:50:38 -04:00
.gitignore Add Navidrome login and album grid 2026-10-11 18:50:38 -04:00
build.gradle.kts Add Navidrome login and album grid 2026-10-11 18:50:38 -04:00
gradle.properties Add Navidrome login and album grid 2026-10-11 18:50:38 -04:00
gradlew Add Navidrome login and album grid 2026-10-11 18:50:38 -04:00
gradlew.bat Add Navidrome login and album grid 2026-10-11 18:50:38 -04:00
settings.gradle.kts Add Navidrome login and album grid 2026-10-11 18:50:38 -04:00