From 5c1b39c79fbe93fffcca05f15cad441e347f38c4 Mon Sep 17 00:00:00 2001 From: aliveoutside <53598473+aliveoutside@users.noreply.github.com> Date: Sat, 10 Sep 2022 16:33:34 +0300 Subject: [PATCH] pass playback context to vk x --- .../itaysonlab/libvkx/client/LibVKXClient.java | 14 ++++++++++++-- .../lite/hooks/ui/MusicBottomSheetHook.java | 5 +++-- .../track/MusicTrackBottomSheetClickListener.smali | 2 +- 3 files changed, 16 insertions(+), 5 deletions(-) diff --git a/app/src/main/java/bruhcollective/itaysonlab/libvkx/client/LibVKXClient.java b/app/src/main/java/bruhcollective/itaysonlab/libvkx/client/LibVKXClient.java index b8cd8e62d..75cead999 100644 --- a/app/src/main/java/bruhcollective/itaysonlab/libvkx/client/LibVKXClient.java +++ b/app/src/main/java/bruhcollective/itaysonlab/libvkx/client/LibVKXClient.java @@ -54,7 +54,13 @@ public class LibVKXClient { return getInstance().runOnService(action); } - public static void lambdaplay(List list, MusicTrack musicTrack, ILibVkxService iLibVkxService) { + public static void lambdaplay(List list, MusicTrack musicTrack, ILibVkxService iLibVkxService, MusicPlaybackLaunchContext playerRefer) { + var playbackContext = ""; + + if (playerRefer != null) { + playbackContext = playerRefer.v0(); + } + int indexOf = list.indexOf(musicTrack); var ids = new ArrayList(); for (var track : list) { @@ -65,12 +71,16 @@ public class LibVKXClient { } try { - iLibVkxService.play(ids, indexOf, ""); + iLibVkxService.play(ids, indexOf, playbackContext); } catch (RemoteException e) { e.printStackTrace(); } } + public static void lambdaplay(List list, MusicTrack musicTrack, ILibVkxService iLibVkxService){ + lambdaplay(list, musicTrack, iLibVkxService, null); + } + private static String asId(MusicTrack musicTrack) { String str = musicTrack.e + "_" + musicTrack.d; if (musicTrack.O == null || musicTrack.O.equals("")) { diff --git a/app/src/main/java/ru/vtosters/lite/hooks/ui/MusicBottomSheetHook.java b/app/src/main/java/ru/vtosters/lite/hooks/ui/MusicBottomSheetHook.java index c105f0dff..434098b1e 100644 --- a/app/src/main/java/ru/vtosters/lite/hooks/ui/MusicBottomSheetHook.java +++ b/app/src/main/java/ru/vtosters/lite/hooks/ui/MusicBottomSheetHook.java @@ -2,6 +2,7 @@ package ru.vtosters.lite.hooks.ui; import com.vk.dto.music.MusicTrack; import com.vk.music.bottomsheets.a.MusicAction; +import com.vk.music.common.MusicPlaybackLaunchContext; import com.vtosters.lite.R; import java.util.ArrayList; @@ -19,8 +20,8 @@ public class MusicBottomSheetHook { return actions; } - public static boolean tryPlayInVKX(MusicTrack track) { - LibVKXClientImpl.LibVKXAction action = iLibVkxService -> LibVKXClient.lambdaplay(List.of(track), track, iLibVkxService); + public static boolean tryPlayInVKX(MusicTrack track, MusicPlaybackLaunchContext context) { + LibVKXClientImpl.LibVKXAction action = iLibVkxService -> LibVKXClient.lambdaplay(List.of(track), track, iLibVkxService, context); return LibVKXClient.getInstance().runOnService(action); } diff --git a/smali/smali_classes3/com/vk/music/bottomsheets/track/MusicTrackBottomSheetClickListener.smali b/smali/smali_classes3/com/vk/music/bottomsheets/track/MusicTrackBottomSheetClickListener.smali index 0bd9fe504..4fe05a419 100644 --- a/smali/smali_classes3/com/vk/music/bottomsheets/track/MusicTrackBottomSheetClickListener.smali +++ b/smali/smali_classes3/com/vk/music/bottomsheets/track/MusicTrackBottomSheetClickListener.smali @@ -709,7 +709,7 @@ move-result p1 - invoke-static {v0}, Lru/vtosters/lite/hooks/ui/MusicBottomSheetHook;->tryPlayInVKX(Lcom/vk/dto/music/MusicTrack;)Z + invoke-static {v0, v2}, Lru/vtosters/lite/hooks/ui/MusicBottomSheetHook;->tryPlayInVKX(Lcom/vk/dto/music/MusicTrack;Lcom/vk/music/common/MusicPlaybackLaunchContext;)Z move-result v3