Files
rl-mobile/patches/lyrics-rl-api.patch
T

67 lines
2.3 KiB
Diff

--- a/com/tidal/android/feature/playerscreen/ui/PlayerViewModel.smali
+++ b/com/tidal/android/feature/playerscreen/ui/PlayerViewModel.smali
@@ -1291,6 +1291,8 @@
.line 105
check-cast v1, Lcom/aspiro/wamp/model/Track;
+ invoke-static {v0, v1}, Lradiant/RLAPILyricsHook;->onWampTrack(Lcom/tidal/android/feature/playerscreen/ui/PlayerViewModel;Lcom/aspiro/wamp/model/Track;)V # RL API lyrics hook
+
.line 106
.line 107
invoke-virtual {v1}, Lcom/aspiro/wamp/model/MediaItem;->getId()I
@@ -1564,7 +1566,7 @@
.line 235
.line 236
.line 237
- if-nez v9, :cond_a
+ goto :cond_a # RL: skip TIDAL O=false in the has-lyrics path
.line 238
.line 239
@@ -2256,7 +2258,10 @@
.line 568
:goto_c
+ sget-boolean v5, Lradiant/RLAPILyricsHook;->isRlState:Z
+ if-nez v5, :rl_keep_n2 # RL active -> keep worker content
invoke-interface {v9, v1}, Lkotlinx/coroutines/flow/MutableStateFlow;->setValue(Ljava/lang/Object;)V
+ :rl_keep_n2
.line 569
.line 570
@@ -2305,7 +2310,10 @@
.line 591
.line 592
+ sget-boolean v7, Lradiant/RLAPILyricsHook;->isRlState:Z
+ if-nez v7, :rl_keep_o # RL active -> keep view-open flag
invoke-interface {v1, v5}, Lkotlinx/coroutines/flow/MutableStateFlow;->setValue(Ljava/lang/Object;)V
+ :rl_keep_o
.line 593
.line 594
@@ -2334,7 +2342,10 @@
.line 606
.line 607
+ sget-boolean v7, Lradiant/RLAPILyricsHook;->isRlState:Z
+ if-nez v7, :rl_keep_n # RL active -> keep worker content
invoke-interface {v1, v6}, Lkotlinx/coroutines/flow/MutableStateFlow;->setValue(Ljava/lang/Object;)V
+ :rl_keep_n
.line 608
.line 609
--- a/com/tidal/android/feature/playerscreen/ui/PlayerViewModel$special$$inlined$mapNotNull$1$2.smali
+++ b/com/tidal/android/feature/playerscreen/ui/PlayerViewModel$special$$inlined$mapNotNull$1$2.smali
@@ -2202,6 +2202,10 @@
.line 1011
.line 1012
move-result v31
+ sget-boolean v5, Lradiant/RLAPILyricsHook;->isRlState:Z
+ if-eqz v5, :rl_hl_done # not RL -> use TIDAL's hasLyrics
+ const/16 v31, 0x1 # RL lyrics active -> force hasLyrics so the sparkle stays
+ :rl_hl_done
.line 1013
iget-object v5, v1, Lcom/tidal/android/feature/playerscreen/ui/PlayerViewModel;->O:Lkotlinx/coroutines/flow/MutableStateFlow;