Repository navigation
Enhanced Full-Screen Track Artwork & Transition Fixes - #284
Merged
Merged
Conversation
… tracks - Add StaticArtworkHero with top-aligned crop and hardware-accelerated bottom alpha gradient fade - Update PlayerHost to display full-bleed cover art for static tracks with smooth sleeve card crossfade - Support lyrics blur and preserve all player gestures and contrast scrims - Keep Full Screen Artwork setting toggleable in SettingsScreen independent of motion canvas - Create builds directory with build output and artifact documentation
…yrics transition - Prevent tearing down FluidArtworkBackground on lyrics navigation; pause animation loop on extraBlur instead of discarding composable subtree - Make FluidArtworkBackground seed deterministic per track (videoId + title) to prevent random angle and hue shifts on return - Transition StaticArtworkHero and CanvasArtworkPlayer via hardware-accelerated alpha instead of dynamic blur passes - Eliminate color clashing, seam lines, and RenderEffect churn across lyrics and player tabs
Member
|
@Arunkumar-Anbazhagan GOAT. |
Contributor
Author
|
Thanks bro |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
📝 Overview
This PR implements full-screen cover art support for both static and animated tracks while maintaining a seamless user experience across the player and lyrics tabs. It introduces smooth crossfades, fixes background flashing, optimizes hardware performance, and ensures all core player interactions remain intact.
🚀 Key Changes
✨ Features & Improvements
• Full-Screen Artwork Support: Added StaticArtworkHero to display full-bleed cover art for static tracks. Features a top-aligned crop and a hardware-accelerated bottom alpha gradient fade.
• Seamless Crossfading: Updated PlayerHost to smoothly crossfade between static full-screen art and the traditional sleeve card view.
• Settings Control: Added a new Full Screen Artwork toggle in SettingsScreen that operates independently of the motion canvas.
• Component Preservation: Integrated full-screen art with existing player gestures, lyrics blur, and contrast scrims.
🐛 Bug Fixes & Performance Optimizations
• Eliminated Visual Flashing: Stopped the tearing down of FluidArtworkBackground during lyrics navigation. The animation loop now pauses on extraBlur instead of discarding the composable subtree, eliminating color clashing and seam lines.
• Deterministic Visuals: Made the FluidArtworkBackground seed deterministic per track (using videoId + title) to prevent random angle and hue shifts when returning to the player.
• Hardware Acceleration: Replaced heavy dynamic blur passes with hardware-accelerated alpha transitions for StaticArtworkHero and CanvasArtworkPlayer, significantly reducing RenderEffect churn.
🛠️ Technical Implementation Details
• State Management: Preserved the rendering pipeline when switching to the lyrics tab to prevent layout destruction and recreation.
• Performance: Offloaded blur transitions to hardware-accelerated alpha channels to improve frame rates and reduce GPU overhead.