Player controls UI changes

WIP on controls

Chapters

working

Add previews variable

Add lists ids

WIP
This commit is contained in:
Arkadiusz Fal
2022-06-18 14:39:49 +02:00
parent 9c98cf9558
commit 321c265a11
60 changed files with 2524 additions and 1320 deletions

View File

@@ -1,3 +1,4 @@
import Defaults
import Foundation
import Siesta
import SwiftUI
@@ -16,6 +17,10 @@ final class PlaylistsModel: ObservableObject {
playlists.sorted { $0.title.lowercased() < $1.title.lowercased() }
}
var lastUsed: Playlist? {
find(id: Defaults[.lastUsedPlaylistID])
}
func find(id: Playlist.ID?) -> Playlist? {
if id.isNil {
return nil
@@ -57,9 +62,19 @@ final class PlaylistsModel: ObservableObject {
playlistID: Playlist.ID,
videoID: Video.ID,
onSuccess: @escaping () -> Void = {},
onFailure: @escaping (RequestError) -> Void = { _ in }
navigation: NavigationModel?,
onFailure: ((RequestError) -> Void)? = nil
) {
accounts.api.addVideoToPlaylist(videoID, playlistID, onFailure: onFailure) {
accounts.api.addVideoToPlaylist(
videoID,
playlistID,
onFailure: onFailure ?? { requestError in
navigation?.presentAlert(
title: "Error when adding to playlist",
message: "(\(requestError.httpStatusCode ?? -1)) \(requestError.userMessage)"
)
}
) {
self.load(force: true) {
self.reloadPlaylists.toggle()
onSuccess()