pass playlist and action id to the hook

This commit is contained in:
aliveoutside
2022-09-10 16:46:05 +03:00
parent 5c1b39c79f
commit b88ecd97fc
2 changed files with 29 additions and 5 deletions
@@ -1,12 +1,14 @@
package ru.vtosters.lite.hooks.ui;
import android.util.Log;
import com.vk.dto.music.MusicTrack;
import com.vk.dto.music.Playlist;
import com.vk.music.bottomsheets.a.MusicAction;
import com.vk.music.common.MusicPlaybackLaunchContext;
import com.vtosters.lite.R;
import java.util.ArrayList;
import java.util.List;
import bruhcollective.itaysonlab.libvkx.client.LibVKXClient;
import bruhcollective.itaysonlab.libvkx.client.LibVKXClientImpl;
@@ -20,8 +22,23 @@ public class MusicBottomSheetHook {
return actions;
}
public static boolean tryPlayInVKX(MusicTrack track, MusicPlaybackLaunchContext context) {
LibVKXClientImpl.LibVKXAction action = iLibVkxService -> LibVKXClient.lambdaplay(List.of(track), track, iLibVkxService, context);
public static boolean tryPlayInVKX(int actionId, MusicTrack track, MusicPlaybackLaunchContext context, Playlist playlist) {
if (actionId != AndroidUtils.getIdentifier("play_in_vkx", "id")) {
return false;
}
var trackList = new ArrayList<MusicTrack>();
if (playlist != null) {
Log.d("VKX", "Playlist is not null");
Log.d("VKX", "Playlist size: " + playlist.R.size());
trackList.addAll(playlist.R);
} else {
Log.d("VKX", "Playlist is null");
trackList.add(track);
}
LibVKXClientImpl.LibVKXAction action = iLibVkxService -> LibVKXClient.lambdaplay(trackList, track, iLibVkxService, context);
return LibVKXClient.getInstance().runOnService(action);
}
@@ -704,12 +704,19 @@
move-result-object v2
.line 7
invoke-virtual {p1}, Lcom/vk/music/bottomsheets/a/MusicAction;->a()I
move-result p1
invoke-static {v0, v2}, Lru/vtosters/lite/hooks/ui/MusicBottomSheetHook;->tryPlayInVKX(Lcom/vk/dto/music/MusicTrack;Lcom/vk/music/common/MusicPlaybackLaunchContext;)Z
.line 7
iget-object v3, p0, Lcom/vk/music/bottomsheets/track/MusicTrackBottomSheetClickListener;->f:Lcom/vk/music/bottomsheets/track/MusicTrackBottomSheetModel1;
invoke-interface {v3}, Lcom/vk/music/bottomsheets/track/MusicTrackBottomSheetModel1;->i()Lcom/vk/dto/music/Playlist;
move-result-object v3
invoke-static {p1, v0, v2, v3}, Lru/vtosters/lite/hooks/ui/MusicBottomSheetHook;->tryPlayInVKX(ILcom/vk/dto/music/MusicTrack;Lcom/vk/music/common/MusicPlaybackLaunchContext;Lcom/vk/dto/music/Playlist;)Z
move-result v3