mirror of
https://github.com/yattee/yattee.git
synced 2026-10-23 13:12:53 +00:00
66ecbb9eb3ac56da2325a5521f1aa5791b2d40d9
The fullscreen toggle used to slide both panels off screen while the video frame grew into the freed space. Panels now stay at their home positions as layers under the video, and the video frame grows over them to hide and shrinks back to reveal. Both panels stay in the hierarchy while covered, so scroll position and loaded content survive toggles; hit testing, accessibility and the dismiss-pan exclusion frames are switched off while covered (PanelResizeGrabber gets a publishesFrame flag for this). Side column gestures (grabber overdrag, trailing edge swipe) drive the video's trailing edge over the static column. The below panel's handle drag keeps sliding the panel off the bottom, with the video growing in lockstep so the edges coincide. The below panel is raised above the video only while expanding over it, and drops back under it after the collapse spring has fully settled. Hiding the status bar in the fullscreen state changed the top safe area and reflowed the whole layout mid-transition. The layout now ignores the top safe area and pads by a fixed status bar height (remembered by StatusBarVisibilityController while the bar is visible); the fullscreen video grows up into that strip as part of the same animation.
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.9%
Ruby
2.7%
C
0.3%
