mirror of
https://github.com/FBukovina/Atoll.git
synced 2026-10-27 15:14:33 +00:00
new version
This commit is contained in:
parent
cc09f17074
commit
c8a6c2b1fa
10 changed files with 1531 additions and 187 deletions
|
|
@ -166,9 +166,12 @@ class SpotifyController: MediaControllerProtocol {
|
|||
state.artwork = existingArtwork
|
||||
}
|
||||
|
||||
if trackURI == currentCanvasTrackURI {
|
||||
let isSameCanvasTrack = trackURI == currentCanvasTrackURI
|
||||
|
||||
if isSameCanvasTrack {
|
||||
state.liveArtworkURL = playbackState.liveArtworkURL
|
||||
} else {
|
||||
state.liveArtworkURL = nil
|
||||
currentCanvasTrackURI = trackURI.isEmpty ? nil : trackURI
|
||||
canvasFetchTask?.cancel()
|
||||
canvasFetchTask = nil
|
||||
|
|
@ -185,6 +188,7 @@ class SpotifyController: MediaControllerProtocol {
|
|||
artworkFetchTask?.cancel()
|
||||
|
||||
let currentState = state
|
||||
let expectedTrackURI = trackURI
|
||||
|
||||
artworkFetchTask = Task {
|
||||
do {
|
||||
|
|
@ -192,6 +196,10 @@ class SpotifyController: MediaControllerProtocol {
|
|||
|
||||
await MainActor.run { [weak self] in
|
||||
guard let self = self else { return }
|
||||
guard expectedTrackURI.isEmpty || self.currentCanvasTrackURI == expectedTrackURI else {
|
||||
self.artworkFetchTask = nil
|
||||
return
|
||||
}
|
||||
var updatedState = currentState
|
||||
updatedState.artwork = data
|
||||
updatedState.liveArtworkURL = self.playbackState.liveArtworkURL
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue