mirror of
https://github.com/danbee/persephone
synced 2025-03-04 08:39:11 +00:00
Finish AlbumArtService refactor
This commit is contained in:
parent
27c0e32e48
commit
2fb0ceeaee
@ -23,7 +23,7 @@ class AlbumDataSource: NSObject, NSCollectionViewDataSource {
|
|||||||
albumViewItem.setAlbum(albums[indexPath.item])
|
albumViewItem.setAlbum(albums[indexPath.item])
|
||||||
|
|
||||||
if albums[indexPath.item].coverArt == nil {
|
if albums[indexPath.item].coverArt == nil {
|
||||||
AppDelegate.mpdClient.albumFirstSong(for: albums[indexPath.item].mpdAlbum) {
|
AppDelegate.mpdClient.getAlbumFirstSong(for: albums[indexPath.item].mpdAlbum) {
|
||||||
guard let song = $0 else { return }
|
guard let song = $0 else { return }
|
||||||
|
|
||||||
AlbumArtService(song: Song(mpdSong: song)).fetchAlbumArt { image in
|
AlbumArtService(song: Song(mpdSong: song)).fetchAlbumArt { image in
|
||||||
|
|||||||
@ -18,7 +18,7 @@ extension MPDClient {
|
|||||||
enqueueCommand(command: .playAlbum, userData: ["album": album])
|
enqueueCommand(command: .playAlbum, userData: ["album": album])
|
||||||
}
|
}
|
||||||
|
|
||||||
func getAlbumFirstSong(for album: MPDAlbum, callback: @escaping (String?) -> Void) {
|
func getAlbumFirstSong(for album: MPDAlbum, callback: @escaping (MPDSong?) -> Void) {
|
||||||
enqueueCommand(
|
enqueueCommand(
|
||||||
command: .getAlbumFirstSong,
|
command: .getAlbumFirstSong,
|
||||||
priority: .low,
|
priority: .low,
|
||||||
@ -69,7 +69,7 @@ extension MPDClient {
|
|||||||
self.delegate?.didLoadAlbums(mpdClient: self, albums: albums)
|
self.delegate?.didLoadAlbums(mpdClient: self, albums: albums)
|
||||||
}
|
}
|
||||||
|
|
||||||
func albumFirstSong(for album: MPDAlbum, callback: @escaping (MPDSong?) -> Void) {
|
func albumFirstSong(for album: MPDAlbum, callback: (MPDSong?) -> Void) {
|
||||||
guard isConnected else { return }
|
guard isConnected else { return }
|
||||||
|
|
||||||
var firstSong: MPDSong?
|
var firstSong: MPDSong?
|
||||||
|
|||||||
@ -55,6 +55,7 @@ extension MPDClient {
|
|||||||
guard let album = userData["album"] as? MPDAlbum,
|
guard let album = userData["album"] as? MPDAlbum,
|
||||||
let callback = userData["callback"] as? (MPDSong?) -> Void
|
let callback = userData["callback"] as? (MPDSong?) -> Void
|
||||||
else { return }
|
else { return }
|
||||||
|
|
||||||
albumFirstSong(for: album, callback: callback)
|
albumFirstSong(for: album, callback: callback)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user