mirror of
https://github.com/yattee/yattee.git
synced 2025-08-09 20:24:06 +00:00
Watch Next menu improvements
This commit is contained in:
@@ -36,7 +36,7 @@ final class PlayerModel: ObservableObject {
|
||||
case .queue:
|
||||
return "Queue"
|
||||
case .shuffle:
|
||||
return "Queue, shuffled"
|
||||
return "Queue - shuffled"
|
||||
case .loopOne:
|
||||
return "Loop one"
|
||||
case .related:
|
||||
|
@@ -42,7 +42,7 @@ final class WatchNextViewModel: ObservableObject {
|
||||
@Published var countdown = 0.0
|
||||
var countdownTimer: Timer?
|
||||
|
||||
private var player = PlayerModel.shared
|
||||
var player = PlayerModel.shared
|
||||
|
||||
var autoplayTimer: Timer?
|
||||
|
||||
@@ -129,7 +129,7 @@ final class WatchNextViewModel: ObservableObject {
|
||||
|
||||
private func open(reason: PresentationReason) {
|
||||
self.reason = reason
|
||||
page = Page.allCases.first { isAvailable($0) } ?? .history
|
||||
setPageAfterOpening()
|
||||
|
||||
guard !isPresenting else { return }
|
||||
withAnimation(Self.animation) {
|
||||
@@ -137,6 +137,19 @@ final class WatchNextViewModel: ObservableObject {
|
||||
}
|
||||
}
|
||||
|
||||
private func setPageAfterOpening() {
|
||||
let firstAvailable = Page.allCases.first { isAvailable($0) } ?? .history
|
||||
|
||||
switch reason {
|
||||
case .finishedWatching:
|
||||
page = player.playbackMode == .related ? .queue : firstAvailable
|
||||
case .closed:
|
||||
page = player.playbackMode == .related ? .queue : firstAvailable
|
||||
default:
|
||||
page = firstAvailable
|
||||
}
|
||||
}
|
||||
|
||||
func close() {
|
||||
let close = {
|
||||
self.player.closeCurrentItem()
|
||||
|
Reference in New Issue
Block a user