Managing Favorites sections

This commit is contained in:
Arkadiusz Fal
2021-11-01 22:56:18 +01:00
parent f11125a399
commit 8df452752a
35 changed files with 665 additions and 203 deletions

View File

@@ -168,8 +168,10 @@ final class PlayerModel: ObservableObject {
try? AVAudioSession.sharedInstance().setActive(true)
#endif
DispatchQueue.main.asyncAfter(deadline: .now() + 0.3) { [weak self] in
self?.play()
if self.isAutoplaying(playerItem!) {
DispatchQueue.main.asyncAfter(deadline: .now() + 0.3) { [weak self] in
self?.play()
}
}
}
@@ -440,7 +442,8 @@ final class PlayerModel: ObservableObject {
MPMediaItemPropertyTitle: currentItem.video.title as AnyObject,
MPMediaItemPropertyArtist: currentItem.video.author as AnyObject,
MPMediaItemPropertyArtwork: currentArtwork as AnyObject,
MPMediaItemPropertyPlaybackDuration: Int(currentItem.videoDuration ?? 0) as AnyObject,
MPMediaItemPropertyPlaybackDuration: (currentItem.video.live ? nil : Int(currentItem.videoDuration ?? 0)) as AnyObject,
MPNowPlayingInfoPropertyIsLiveStream: currentItem.video.live as AnyObject,
MPNowPlayingInfoPropertyElapsedPlaybackTime: player.currentTime().seconds as AnyObject,
MPNowPlayingInfoPropertyPlaybackQueueCount: queue.count as AnyObject,
MPMediaItemPropertyMediaType: MPMediaType.anyVideo.rawValue as AnyObject

View File

@@ -106,7 +106,7 @@ extension PlayerModel {
}
func isAutoplaying(_ item: AVPlayerItem) -> Bool {
player.currentItem == item
player.currentItem == item && presentingPlayer
}
@discardableResult func enqueueVideo(

View File

@@ -11,8 +11,6 @@ struct PlayerQueueItemBridge: Defaults.Bridge {
return nil
}
let videoID = value.videoID.isEmpty ? value.video!.videoID : value.videoID
var playbackTime = ""
if let time = value.playbackTime {
if time.seconds.isFinite {
@@ -28,7 +26,7 @@ struct PlayerQueueItemBridge: Defaults.Bridge {
}
return [
"videoID": videoID,
"videoID": value.videoID,
"playbackTime": playbackTime,
"videoDuration": videoDuration
]