Pull to reload, Umplatzierung Search-Button, Album-Artist

This commit is contained in:
2026-04-06 14:59:32 +02:00
parent 56199db301
commit 040917479e
9 changed files with 247 additions and 187 deletions
@@ -11,6 +11,7 @@ struct AlbumsView: View {
@Environment(MAService.self) private var service
@State private var errorMessage: String?
@State private var showError = false
@State private var scrollPosition: String?
private var albums: [MAAlbum] {
service.libraryManager.albums
@@ -34,6 +35,7 @@ struct AlbumsView: View {
AlbumGridItem(album: album)
}
.buttonStyle(.plain)
.id(album.uri)
.task {
await loadMoreIfNeeded(currentItem: album)
}
@@ -43,16 +45,19 @@ struct AlbumsView: View {
ProgressView()
.gridCellColumns(columns.count)
.padding(.horizontal, 12)
.padding(.vertical, 8)
.padding(.vertical, 8)
}
}
.padding()
}
.scrollPosition(id: $scrollPosition)
.refreshable {
await loadAlbums(refresh: true)
}
.task {
await loadAlbums(refresh: !albums.isEmpty)
if albums.isEmpty {
await loadAlbums(refresh: true)
}
}
.alert("Error", isPresented: $showError) {
Button("OK", role: .cancel) { }