diff --git a/app/src/main/java/com/cappielloantonio/tempo/ui/fragment/bottomsheetdialog/AlbumBottomSheetDialog.java b/app/src/main/java/com/cappielloantonio/tempo/ui/fragment/bottomsheetdialog/AlbumBottomSheetDialog.java index 818c8f1a..2b914eb2 100644 --- a/app/src/main/java/com/cappielloantonio/tempo/ui/fragment/bottomsheetdialog/AlbumBottomSheetDialog.java +++ b/app/src/main/java/com/cappielloantonio/tempo/ui/fragment/bottomsheetdialog/AlbumBottomSheetDialog.java @@ -147,8 +147,6 @@ public class AlbumBottomSheetDialog extends BottomSheetDialogFragment implements })); TextView downloadAll = view.findViewById(R.id.download_all_text_view); - TextView removeAll = view.findViewById(R.id.remove_all_text_view); - albumBottomSheetViewModel.getAlbumTracks().observe(getViewLifecycleOwner(), songs -> { List mediaItems = MappingUtil.mapDownloads(songs); List downloads = songs.stream().map(Download::new).collect(Collectors.toList()); @@ -157,17 +155,21 @@ public class AlbumBottomSheetDialog extends BottomSheetDialogFragment implements DownloadUtil.getDownloadTracker(requireContext()).download(mediaItems, downloads); dismissBottomSheet(); }); - - if (DownloadUtil.getDownloadTracker(requireContext()).areDownloaded(mediaItems)) { - removeAll.setOnClickListener(v -> { - DownloadUtil.getDownloadTracker(requireContext()).remove(mediaItems, downloads); - dismissBottomSheet(); - }); - } else { - removeAll.setVisibility(View.GONE); - } }); + TextView removeAll = view.findViewById(R.id.remove_all_text_view); + albumBottomSheetViewModel.getAlbumTracks().observe(getViewLifecycleOwner(), songs -> { + List mediaItems = MappingUtil.mapDownloads(songs); + List downloads = songs.stream().map(Download::new).collect(Collectors.toList()); + + removeAll.setOnClickListener(v -> { + DownloadUtil.getDownloadTracker(requireContext()).remove(mediaItems, downloads); + dismissBottomSheet(); + }); + }); + + initDownloadUI(removeAll); + TextView goToArtist = view.findViewById(R.id.go_to_artist_text_view); goToArtist.setOnClickListener(v -> albumBottomSheetViewModel.getArtist().observe(getViewLifecycleOwner(), artist -> { if (artist != null) { @@ -191,6 +193,16 @@ public class AlbumBottomSheetDialog extends BottomSheetDialogFragment implements dismiss(); } + private void initDownloadUI(TextView removeAll) { + albumBottomSheetViewModel.getAlbumTracks().observe(getViewLifecycleOwner(), songs -> { + List mediaItems = MappingUtil.mapDownloads(songs); + + if (DownloadUtil.getDownloadTracker(requireContext()).areDownloaded(mediaItems)) { + removeAll.setVisibility(View.VISIBLE); + } + }); + } + private void initializeMediaBrowser() { mediaBrowserListenableFuture = new MediaBrowser.Builder(requireContext(), new SessionToken(requireContext(), new ComponentName(requireContext(), MediaService.class))).buildAsync(); } diff --git a/app/src/main/res/layout/bottom_sheet_album_dialog.xml b/app/src/main/res/layout/bottom_sheet_album_dialog.xml index 70000085..5d4cb050 100644 --- a/app/src/main/res/layout/bottom_sheet_album_dialog.xml +++ b/app/src/main/res/layout/bottom_sheet_album_dialog.xml @@ -157,6 +157,7 @@ android:paddingTop="12dp" android:paddingEnd="20dp" android:paddingBottom="12dp" + android:visibility="gone" android:text="@string/album_bottom_sheet_remove_all" />