From 6a7d5fe90f3b34d71c33b553d797459a5b9b63da Mon Sep 17 00:00:00 2001 From: meowarex Date: Sun, 21 Jun 2026 17:21:07 +1000 Subject: [PATCH] Support for Animated Covers <3 --- patches/player-backdrop.patch | 21 ++++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/patches/player-backdrop.patch b/patches/player-backdrop.patch index 77067f1..b04ad0c 100644 --- a/patches/player-backdrop.patch +++ b/patches/player-backdrop.patch @@ -1,7 +1,7 @@ # rl-locals: com/tidal/android/feature/playerscreen/ui/PlayerScreenKt.smali e( 71 --- a/com/tidal/android/feature/playerscreen/ui/PlayerScreenKt.smali +++ b/com/tidal/android/feature/playerscreen/ui/PlayerScreenKt.smali -@@ -4172,6 +4172,133 @@ +@@ -4172,6 +4172,148 @@ invoke-static {v5, v3, v4}, Landroidx/compose/runtime/Updater;->set-impl(Landroidx/compose/runtime/Composer;Ljava/lang/Object;Lyl0/p;)V @@ -29,9 +29,9 @@ + + move-result-object v4 # current item + -+ instance-of v6, v4, Lcom/tidal/android/feature/playerscreen/ui/c$a; # only album covers ++ instance-of v6, v4, Lcom/tidal/android/feature/playerscreen/ui/c$a; # still album cover? + -+ if-eqz v6, :radiant_skip # skip non-albums ++ if-eqz v6, :radiant_try_animated # if not, try animated album cover + + check-cast v4, Lcom/tidal/android/feature/playerscreen/ui/c$a; # narrow type + @@ -39,6 +39,21 @@ + + iget-object v4, v4, Lcom/tidal/android/feature/playerscreen/ui/c$a;->c:Ljava/lang/String; # cover uuid + ++ goto :radiant_have_cover # cover resolved ++ ++ :radiant_try_animated # animated album cover (c$b) shares albumId/cover layout ++ instance-of v6, v4, Lcom/tidal/android/feature/playerscreen/ui/c$b; # animated album cover? ++ ++ if-eqz v6, :radiant_skip # neither -> skip (music video / unknown) ++ ++ check-cast v4, Lcom/tidal/android/feature/playerscreen/ui/c$b; # narrow type ++ ++ iget v5, v4, Lcom/tidal/android/feature/playerscreen/ui/c$b;->b:I # album id ++ ++ iget-object v4, v4, Lcom/tidal/android/feature/playerscreen/ui/c$b;->c:Ljava/lang/String; # still cover uuid (blur this) ++ ++ :radiant_have_cover # v5 = album id, v4 = cover uuid ++ + new-instance v6, Lcom/tidal/android/feature/playerscreen/ui/composables/n0; # cover request lambda + + invoke-direct {v6, v5, v4}, Lcom/tidal/android/feature/playerscreen/ui/composables/n0;->(ILjava/lang/String;)V # build request