feat(android): NowPlaying dominant-color gradient backdrop (audit v2 #17, slice 1)
Adds androidx.palette dependency and a rememberDominantColor() helper that pulls the cover bitmap via Coil's singleton loader (shares the cache with the on-screen AsyncImage), runs Palette extraction on Dispatchers.Default, and animates the resulting color with animateColorAsState so track changes tween smoothly. NowPlayingScreen wraps the body in a Box with a vertical gradient (0% dominant @ 55%α → 45% dominant @ 18%α → 100% scheme.background) and lets the Scaffold's containerColor go transparent so the gradient shows through. Falls back to a near-transparent gradient on bitmap-load failure so the screen never sits on flat black. Hero transition (MiniPlayer → NowPlaying cover) and cover preload still pending — those land in a follow-up commit. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -165,6 +165,7 @@ dependencies {
|
||||
|
||||
implementation(libs.coil.compose)
|
||||
implementation(libs.coil.network.okhttp)
|
||||
implementation(libs.androidx.palette)
|
||||
implementation(libs.icons.lucide)
|
||||
|
||||
implementation(libs.timber)
|
||||
|
||||
Reference in New Issue
Block a user