Merge branch 'main' into chore-linter-warnings

This commit is contained in:
Arkadiusz Fal
2024-08-24 12:12:12 +02:00
committed by GitHub
29 changed files with 1143 additions and 410 deletions

View File

@@ -47,7 +47,7 @@ extension PlayerModel {
}
func updateWatch(finished: Bool = false, time: CMTime? = nil) {
guard let currentVideo, saveHistory else { return }
guard let currentVideo, saveHistory, isPlaying else { return }
let id = currentVideo.videoID
let time = time ?? backend.currentTime

View File

@@ -464,8 +464,6 @@ final class MPVBackend: PlayerBackend {
timeObserverThrottle.execute {
self.model.updateWatch(time: self.currentTime)
}
self.model.updateTime(self.currentTime!)
}
private func stopClientUpdates() {

View File

@@ -20,21 +20,23 @@ final class ThumbnailsModel: ObservableObject {
return unloadable.contains(url)
}
func best(_ video: Video) -> URL? {
func best(_ video: Video) -> (url: URL?, quality: Thumbnail.Quality?) {
for quality in availableQualitites {
let url = video.thumbnailURL(quality: quality)
if !isUnloadable(url) {
return url
return (url, quality)
}
}
return nil
return (nil, nil)
}
private var availableQualitites: [Thumbnail.Quality] {
switch Defaults[.thumbnailsQuality] {
case .highest:
return [.maxresdefault, .medium, .default]
return [.maxres, .high, .medium, .default]
case .high:
return [.high, .medium, .default]
case .medium:
return [.medium, .default]
case .low: