mirror of
https://github.com/yattee/yattee.git
synced 2026-08-06 07:11:28 +00:00
d17423fa5bdadc11b4955717d9c7f788fb79d231
When queue mode was set to repeat one, the "Playing in N seconds" countdown still appeared after a video ended, showing the next queued video - then restarting the current one anyway. The video-end path never consulted the queue mode; only playNext() did, after the countdown had already run. - PlayerService.backendDidFinishPlaying: restart immediately in repeat one mode, regardless of queue contents, player visibility, background, or PiP. This also fixes repeat one never looping with an empty queue. - ExpandedPlayerSheet.isAutoPlayEnabled: false in repeat one mode, which gates all countdown triggers (start on ended, overlay render, re-arm on appear) on iOS/macOS. - TVPlayerView.handleVideoEnded: early-return in repeat one mode so tvOS shows neither the countdown nor the replay controls.
Yattee 2 is in the works! A new version of the app is being built with a refreshed experience. It pairs with the new Yattee Server — a self-hosted backend powered by yt-dlp that supports 1000+ sites. Join the TestFlight beta to try early builds, and check the new documentation site at docs.yattee.stream for guides, roadmap and changelog.
Features
- Native user interface built with SwiftUI with customization settings
- Player queue and history
- Player component with custom controls, gestures and support for 4K playback
- Fullscreen, Picture in Picture and background audio playback
- SponsorBlock, configurable categories to skip
License
Yattee and its components is shared on AGPL v3 license.
Languages
Swift
96.1%
Ruby
3.4%
C
0.4%
Shell
0.1%
