Improve queue details loading

This commit is contained in:
Arkadiusz Fal
2022-06-26 13:12:32 +02:00
parent 0f48a14e96
commit fe94d35af0
5 changed files with 17 additions and 12 deletions

View File

@@ -179,10 +179,6 @@ extension PlayerModel {
}
func restoreQueue() {
guard !accounts.current.isNil else {
return
}
var restoredQueue = [PlayerQueueItem?]()
if let lastPlayed = Defaults[.lastPlayed],
@@ -194,12 +190,14 @@ extension PlayerModel {
restoredQueue.append(contentsOf: Defaults[.queue])
queue = restoredQueue.compactMap { $0 }
}
queue.forEach { item in
accounts.api.loadDetails(item) { newItem in
if let index = self.queue.firstIndex(where: { $0.id == item.id }) {
self.queue[index] = newItem
}
func loadQueueVideoDetails(_ item: PlayerQueueItem) {
guard !accounts.current.isNil, !item.hasDetailsLoaded else { return }
accounts.api.loadDetails(item) { newItem in
if let index = self.queue.firstIndex(where: { $0.id == item.id }) {
self.queue[index] = newItem
}
}
}