Improvements & Fixes
- Improved sidebar behavior by disabling auto-collapse for the legacy drawer and modern expanded sidebar (@skoruppa)
- Fixed stream badge state preservation when resuming the Stream screen and improved badge matching with deferred, incremental chunked processing and reserved UI space (@skoruppa, @tapframe)
- Improved Continue Watching behavior and localization, including translated next episode labels and better next-up seeding when an episode is over 90% completed (@skoruppa)
- Fixed race conditions and added a simple fade-in for smoother UI transitions (@skoruppa)
- Improved player reliability by resetting parser state on unknown EMBL elements and preventing autoplay from skipping post-credit scenes (@iMakeSoftware, @siriusvoid)
- Improved adaptive playback by selecting the highest available resolution, dynamically updating resolution on size changes, supporting unknown HLS resolutions, and migrating HLS resolution overrides to
DefaultTrackSelector(@halibiram) - Fixed HLS detection and codec handling, including dynamic HLS detection and bypassing strict codec level checks for standard resolutions up to 1080p (@halibiram)
- Fixed Search and Discover detail navigation by passing hero backdrop URLs correctly to the Detail screen (@halibiram)
- Fixed plugin scraper failures on consecutive searches, removed JNI blocking paths, and improved parallel scraper performance with a larger Jsoup document cache (@halibiram)
- Improved QuickJS plugin runtime performance with eager background pre-compilation and staggered delays to reduce thread contention and GC overhead (@halibiram)
- Added Android profiling support through the profileable manifest tag (@halibiram)
- Improved Trakt compatibility by falling back to video ID when the original content ID is not compatible (@skoruppa)
- Added design token refactoring for cleaner and more consistent UI styling (@tapframe)
Localization
- Added Ukrainian locale support and translations (@vb13x)
- Updated Latin American Spanish translations and fixed related translation issues (@omavel, @skoruppa)
- Added missing Polish translations (@skoruppa)
- Added French translations for badge position, Dolby Vision strip mode, and license attributions (@foXaCe)
- Updated Simplified and Traditional Chinese translations (@muichunlim)