TEST: Passing observables from requireActivity () to getViewLifecycleOwner ()

This commit is contained in:
antonio 2022-08-27 17:00:48 +02:00
parent 00d68ad7d1
commit dbbbbb39bf
15 changed files with 51 additions and 50 deletions

View file

@ -4,6 +4,7 @@ import android.app.Application;
import androidx.annotation.NonNull;
import androidx.fragment.app.FragmentActivity;
import androidx.lifecycle.LifecycleOwner;
import androidx.lifecycle.MutableLiveData;
import com.cappielloantonio.play.App;
@ -267,7 +268,7 @@ public class ArtistRepository {
});
}
public MutableLiveData<ArrayList<Media>> getArtistRandomSong(FragmentActivity fragmentActivity, Artist artist, int count) {
public MutableLiveData<ArrayList<Media>> getArtistRandomSong(LifecycleOwner owner, Artist artist, int count) {
MutableLiveData<ArrayList<Media>> randomSongs = new MutableLiveData<>();
App.getSubsonicClientInstance(application, false)
@ -283,7 +284,7 @@ public class ArtistRepository {
AlbumRepository albumRepository = new AlbumRepository(App.getInstance());
for (int index = 0; index < albums.size(); index++) {
albumRepository.getAlbumTracks(albums.get(index).getId()).observe(fragmentActivity, songs -> {
albumRepository.getAlbumTracks(albums.get(index).getId()).observe(owner, songs -> {
ArrayList<Media> liveSongs = randomSongs.getValue();
if (liveSongs == null) liveSongs = new ArrayList<>();
Collections.shuffle(liveSongs);

View file

@ -58,7 +58,7 @@ public class StarredSyncDialog extends DialogFragment {
private void setButtonAction(Context context) {
((AlertDialog) Objects.requireNonNull(getDialog())).getButton(AlertDialog.BUTTON_POSITIVE).setOnClickListener(v -> {
starredSyncViewModel.getStarredTracks(requireActivity()).observe(getViewLifecycleOwner(), songs -> {
starredSyncViewModel.getStarredTracks(getViewLifecycleOwner()).observe(getViewLifecycleOwner(), songs -> {
if (songs != null) {
DownloadUtil.getDownloadTracker(context).download(
MappingUtil.mapMediaItems(context, songs, false),

View file

@ -101,6 +101,6 @@ public class AlbumListPageFragment extends Fragment {
);
bind.albumListRecyclerView.setAdapter(albumHorizontalAdapter);
albumListPageViewModel.getAlbumList(requireActivity()).observe(getViewLifecycleOwner(), albums -> albumHorizontalAdapter.setItems(albums));
albumListPageViewModel.getAlbumList(getViewLifecycleOwner()).observe(getViewLifecycleOwner(), albums -> albumHorizontalAdapter.setItems(albums));
}
}

View file

@ -106,7 +106,7 @@ public class AlbumPageFragment extends Fragment {
@Override
public boolean onOptionsItemSelected(@NonNull MenuItem item) {
if (item.getItemId() == R.id.action_download_album) {
albumPageViewModel.getAlbumSongLiveList(requireActivity()).observe(getViewLifecycleOwner(), songs -> {
albumPageViewModel.getAlbumSongLiveList(getViewLifecycleOwner()).observe(getViewLifecycleOwner(), songs -> {
if (isVisible() && getActivity() != null) {
DownloadUtil.getDownloadTracker(requireContext()).download(
MappingUtil.mapMediaItems(requireContext(), songs, false),
@ -156,7 +156,7 @@ public class AlbumPageFragment extends Fragment {
}
private void initMusicButton() {
albumPageViewModel.getAlbumSongLiveList(requireActivity()).observe(getViewLifecycleOwner(), songs -> {
albumPageViewModel.getAlbumSongLiveList(getViewLifecycleOwner()).observe(getViewLifecycleOwner(), songs -> {
if (bind != null && !songs.isEmpty()) {
bind.albumPagePlayButton.setOnClickListener(v -> {
MediaManager.startQueue(mediaBrowserListenableFuture, requireContext(), songs, 0);
@ -192,7 +192,7 @@ public class AlbumPageFragment extends Fragment {
songHorizontalAdapter = new SongHorizontalAdapter(activity, requireContext(), false);
bind.songRecyclerView.setAdapter(songHorizontalAdapter);
albumPageViewModel.getAlbumSongLiveList(requireActivity()).observe(getViewLifecycleOwner(), songs -> songHorizontalAdapter.setItems(songs));
albumPageViewModel.getAlbumSongLiveList(getViewLifecycleOwner()).observe(getViewLifecycleOwner(), songs -> songHorizontalAdapter.setItems(songs));
}
@SuppressLint("UnsafeOptInUsageError")

View file

@ -82,6 +82,6 @@ public class ArtistListPageFragment extends Fragment {
artistHorizontalAdapter = new ArtistHorizontalAdapter(requireContext(), artistListPageViewModel.title.equals(Artist.DOWNLOADED));
bind.artistListRecyclerView.setAdapter(artistHorizontalAdapter);
artistListPageViewModel.getArtistList(requireActivity()).observe(getViewLifecycleOwner(), artists -> artistHorizontalAdapter.setItems(artists));
artistListPageViewModel.getArtistList(getViewLifecycleOwner()).observe(getViewLifecycleOwner(), artists -> artistHorizontalAdapter.setItems(artists));
}
}

View file

@ -141,7 +141,7 @@ public class ArtistPageFragment extends Fragment {
private void initPlayButtons() {
bind.artistPageShuffleButton.setOnClickListener(v -> {
ArtistRepository artistRepository = new ArtistRepository(App.getInstance());
artistRepository.getArtistRandomSong(requireActivity(), artistPageViewModel.getArtist(), 20).observe(getViewLifecycleOwner(), songs -> {
artistRepository.getArtistRandomSong(getViewLifecycleOwner(), artistPageViewModel.getArtist(), 20).observe(getViewLifecycleOwner(), songs -> {
if (songs.size() > 0) {
MediaManager.startQueue(mediaBrowserListenableFuture, requireContext(), songs, 0);
activity.setBottomSheetInPeek(true);

View file

@ -171,7 +171,7 @@ public class DownloadFragment extends Fragment {
downloadedArtistAdapter = new ArtistHorizontalAdapter(requireContext(), false);
bind.downloadedArtistRecyclerView.setAdapter(downloadedArtistAdapter);
downloadViewModel.getDownloadedArtists(requireActivity(), 20).observe(getViewLifecycleOwner(), artists -> {
downloadViewModel.getDownloadedArtists(getViewLifecycleOwner(), 20).observe(getViewLifecycleOwner(), artists -> {
if (artists == null) {
if (bind != null) bind.downloadDownloadedArtistPlaceholder.placeholder.setVisibility(View.VISIBLE);
if (bind != null) bind.downloadDownloadedArtistSector.setVisibility(View.GONE);
@ -203,7 +203,7 @@ public class DownloadFragment extends Fragment {
downloadedAlbumAdapter = new AlbumHorizontalAdapter(requireContext(), true);
bind.downloadedAlbumRecyclerView.setAdapter(downloadedAlbumAdapter);
downloadViewModel.getDownloadedAlbums(requireActivity(), 20).observe(getViewLifecycleOwner(), albums -> {
downloadViewModel.getDownloadedAlbums(getViewLifecycleOwner(), 20).observe(getViewLifecycleOwner(), albums -> {
if (albums == null) {
if (bind != null) bind.downloadDownloadedAlbumPlaceholder.placeholder.setVisibility(View.VISIBLE);
if (bind != null) bind.downloadDownloadedAlbumSector.setVisibility(View.GONE);
@ -235,7 +235,7 @@ public class DownloadFragment extends Fragment {
downloadedTrackAdapter = new SongHorizontalAdapter(activity, requireContext(), true);
bind.downloadedTracksRecyclerView.setAdapter(downloadedTrackAdapter);
downloadViewModel.getDownloadedTracks(requireActivity(), 20).observe(getViewLifecycleOwner(), songs -> {
downloadViewModel.getDownloadedTracks(getViewLifecycleOwner(), 20).observe(getViewLifecycleOwner(), songs -> {
if (songs == null) {
if (bind != null) bind.downloadDownloadedTracksPlaceholder.placeholder.setVisibility(View.VISIBLE);
if (bind != null) bind.downloadDownloadedTracksSector.setVisibility(View.GONE);
@ -268,7 +268,7 @@ public class DownloadFragment extends Fragment {
playlistHorizontalAdapter = new PlaylistHorizontalAdapter(activity, requireContext());
bind.downloadedPlaylistRecyclerView.setAdapter(playlistHorizontalAdapter);
downloadViewModel.getDownloadedPlaylists(requireActivity(), 5).observe(getViewLifecycleOwner(), playlists -> {
downloadViewModel.getDownloadedPlaylists(getViewLifecycleOwner(), 5).observe(getViewLifecycleOwner(), playlists -> {
if (playlists == null) {
if (bind != null) bind.downloadDownloadedPlaylistPlaceholder.placeholder.setVisibility(View.VISIBLE);
if (bind != null) bind.downloadDownloadedPlaylistSector.setVisibility(View.GONE);
@ -282,7 +282,7 @@ public class DownloadFragment extends Fragment {
}
private void initPlaceholder() {
downloadViewModel.getDownloadedTracks(requireActivity(), 20).observe(getViewLifecycleOwner(), songs -> {
downloadViewModel.getDownloadedTracks(getViewLifecycleOwner(), 20).observe(getViewLifecycleOwner(), songs -> {
if ((songs != null && !songs.isEmpty())) {
if (bind != null) bind.emptyDownloadLayout.setVisibility(View.GONE);
if (bind != null) bind.fragmentDownloadNestedScrollView.setVisibility(View.VISIBLE);

View file

@ -164,17 +164,17 @@ public class HomeFragment extends Fragment {
private void init() {
bind.musicDiscoveryTextViewRefreshable.setOnLongClickListener(v -> {
homeViewModel.refreshDiscoverySongSample(requireActivity());
homeViewModel.refreshDiscoverySongSample(getViewLifecycleOwner());
return true;
});
bind.similarTracksTextViewRefreshable.setOnLongClickListener(v -> {
homeViewModel.refreshSimilarSongSample(requireActivity());
homeViewModel.refreshSimilarSongSample(getViewLifecycleOwner());
return true;
});
bind.recentlyRadioArtistTextViewRefreshable.setOnLongClickListener(v -> {
homeViewModel.refreshRadioArtistSample(requireActivity());
homeViewModel.refreshRadioArtistSample(getViewLifecycleOwner());
return true;
});
@ -215,32 +215,32 @@ public class HomeFragment extends Fragment {
});
bind.starredTracksTextViewRefreshable.setOnLongClickListener(v -> {
homeViewModel.refreshStarredTracks(requireActivity());
homeViewModel.refreshStarredTracks(getViewLifecycleOwner());
return true;
});
bind.starredAlbumsTextViewRefreshable.setOnLongClickListener(v -> {
homeViewModel.refreshStarredAlbums(requireActivity());
homeViewModel.refreshStarredAlbums(getViewLifecycleOwner());
return true;
});
bind.starredArtistsTextViewRefreshable.setOnLongClickListener(v -> {
homeViewModel.refreshStarredArtists(requireActivity());
homeViewModel.refreshStarredArtists(getViewLifecycleOwner());
return true;
});
bind.recentlyPlayedAlbumsTextViewRefreshable.setOnLongClickListener(v -> {
homeViewModel.refreshRecentlyPlayedAlbumList(requireActivity());
homeViewModel.refreshRecentlyPlayedAlbumList(getViewLifecycleOwner());
return true;
});
bind.mostPlayedAlbumsTextViewRefreshable.setOnLongClickListener(v -> {
homeViewModel.refreshMostPlayedAlbums(requireActivity());
homeViewModel.refreshMostPlayedAlbums(getViewLifecycleOwner());
return true;
});
bind.recentlyAddedAlbumsTextViewRefreshable.setOnLongClickListener(v -> {
homeViewModel.refreshMostRecentlyAddedAlbums(requireActivity());
homeViewModel.refreshMostRecentlyAddedAlbums(getViewLifecycleOwner());
return true;
});
}
@ -320,7 +320,7 @@ public class HomeFragment extends Fragment {
starredSongAdapter = new SongHorizontalAdapter(activity, requireContext(), true);
bind.starredTracksRecyclerView.setAdapter(starredSongAdapter);
homeViewModel.getStarredTracks(requireActivity()).observe(getViewLifecycleOwner(), songs -> {
homeViewModel.getStarredTracks(getViewLifecycleOwner()).observe(getViewLifecycleOwner(), songs -> {
if (songs == null) {
if (bind != null) bind.starredTracksPlaceholder.placeholder.setVisibility(View.VISIBLE);
if (bind != null) bind.starredTracksSector.setVisibility(View.GONE);
@ -352,7 +352,7 @@ public class HomeFragment extends Fragment {
starredAlbumAdapter = new AlbumHorizontalAdapter(requireContext(), false);
bind.starredAlbumsRecyclerView.setAdapter(starredAlbumAdapter);
homeViewModel.getStarredAlbums(requireActivity()).observe(getViewLifecycleOwner(), albums -> {
homeViewModel.getStarredAlbums(getViewLifecycleOwner()).observe(getViewLifecycleOwner(), albums -> {
if (albums == null) {
if (bind != null) bind.starredAlbumsPlaceholder.placeholder.setVisibility(View.VISIBLE);
if (bind != null) bind.starredAlbumsSector.setVisibility(View.GONE);
@ -384,7 +384,7 @@ public class HomeFragment extends Fragment {
starredArtistAdapter = new ArtistHorizontalAdapter(requireContext(), false);
bind.starredArtistsRecyclerView.setAdapter(starredArtistAdapter);
homeViewModel.getStarredArtists(requireActivity()).observe(getViewLifecycleOwner(), artists -> {
homeViewModel.getStarredArtists(getViewLifecycleOwner()).observe(getViewLifecycleOwner(), artists -> {
if (artists == null) {
if (bind != null) bind.starredArtistsPlaceholder.placeholder.setVisibility(View.VISIBLE);
if (bind != null) bind.starredArtistsSector.setVisibility(View.GONE);
@ -416,7 +416,7 @@ public class HomeFragment extends Fragment {
newReleasesAlbumAdapter = new AlbumHorizontalAdapter(requireContext(), false);
bind.newReleasesRecyclerView.setAdapter(newReleasesAlbumAdapter);
homeViewModel.getRecentlyReleasedAlbums(requireActivity()).observe(getViewLifecycleOwner(), albums -> {
homeViewModel.getRecentlyReleasedAlbums(getViewLifecycleOwner()).observe(getViewLifecycleOwner(), albums -> {
if (albums == null) {
if (bind != null) bind.homeNewReleasesPlaceholder.placeholder.setVisibility(View.VISIBLE);
if (bind != null) bind.homeNewReleasesSector.setVisibility(View.GONE);
@ -455,7 +455,7 @@ public class HomeFragment extends Fragment {
activity.navController.navigate(R.id.action_homeFragment_to_songListPageFragment, bundle);
});
bind.yearsRecyclerView.setAdapter(yearAdapter);
homeViewModel.getYearList(requireActivity()).observe(getViewLifecycleOwner(), years -> {
homeViewModel.getYearList(getViewLifecycleOwner()).observe(getViewLifecycleOwner(), years -> {
if (years == null) {
if (bind != null) bind.homeFlashbackPlaceholder.placeholder.setVisibility(View.VISIBLE);
if (bind != null) bind.homeFlashbackSector.setVisibility(View.GONE);
@ -477,7 +477,7 @@ public class HomeFragment extends Fragment {
mostPlayedAlbumAdapter = new AlbumAdapter(requireContext());
bind.mostPlayedAlbumsRecyclerView.setAdapter(mostPlayedAlbumAdapter);
homeViewModel.getMostPlayedAlbums(requireActivity()).observe(getViewLifecycleOwner(), albums -> {
homeViewModel.getMostPlayedAlbums(getViewLifecycleOwner()).observe(getViewLifecycleOwner(), albums -> {
if (albums == null) {
if (bind != null) bind.homeMostPlayedAlbumsPlaceholder.placeholder.setVisibility(View.VISIBLE);
if (bind != null) bind.homeMostPlayedAlbumsSector.setVisibility(View.GONE);
@ -500,7 +500,7 @@ public class HomeFragment extends Fragment {
recentlyPlayedAlbumAdapter = new AlbumAdapter(requireContext());
bind.recentlyPlayedAlbumsRecyclerView.setAdapter(recentlyPlayedAlbumAdapter);
homeViewModel.getRecentlyPlayedAlbumList(requireActivity()).observe(getViewLifecycleOwner(), albums -> {
homeViewModel.getRecentlyPlayedAlbumList(getViewLifecycleOwner()).observe(getViewLifecycleOwner(), albums -> {
if (albums == null) {
if (bind != null) bind.homeRecentlyPlayedAlbumsPlaceholder.placeholder.setVisibility(View.VISIBLE);
if (bind != null) bind.homeRecentlyPlayedAlbumsSector.setVisibility(View.GONE);
@ -522,7 +522,7 @@ public class HomeFragment extends Fragment {
recentlyAddedAlbumAdapter = new AlbumAdapter(requireContext());
bind.recentlyAddedAlbumsRecyclerView.setAdapter(recentlyAddedAlbumAdapter);
homeViewModel.getMostRecentlyAddedAlbums(requireActivity()).observe(getViewLifecycleOwner(), albums -> {
homeViewModel.getMostRecentlyAddedAlbums(getViewLifecycleOwner()).observe(getViewLifecycleOwner(), albums -> {
if (albums == null) {
if (bind != null) bind.homeRecentlyAddedAlbumsPlaceholder.placeholder.setVisibility(View.VISIBLE);
if (bind != null) bind.homeRecentlyAddedAlbumsSector.setVisibility(View.GONE);
@ -539,7 +539,7 @@ public class HomeFragment extends Fragment {
}
public void initPinnedPlaylistsView() {
homeViewModel.getPinnedPlaylistList(requireActivity(), 5, true).observe(getViewLifecycleOwner(), playlists -> {
homeViewModel.getPinnedPlaylistList(getViewLifecycleOwner(), 5, true).observe(getViewLifecycleOwner(), playlists -> {
if (bind != null && playlists != null) {
for (Playlist playlist : playlists) {
int playlistViewHashCode = playlist.getId().hashCode();
@ -602,7 +602,7 @@ public class HomeFragment extends Fragment {
podcastEpisodeAdapter = new PodcastEpisodeAdapter(activity, requireContext());
bind.newestPodcastsViewPager.setAdapter(podcastEpisodeAdapter);
bind.newestPodcastsViewPager.setOffscreenPageLimit(1);
homeViewModel.getNewestPodcastEpisodes(requireActivity()).observe(getViewLifecycleOwner(), podcastEpisodes -> {
homeViewModel.getNewestPodcastEpisodes(getViewLifecycleOwner()).observe(getViewLifecycleOwner(), podcastEpisodes -> {
if (podcastEpisodes == null) {
if (bind != null) bind.homeNewestPodcastsSector.setVisibility(View.GONE);
} else {

View file

@ -117,19 +117,19 @@ public class LibraryFragment extends Fragment {
});
bind.albumCatalogueSampleTextViewRefreshable.setOnLongClickListener(view -> {
libraryViewModel.refreshAlbumSample(requireActivity());
libraryViewModel.refreshAlbumSample(getViewLifecycleOwner());
return true;
});
bind.artistCatalogueSampleTextViewRefreshable.setOnLongClickListener(view -> {
libraryViewModel.refreshArtistSample(requireActivity());
libraryViewModel.refreshArtistSample(getViewLifecycleOwner());
return true;
});
bind.genreCatalogueSampleTextViewRefreshable.setOnLongClickListener(view -> {
libraryViewModel.refreshGenreSample(requireActivity());
libraryViewModel.refreshGenreSample(getViewLifecycleOwner());
return true;
});
bind.playlistCatalogueSampleTextViewRefreshable.setOnLongClickListener(view -> {
libraryViewModel.refreshPlaylistSample(requireActivity());
libraryViewModel.refreshPlaylistSample(getViewLifecycleOwner());
return true;
});
}

View file

@ -148,9 +148,9 @@ public class PlayerBottomSheetFragment extends Fragment {
@SuppressLint("UnsafeOptInUsageError")
private void setMetadata(MediaMetadata mediaMetadata) {
if (mediaMetadata.extras != null)
playerBottomSheetViewModel.setLiveMedia(requireActivity(), mediaMetadata.extras.getString("mediaType"), mediaMetadata.extras.getString("id"));
playerBottomSheetViewModel.setLiveMedia(getViewLifecycleOwner(), mediaMetadata.extras.getString("mediaType"), mediaMetadata.extras.getString("id"));
if (mediaMetadata.extras != null)
playerBottomSheetViewModel.setLiveArtist(requireActivity(), mediaMetadata.extras.getString("mediaType"), mediaMetadata.extras.getString("artistId"));
playerBottomSheetViewModel.setLiveArtist(getViewLifecycleOwner(), mediaMetadata.extras.getString("mediaType"), mediaMetadata.extras.getString("artistId"));
bind.playerHeaderLayout.playerHeaderMediaTitleLabel.setText(MusicUtil.getReadableString(String.valueOf(mediaMetadata.title)));
bind.playerHeaderLayout.playerHeaderMediaArtistLabel.setText(MusicUtil.getReadableString(String.valueOf(mediaMetadata.artist)));

View file

@ -108,8 +108,8 @@ public class PlaylistCatalogueFragment extends Fragment {
bind.playlistCatalogueRecyclerView.setAdapter(playlistHorizontalAdapter);
if (getActivity() != null) {
playlistCatalogueViewModel.getPlaylistList(requireActivity()).observe(getViewLifecycleOwner(), playlists ->
playlistCatalogueViewModel.getPinnedPlaylistList(requireActivity()).observe(getViewLifecycleOwner(),
playlistCatalogueViewModel.getPlaylistList(getViewLifecycleOwner()).observe(getViewLifecycleOwner(), playlists ->
playlistCatalogueViewModel.getPinnedPlaylistList(getViewLifecycleOwner()).observe(getViewLifecycleOwner(),
pinnedPlaylists -> {
List<Playlist> sortedList = new ArrayList<>();
List<Playlist> unsortedList = new ArrayList<>(playlists);

View file

@ -104,7 +104,7 @@ public class PlaylistPageFragment extends Fragment {
@Override
public boolean onOptionsItemSelected(@NonNull MenuItem item) {
if (item.getItemId() == R.id.action_download_playlist) {
playlistPageViewModel.getPlaylistSongLiveList(requireActivity()).observe(getViewLifecycleOwner(), songs -> {
playlistPageViewModel.getPlaylistSongLiveList(getViewLifecycleOwner()).observe(getViewLifecycleOwner(), songs -> {
if (isVisible() && getActivity() != null) {
DownloadUtil.getDownloadTracker(requireContext()).download(
MappingUtil.mapMediaItems(requireContext(), songs, false),
@ -130,7 +130,7 @@ public class PlaylistPageFragment extends Fragment {
}
private void initMenuOption(Menu menu) {
playlistPageViewModel.isPinned(requireActivity()).observe(getViewLifecycleOwner(), isPinned -> {
playlistPageViewModel.isPinned(getViewLifecycleOwner()).observe(getViewLifecycleOwner(), isPinned -> {
menu.findItem(R.id.action_unpin_playlist).setVisible(isPinned);
menu.findItem(R.id.action_pin_playlist).setVisible(!isPinned);
});
@ -161,7 +161,7 @@ public class PlaylistPageFragment extends Fragment {
}
private void initMusicButton() {
playlistPageViewModel.getPlaylistSongLiveList(requireActivity()).observe(getViewLifecycleOwner(), songs -> {
playlistPageViewModel.getPlaylistSongLiveList(getViewLifecycleOwner()).observe(getViewLifecycleOwner(), songs -> {
if (bind != null) {
bind.playlistPagePlayButton.setOnClickListener(v -> {
MediaManager.startQueue(mediaBrowserListenableFuture, requireContext(), songs, 0);
@ -178,7 +178,7 @@ public class PlaylistPageFragment extends Fragment {
}
private void initBackCover() {
playlistPageViewModel.getPlaylistSongLiveList(requireActivity()).observe(getViewLifecycleOwner(), songs -> {
playlistPageViewModel.getPlaylistSongLiveList(getViewLifecycleOwner()).observe(getViewLifecycleOwner(), songs -> {
if (bind != null) {
Collections.shuffle(songs);
@ -220,7 +220,7 @@ public class PlaylistPageFragment extends Fragment {
songHorizontalAdapter = new SongHorizontalAdapter(activity, requireContext(), true);
bind.songRecyclerView.setAdapter(songHorizontalAdapter);
playlistPageViewModel.getPlaylistSongLiveList(requireActivity()).observe(getViewLifecycleOwner(), songs -> songHorizontalAdapter.setItems(songs));
playlistPageViewModel.getPlaylistSongLiveList(getViewLifecycleOwner()).observe(getViewLifecycleOwner(), songs -> songHorizontalAdapter.setItems(songs));
}
@SuppressLint("UnsafeOptInUsageError")

View file

@ -148,7 +148,7 @@ public class SongListPageFragment extends Fragment {
}
private void initButtons() {
songListPageViewModel.getSongList(requireActivity()).observe(getViewLifecycleOwner(), songs -> {
songListPageViewModel.getSongList(getViewLifecycleOwner()).observe(getViewLifecycleOwner(), songs -> {
if (bind != null) {
bind.songListShuffleImageView.setOnClickListener(v -> {
Collections.shuffle(songs);
@ -165,7 +165,7 @@ public class SongListPageFragment extends Fragment {
songHorizontalAdapter = new SongHorizontalAdapter(activity, requireContext(), true);
bind.songListRecyclerView.setAdapter(songHorizontalAdapter);
songListPageViewModel.getSongList(requireActivity()).observe(getViewLifecycleOwner(), songs -> songHorizontalAdapter.setItems(songs));
songListPageViewModel.getSongList(getViewLifecycleOwner()).observe(getViewLifecycleOwner(), songs -> songHorizontalAdapter.setItems(songs));
}
@SuppressLint("UnsafeOptInUsageError")

View file

@ -177,7 +177,7 @@ public class AlbumBottomSheetDialog extends BottomSheetDialogFragment implements
});
TextView goToArtist = view.findViewById(R.id.go_to_artist_text_view);
goToArtist.setOnClickListener(v -> albumBottomSheetViewModel.getArtist().observe(requireActivity(), artist -> {
goToArtist.setOnClickListener(v -> albumBottomSheetViewModel.getArtist().observe(getViewLifecycleOwner(), artist -> {
if (artist != null) {
Bundle bundle = new Bundle();
bundle.putParcelable("artist_object", artist);

View file

@ -119,7 +119,7 @@ public class ArtistBottomSheetDialog extends BottomSheetDialogFragment implement
TextView playRandom = view.findViewById(R.id.play_random_text_view);
playRandom.setOnClickListener(v -> {
ArtistRepository artistRepository = new ArtistRepository(App.getInstance());
artistRepository.getArtistRandomSong(requireActivity(), artist, 20).observe(getViewLifecycleOwner(), songs -> {
artistRepository.getArtistRandomSong(getViewLifecycleOwner(), artist, 20).observe(getViewLifecycleOwner(), songs -> {
if (songs.size() > 0) {
MediaManager.startQueue(mediaBrowserListenableFuture, requireContext(), songs, 0);
((MainActivity) requireActivity()).setBottomSheetInPeek(true);