diff --git a/app/src/main/java/com/cappielloantonio/play/repository/SongRepository.java b/app/src/main/java/com/cappielloantonio/play/repository/SongRepository.java index 139167fc..5b082d76 100644 --- a/app/src/main/java/com/cappielloantonio/play/repository/SongRepository.java +++ b/app/src/main/java/com/cappielloantonio/play/repository/SongRepository.java @@ -22,7 +22,7 @@ public class SongRepository { private static final String TAG = "SongRepository"; public MutableLiveData> getStarredSongs(boolean random, int size) { - MutableLiveData> starredSongs = new MutableLiveData<>(Collections.EMPTY_LIST); + MutableLiveData> starredSongs = new MutableLiveData<>(Collections.emptyList()); App.getSubsonicClientInstance(false) .getAlbumSongListClient() diff --git a/app/src/main/java/com/cappielloantonio/play/service/MediaManager.java b/app/src/main/java/com/cappielloantonio/play/service/MediaManager.java index ff1f7710..601a92df 100644 --- a/app/src/main/java/com/cappielloantonio/play/service/MediaManager.java +++ b/app/src/main/java/com/cappielloantonio/play/service/MediaManager.java @@ -57,7 +57,7 @@ public class MediaManager { } } - public static void check(ListenableFuture mediaBrowserListenableFuture, Context context) { + public static void check(ListenableFuture mediaBrowserListenableFuture) { if (mediaBrowserListenableFuture != null) { mediaBrowserListenableFuture.addListener(() -> { try { @@ -65,7 +65,7 @@ public class MediaManager { if (mediaBrowserListenableFuture.get().getMediaItemCount() < 1) { List media = getQueueRepository().getMedia(); if (media != null && media.size() >= 1) { - init(mediaBrowserListenableFuture, context, media); + init(mediaBrowserListenableFuture, media); } } } @@ -76,7 +76,7 @@ public class MediaManager { } } - public static void init(ListenableFuture mediaBrowserListenableFuture, Context context, List media) { + public static void init(ListenableFuture mediaBrowserListenableFuture, List media) { if (mediaBrowserListenableFuture != null) { mediaBrowserListenableFuture.addListener(() -> { try { @@ -163,7 +163,7 @@ public class MediaManager { } } - public static void startQueue(ListenableFuture mediaBrowserListenableFuture, Context context, List media, int startIndex) { + public static void startQueue(ListenableFuture mediaBrowserListenableFuture, List media, int startIndex) { if (mediaBrowserListenableFuture != null) { mediaBrowserListenableFuture.addListener(() -> { try { @@ -182,7 +182,7 @@ public class MediaManager { } } - public static void startQueue(ListenableFuture mediaBrowserListenableFuture, Context context, Child media) { + public static void startQueue(ListenableFuture mediaBrowserListenableFuture, Child media) { if (mediaBrowserListenableFuture != null) { mediaBrowserListenableFuture.addListener(() -> { try { @@ -200,7 +200,7 @@ public class MediaManager { } } - public static void enqueue(ListenableFuture mediaBrowserListenableFuture, Context context, List media, boolean playImmediatelyAfter) { + public static void enqueue(ListenableFuture mediaBrowserListenableFuture, List media, boolean playImmediatelyAfter) { if (mediaBrowserListenableFuture != null) { mediaBrowserListenableFuture.addListener(() -> { try { @@ -220,7 +220,7 @@ public class MediaManager { } } - public static void enqueue(ListenableFuture mediaBrowserListenableFuture, Context context, Child media, boolean playImmediatelyAfter) { + public static void enqueue(ListenableFuture mediaBrowserListenableFuture, Child media, boolean playImmediatelyAfter) { if (mediaBrowserListenableFuture != null) { mediaBrowserListenableFuture.addListener(() -> { try { diff --git a/app/src/main/java/com/cappielloantonio/play/ui/activity/MainActivity.java b/app/src/main/java/com/cappielloantonio/play/ui/activity/MainActivity.java index dc632f8a..c9583e97 100644 --- a/app/src/main/java/com/cappielloantonio/play/ui/activity/MainActivity.java +++ b/app/src/main/java/com/cappielloantonio/play/ui/activity/MainActivity.java @@ -205,7 +205,7 @@ public class MainActivity extends BaseActivity { } private void initService() { - MediaManager.check(getMediaBrowserListenableFuture(), this); + MediaManager.check(getMediaBrowserListenableFuture()); getMediaBrowserListenableFuture().addListener(() -> { try { diff --git a/app/src/main/java/com/cappielloantonio/play/ui/fragment/AlbumPageFragment.java b/app/src/main/java/com/cappielloantonio/play/ui/fragment/AlbumPageFragment.java index 974ad5fd..1b1431df 100644 --- a/app/src/main/java/com/cappielloantonio/play/ui/fragment/AlbumPageFragment.java +++ b/app/src/main/java/com/cappielloantonio/play/ui/fragment/AlbumPageFragment.java @@ -154,13 +154,13 @@ public class AlbumPageFragment extends Fragment implements ClickCallback { albumPageViewModel.getAlbumSongLiveList().observe(getViewLifecycleOwner(), songs -> { if (bind != null && !songs.isEmpty()) { bind.albumPagePlayButton.setOnClickListener(v -> { - MediaManager.startQueue(mediaBrowserListenableFuture, requireContext(), songs, 0); + MediaManager.startQueue(mediaBrowserListenableFuture, songs, 0); activity.setBottomSheetInPeek(true); }); bind.albumPageShuffleButton.setOnClickListener(v -> { Collections.shuffle(songs); - MediaManager.startQueue(mediaBrowserListenableFuture, requireContext(), songs, 0); + MediaManager.startQueue(mediaBrowserListenableFuture, songs, 0); activity.setBottomSheetInPeek(true); }); } @@ -200,7 +200,7 @@ public class AlbumPageFragment extends Fragment implements ClickCallback { @Override public void onMediaClick(Bundle bundle) { - MediaManager.startQueue(mediaBrowserListenableFuture, requireContext(), bundle.getParcelableArrayList(Constants.TRACKS_OBJECT), bundle.getInt(Constants.ITEM_POSITION)); + MediaManager.startQueue(mediaBrowserListenableFuture, bundle.getParcelableArrayList(Constants.TRACKS_OBJECT), bundle.getInt(Constants.ITEM_POSITION)); activity.setBottomSheetInPeek(true); } diff --git a/app/src/main/java/com/cappielloantonio/play/ui/fragment/ArtistPageFragment.java b/app/src/main/java/com/cappielloantonio/play/ui/fragment/ArtistPageFragment.java index ad2efaee..b49293c6 100644 --- a/app/src/main/java/com/cappielloantonio/play/ui/fragment/ArtistPageFragment.java +++ b/app/src/main/java/com/cappielloantonio/play/ui/fragment/ArtistPageFragment.java @@ -138,7 +138,7 @@ public class ArtistPageFragment extends Fragment implements ClickCallback { bind.artistPageShuffleButton.setOnClickListener(v -> { artistPageViewModel.getArtistShuffleList().observe(getViewLifecycleOwner(), songs -> { if (songs.size() > 0) { - MediaManager.startQueue(mediaBrowserListenableFuture, requireContext(), songs, 0); + MediaManager.startQueue(mediaBrowserListenableFuture, songs, 0); activity.setBottomSheetInPeek(true); } else { Toast.makeText(requireContext(), getString(R.string.artist_error_retrieving_tracks), Toast.LENGTH_SHORT).show(); @@ -149,7 +149,7 @@ public class ArtistPageFragment extends Fragment implements ClickCallback { bind.artistPageRadioButton.setOnClickListener(v -> { artistPageViewModel.getArtistInstantMix().observe(getViewLifecycleOwner(), songs -> { if (songs.size() > 0) { - MediaManager.startQueue(mediaBrowserListenableFuture, requireContext(), songs, 0); + MediaManager.startQueue(mediaBrowserListenableFuture, songs, 0); activity.setBottomSheetInPeek(true); } else { Toast.makeText(requireContext(), getString(R.string.artist_error_retrieving_radio), Toast.LENGTH_SHORT).show(); @@ -211,7 +211,7 @@ public class ArtistPageFragment extends Fragment implements ClickCallback { @Override public void onMediaClick(Bundle bundle) { - MediaManager.startQueue(mediaBrowserListenableFuture, requireContext(), bundle.getParcelableArrayList(Constants.TRACKS_OBJECT), bundle.getInt(Constants.ITEM_POSITION)); + MediaManager.startQueue(mediaBrowserListenableFuture, bundle.getParcelableArrayList(Constants.TRACKS_OBJECT), bundle.getInt(Constants.ITEM_POSITION)); activity.setBottomSheetInPeek(true); } diff --git a/app/src/main/java/com/cappielloantonio/play/ui/fragment/DownloadFragment.java b/app/src/main/java/com/cappielloantonio/play/ui/fragment/DownloadFragment.java index 52ce33cf..b38ffa44 100644 --- a/app/src/main/java/com/cappielloantonio/play/ui/fragment/DownloadFragment.java +++ b/app/src/main/java/com/cappielloantonio/play/ui/fragment/DownloadFragment.java @@ -154,7 +154,7 @@ public class DownloadFragment extends Fragment implements ClickCallback { @Override public void onMediaClick(Bundle bundle) { - MediaManager.startQueue(mediaBrowserListenableFuture, requireContext(), bundle.getParcelableArrayList(Constants.TRACKS_OBJECT), bundle.getInt(Constants.ITEM_POSITION)); + MediaManager.startQueue(mediaBrowserListenableFuture, bundle.getParcelableArrayList(Constants.TRACKS_OBJECT), bundle.getInt(Constants.ITEM_POSITION)); activity.setBottomSheetInPeek(true); } diff --git a/app/src/main/java/com/cappielloantonio/play/ui/fragment/HomeFragment.java b/app/src/main/java/com/cappielloantonio/play/ui/fragment/HomeFragment.java index f37f07c1..ca8b2568 100644 --- a/app/src/main/java/com/cappielloantonio/play/ui/fragment/HomeFragment.java +++ b/app/src/main/java/com/cappielloantonio/play/ui/fragment/HomeFragment.java @@ -680,22 +680,22 @@ public class HomeFragment extends Fragment implements ClickCallback { @Override public void onMediaClick(Bundle bundle) { if (bundle.containsKey(Constants.MEDIA_MIX)) { - MediaManager.startQueue(mediaBrowserListenableFuture, requireContext(), bundle.getParcelable(Constants.TRACK_OBJECT)); + MediaManager.startQueue(mediaBrowserListenableFuture, bundle.getParcelable(Constants.TRACK_OBJECT)); activity.setBottomSheetInPeek(true); if (mediaBrowserListenableFuture != null) { homeViewModel.getMediaInstantMix(getViewLifecycleOwner(), bundle.getParcelable(Constants.TRACK_OBJECT)).observe(getViewLifecycleOwner(), songs -> { - if (songs.size() > 0) { - MediaManager.enqueue(mediaBrowserListenableFuture, requireContext(), songs, true); + if (songs != null && songs.size() > 0) { + MediaManager.enqueue(mediaBrowserListenableFuture, songs, true); } }); } } else if (bundle.containsKey(Constants.MEDIA_CHRONOLOGY)) { List media = bundle.getParcelableArrayList(Constants.TRACKS_OBJECT); - MediaManager.startQueue(mediaBrowserListenableFuture, requireContext(), media, bundle.getInt(Constants.ITEM_POSITION)); + MediaManager.startQueue(mediaBrowserListenableFuture, media, bundle.getInt(Constants.ITEM_POSITION)); activity.setBottomSheetInPeek(true); } else { - MediaManager.startQueue(mediaBrowserListenableFuture, requireContext(), bundle.getParcelableArrayList(Constants.TRACKS_OBJECT), bundle.getInt(Constants.ITEM_POSITION)); + MediaManager.startQueue(mediaBrowserListenableFuture, bundle.getParcelableArrayList(Constants.TRACKS_OBJECT), bundle.getInt(Constants.ITEM_POSITION)); activity.setBottomSheetInPeek(true); } } @@ -725,7 +725,7 @@ public class HomeFragment extends Fragment implements ClickCallback { if (mediaBrowserListenableFuture != null) { homeViewModel.getArtistInstantMix(getViewLifecycleOwner(), bundle.getParcelable(Constants.ARTIST_OBJECT)).observe(getViewLifecycleOwner(), songs -> { if (songs.size() > 0) { - MediaManager.startQueue(mediaBrowserListenableFuture, requireContext(), songs, 0); + MediaManager.startQueue(mediaBrowserListenableFuture, songs, 0); activity.setBottomSheetInPeek(true); } }); @@ -734,7 +734,7 @@ public class HomeFragment extends Fragment implements ClickCallback { if (mediaBrowserListenableFuture != null) { homeViewModel.getArtistBestOf(getViewLifecycleOwner(), bundle.getParcelable(Constants.ARTIST_OBJECT)).observe(getViewLifecycleOwner(), songs -> { if (songs.size() > 0) { - MediaManager.startQueue(mediaBrowserListenableFuture, requireContext(), songs, 0); + MediaManager.startQueue(mediaBrowserListenableFuture, songs, 0); activity.setBottomSheetInPeek(true); } }); @@ -756,7 +756,7 @@ public class HomeFragment extends Fragment implements ClickCallback { @Override public void onPodcastClick(Bundle bundle) { - MediaManager.startQueue(mediaBrowserListenableFuture, requireContext(), bundle.getParcelable(Constants.PODCAST_OBJECT)); + MediaManager.startQueue(mediaBrowserListenableFuture, bundle.getParcelable(Constants.PODCAST_OBJECT)); activity.setBottomSheetInPeek(true); } diff --git a/app/src/main/java/com/cappielloantonio/play/ui/fragment/PlayerCoverFragment.java b/app/src/main/java/com/cappielloantonio/play/ui/fragment/PlayerCoverFragment.java index afcba424..8a225a7d 100644 --- a/app/src/main/java/com/cappielloantonio/play/ui/fragment/PlayerCoverFragment.java +++ b/app/src/main/java/com/cappielloantonio/play/ui/fragment/PlayerCoverFragment.java @@ -108,7 +108,7 @@ public class PlayerCoverFragment extends Fragment { bind.innerButtonBottomLeft.setOnClickListener(view -> { playerBottomSheetViewModel.getMediaInstantMix(getViewLifecycleOwner(), song).observe(getViewLifecycleOwner(), media -> { - MediaManager.enqueue(mediaBrowserListenableFuture, requireContext(), media, true); + MediaManager.enqueue(mediaBrowserListenableFuture, media, true); }); }); diff --git a/app/src/main/java/com/cappielloantonio/play/ui/fragment/PlayerQueueFragment.java b/app/src/main/java/com/cappielloantonio/play/ui/fragment/PlayerQueueFragment.java index 7b9afc0e..d61853ee 100644 --- a/app/src/main/java/com/cappielloantonio/play/ui/fragment/PlayerQueueFragment.java +++ b/app/src/main/java/com/cappielloantonio/play/ui/fragment/PlayerQueueFragment.java @@ -152,6 +152,6 @@ public class PlayerQueueFragment extends Fragment implements ClickCallback { @Override public void onMediaClick(Bundle bundle) { - MediaManager.startQueue(mediaBrowserListenableFuture, requireContext(), bundle.getParcelableArrayList(Constants.TRACKS_OBJECT), bundle.getInt(Constants.ITEM_POSITION)); + MediaManager.startQueue(mediaBrowserListenableFuture, bundle.getParcelableArrayList(Constants.TRACKS_OBJECT), bundle.getInt(Constants.ITEM_POSITION)); } } \ No newline at end of file diff --git a/app/src/main/java/com/cappielloantonio/play/ui/fragment/PlaylistPageFragment.java b/app/src/main/java/com/cappielloantonio/play/ui/fragment/PlaylistPageFragment.java index a8e309cf..e4f28a41 100644 --- a/app/src/main/java/com/cappielloantonio/play/ui/fragment/PlaylistPageFragment.java +++ b/app/src/main/java/com/cappielloantonio/play/ui/fragment/PlaylistPageFragment.java @@ -148,13 +148,13 @@ public class PlaylistPageFragment extends Fragment implements ClickCallback { playlistPageViewModel.getPlaylistSongLiveList().observe(getViewLifecycleOwner(), songs -> { if (bind != null) { bind.playlistPagePlayButton.setOnClickListener(v -> { - MediaManager.startQueue(mediaBrowserListenableFuture, requireContext(), songs, 0); + MediaManager.startQueue(mediaBrowserListenableFuture, songs, 0); activity.setBottomSheetInPeek(true); }); bind.playlistPageShuffleButton.setOnClickListener(v -> { Collections.shuffle(songs); - MediaManager.startQueue(mediaBrowserListenableFuture, requireContext(), songs, 0); + MediaManager.startQueue(mediaBrowserListenableFuture, songs, 0); activity.setBottomSheetInPeek(true); }); } @@ -189,7 +189,7 @@ public class PlaylistPageFragment extends Fragment implements ClickCallback { @Override public void onMediaClick(Bundle bundle) { - MediaManager.startQueue(mediaBrowserListenableFuture, requireContext(), bundle.getParcelableArrayList(Constants.TRACKS_OBJECT), bundle.getInt(Constants.ITEM_POSITION)); + MediaManager.startQueue(mediaBrowserListenableFuture, bundle.getParcelableArrayList(Constants.TRACKS_OBJECT), bundle.getInt(Constants.ITEM_POSITION)); activity.setBottomSheetInPeek(true); } diff --git a/app/src/main/java/com/cappielloantonio/play/ui/fragment/SearchFragment.java b/app/src/main/java/com/cappielloantonio/play/ui/fragment/SearchFragment.java index 9a40f1f6..dec1cafc 100644 --- a/app/src/main/java/com/cappielloantonio/play/ui/fragment/SearchFragment.java +++ b/app/src/main/java/com/cappielloantonio/play/ui/fragment/SearchFragment.java @@ -229,7 +229,7 @@ public class SearchFragment extends Fragment implements ClickCallback { @Override public void onMediaClick(Bundle bundle) { - MediaManager.startQueue(mediaBrowserListenableFuture, requireContext(), bundle.getParcelableArrayList(Constants.TRACKS_OBJECT), bundle.getInt(Constants.ITEM_POSITION)); + MediaManager.startQueue(mediaBrowserListenableFuture, bundle.getParcelableArrayList(Constants.TRACKS_OBJECT), bundle.getInt(Constants.ITEM_POSITION)); activity.setBottomSheetInPeek(true); } diff --git a/app/src/main/java/com/cappielloantonio/play/ui/fragment/SongListPageFragment.java b/app/src/main/java/com/cappielloantonio/play/ui/fragment/SongListPageFragment.java index 367b4c6b..1c174e5a 100644 --- a/app/src/main/java/com/cappielloantonio/play/ui/fragment/SongListPageFragment.java +++ b/app/src/main/java/com/cappielloantonio/play/ui/fragment/SongListPageFragment.java @@ -150,7 +150,7 @@ public class SongListPageFragment extends Fragment implements ClickCallback { if (bind != null) { bind.songListShuffleImageView.setOnClickListener(v -> { Collections.shuffle(songs); - MediaManager.startQueue(mediaBrowserListenableFuture, requireContext(), songs.subList(0, Math.min(25, songs.size())), 0); + MediaManager.startQueue(mediaBrowserListenableFuture, songs.subList(0, Math.min(25, songs.size())), 0); activity.setBottomSheetInPeek(true); }); } @@ -176,7 +176,7 @@ public class SongListPageFragment extends Fragment implements ClickCallback { @Override public void onMediaClick(Bundle bundle) { - MediaManager.startQueue(mediaBrowserListenableFuture, requireContext(), bundle.getParcelableArrayList(Constants.TRACKS_OBJECT), bundle.getInt(Constants.ITEM_POSITION)); + MediaManager.startQueue(mediaBrowserListenableFuture, bundle.getParcelableArrayList(Constants.TRACKS_OBJECT), bundle.getInt(Constants.ITEM_POSITION)); activity.setBottomSheetInPeek(true); } diff --git a/app/src/main/java/com/cappielloantonio/play/ui/fragment/bottomsheetdialog/AlbumBottomSheetDialog.java b/app/src/main/java/com/cappielloantonio/play/ui/fragment/bottomsheetdialog/AlbumBottomSheetDialog.java index 2698573a..58b19c39 100644 --- a/app/src/main/java/com/cappielloantonio/play/ui/fragment/bottomsheetdialog/AlbumBottomSheetDialog.java +++ b/app/src/main/java/com/cappielloantonio/play/ui/fragment/bottomsheetdialog/AlbumBottomSheetDialog.java @@ -112,7 +112,7 @@ public class AlbumBottomSheetDialog extends BottomSheetDialogFragment implements @Override public void onLoadMedia(List media) { if (media.size() > 0) { - MediaManager.startQueue(mediaBrowserListenableFuture, requireContext(), (ArrayList) media, 0); + MediaManager.startQueue(mediaBrowserListenableFuture, (ArrayList) media, 0); ((MainActivity) requireActivity()).setBottomSheetInPeek(true); } @@ -127,7 +127,7 @@ public class AlbumBottomSheetDialog extends BottomSheetDialogFragment implements albumRepository.getAlbumTracks(album.getId()).observe(getViewLifecycleOwner(), songs -> { Collections.shuffle(songs); - MediaManager.startQueue(mediaBrowserListenableFuture, requireContext(), songs, 0); + MediaManager.startQueue(mediaBrowserListenableFuture, songs, 0); ((MainActivity) requireActivity()).setBottomSheetInPeek(true); dismissBottomSheet(); @@ -136,7 +136,7 @@ public class AlbumBottomSheetDialog extends BottomSheetDialogFragment implements TextView playNext = view.findViewById(R.id.play_next_text_view); playNext.setOnClickListener(v -> albumBottomSheetViewModel.getAlbumTracks().observe(getViewLifecycleOwner(), songs -> { - MediaManager.enqueue(mediaBrowserListenableFuture, requireContext(), songs, true); + MediaManager.enqueue(mediaBrowserListenableFuture, songs, true); ((MainActivity) requireActivity()).setBottomSheetInPeek(true); dismissBottomSheet(); @@ -144,7 +144,7 @@ public class AlbumBottomSheetDialog extends BottomSheetDialogFragment implements TextView addToQueue = view.findViewById(R.id.add_to_queue_text_view); addToQueue.setOnClickListener(v -> albumBottomSheetViewModel.getAlbumTracks().observe(getViewLifecycleOwner(), songs -> { - MediaManager.enqueue(mediaBrowserListenableFuture, requireContext(), songs, false); + MediaManager.enqueue(mediaBrowserListenableFuture, songs, false); ((MainActivity) requireActivity()).setBottomSheetInPeek(true); dismissBottomSheet(); diff --git a/app/src/main/java/com/cappielloantonio/play/ui/fragment/bottomsheetdialog/ArtistBottomSheetDialog.java b/app/src/main/java/com/cappielloantonio/play/ui/fragment/bottomsheetdialog/ArtistBottomSheetDialog.java index 86448deb..176ffc99 100644 --- a/app/src/main/java/com/cappielloantonio/play/ui/fragment/bottomsheetdialog/ArtistBottomSheetDialog.java +++ b/app/src/main/java/com/cappielloantonio/play/ui/fragment/bottomsheetdialog/ArtistBottomSheetDialog.java @@ -94,7 +94,7 @@ public class ArtistBottomSheetDialog extends BottomSheetDialogFragment implement artistRepository.getInstantMix(artist, 20).observe(getViewLifecycleOwner(), songs -> { if (songs.size() > 0) { - MediaManager.startQueue(mediaBrowserListenableFuture, requireContext(), songs, 0); + MediaManager.startQueue(mediaBrowserListenableFuture, songs, 0); ((MainActivity) requireActivity()).setBottomSheetInPeek(true); } @@ -107,7 +107,7 @@ public class ArtistBottomSheetDialog extends BottomSheetDialogFragment implement ArtistRepository artistRepository = new ArtistRepository(); artistRepository.getRandomSong(artist, 50).observe(getViewLifecycleOwner(), songs -> { if (songs.size() > 0) { - MediaManager.startQueue(mediaBrowserListenableFuture, requireContext(), songs, 0); + MediaManager.startQueue(mediaBrowserListenableFuture, songs, 0); ((MainActivity) requireActivity()).setBottomSheetInPeek(true); dismissBottomSheet(); diff --git a/app/src/main/java/com/cappielloantonio/play/ui/fragment/bottomsheetdialog/PodcastBottomSheetDialog.java b/app/src/main/java/com/cappielloantonio/play/ui/fragment/bottomsheetdialog/PodcastBottomSheetDialog.java index 0282f337..5670d519 100644 --- a/app/src/main/java/com/cappielloantonio/play/ui/fragment/bottomsheetdialog/PodcastBottomSheetDialog.java +++ b/app/src/main/java/com/cappielloantonio/play/ui/fragment/bottomsheetdialog/PodcastBottomSheetDialog.java @@ -83,7 +83,7 @@ public class PodcastBottomSheetDialog extends BottomSheetDialogFragment implemen TextView playNext = view.findViewById(R.id.play_next_text_view); playNext.setOnClickListener(v -> { // TODO - // MediaManager.enqueue(mediaBrowserListenableFuture, requireContext(), podcast, true); + // MediaManager.enqueue(mediaBrowserListenableFuture, podcast, true); ((MainActivity) requireActivity()).setBottomSheetInPeek(true); dismissBottomSheet(); }); @@ -91,7 +91,7 @@ public class PodcastBottomSheetDialog extends BottomSheetDialogFragment implemen TextView addToQueue = view.findViewById(R.id.add_to_queue_text_view); addToQueue.setOnClickListener(v -> { // TODO - // MediaManager.enqueue(mediaBrowserListenableFuture, requireContext(), podcast, false); + // MediaManager.enqueue(mediaBrowserListenableFuture, podcast, false); ((MainActivity) requireActivity()).setBottomSheetInPeek(true); dismissBottomSheet(); }); diff --git a/app/src/main/java/com/cappielloantonio/play/ui/fragment/bottomsheetdialog/SongBottomSheetDialog.java b/app/src/main/java/com/cappielloantonio/play/ui/fragment/bottomsheetdialog/SongBottomSheetDialog.java index f5647f16..5cbe2bb1 100644 --- a/app/src/main/java/com/cappielloantonio/play/ui/fragment/bottomsheetdialog/SongBottomSheetDialog.java +++ b/app/src/main/java/com/cappielloantonio/play/ui/fragment/bottomsheetdialog/SongBottomSheetDialog.java @@ -109,7 +109,7 @@ public class SongBottomSheetDialog extends BottomSheetDialogFragment implements TextView playRadio = view.findViewById(R.id.play_radio_text_view); playRadio.setOnClickListener(v -> { - MediaManager.startQueue(mediaBrowserListenableFuture, requireContext(), song); + MediaManager.startQueue(mediaBrowserListenableFuture, song); ((MainActivity) requireActivity()).setBottomSheetInPeek(true); songBottomSheetViewModel.getInstantMix(getViewLifecycleOwner(), song).observe(getViewLifecycleOwner(), songs -> { @@ -119,7 +119,7 @@ public class SongBottomSheetDialog extends BottomSheetDialogFragment implements } if (songs.size() > 0) { - MediaManager.enqueue(mediaBrowserListenableFuture, requireContext(), songs, true); + MediaManager.enqueue(mediaBrowserListenableFuture, songs, true); dismissBottomSheet(); } }); @@ -127,14 +127,14 @@ public class SongBottomSheetDialog extends BottomSheetDialogFragment implements TextView playNext = view.findViewById(R.id.play_next_text_view); playNext.setOnClickListener(v -> { - MediaManager.enqueue(mediaBrowserListenableFuture, requireContext(), song, true); + MediaManager.enqueue(mediaBrowserListenableFuture, song, true); ((MainActivity) requireActivity()).setBottomSheetInPeek(true); dismissBottomSheet(); }); TextView addToQueue = view.findViewById(R.id.add_to_queue_text_view); addToQueue.setOnClickListener(v -> { - MediaManager.enqueue(mediaBrowserListenableFuture, requireContext(), song, false); + MediaManager.enqueue(mediaBrowserListenableFuture, song, false); ((MainActivity) requireActivity()).setBottomSheetInPeek(true); dismissBottomSheet(); }); diff --git a/app/src/main/java/com/cappielloantonio/play/util/MusicUtil.java b/app/src/main/java/com/cappielloantonio/play/util/MusicUtil.java index 2c059de4..437dc341 100644 --- a/app/src/main/java/com/cappielloantonio/play/util/MusicUtil.java +++ b/app/src/main/java/com/cappielloantonio/play/util/MusicUtil.java @@ -55,7 +55,7 @@ public class MusicUtil { StringBuilder uri = new StringBuilder(); uri.append(App.getSubsonicClientInstance(false).getUrl()); - uri.append("download"); + uri.append("stream"); if (params.containsKey("u") && params.get("u") != null) uri.append("?u=").append(params.get("u")); diff --git a/app/src/main/java/com/cappielloantonio/play/viewmodel/HomeViewModel.java b/app/src/main/java/com/cappielloantonio/play/viewmodel/HomeViewModel.java index 70785d9c..553f5266 100644 --- a/app/src/main/java/com/cappielloantonio/play/viewmodel/HomeViewModel.java +++ b/app/src/main/java/com/cappielloantonio/play/viewmodel/HomeViewModel.java @@ -197,17 +197,17 @@ public class HomeViewModel extends AndroidViewModel { } public LiveData> getArtistInstantMix(LifecycleOwner owner, ArtistID3 artist) { - if (artistInstantMix.getValue() == null) { - artistRepository.getTopSongs(artist.getName(), 10).observe(owner, artistInstantMix::postValue); - } + artistInstantMix.setValue(Collections.emptyList()); + + artistRepository.getTopSongs(artist.getName(), 10).observe(owner, artistInstantMix::postValue); return artistInstantMix; } public LiveData> getArtistBestOf(LifecycleOwner owner, ArtistID3 artist) { - if (bestOfArtists.getValue() == null) { - artistRepository.getTopSongs(artist.getName(), 10).observe(owner, artistBestOf::postValue); - } + artistBestOf.setValue(Collections.emptyList()); + + artistRepository.getTopSongs(artist.getName(), 10).observe(owner, artistBestOf::postValue); return artistBestOf; }