diff --git a/app/src/main/java/com/cappielloantonio/play/adapter/AlbumAdapter.java b/app/src/main/java/com/cappielloantonio/play/adapter/AlbumAdapter.java index 6ebd140c..ddb6fe0c 100644 --- a/app/src/main/java/com/cappielloantonio/play/adapter/AlbumAdapter.java +++ b/app/src/main/java/com/cappielloantonio/play/adapter/AlbumAdapter.java @@ -45,7 +45,7 @@ public class AlbumAdapter extends RecyclerView.Adapter holder.textArtistName.setText(album.getArtistName()); CustomGlideRequest.Builder - .from(context, album.getPrimary(), album.getBlurHash(), CustomGlideRequest.PRIMARY, CustomGlideRequest.TOP_QUALITY) + .from(context, album.getPrimary(), album.getBlurHash(), CustomGlideRequest.PRIMARY, CustomGlideRequest.TOP_QUALITY, CustomGlideRequest.ALBUM_PIC) .build() .into(holder.cover); } diff --git a/app/src/main/java/com/cappielloantonio/play/adapter/AlbumArtistPageAdapter.java b/app/src/main/java/com/cappielloantonio/play/adapter/AlbumArtistPageAdapter.java index 1c331ddb..36dce6ad 100644 --- a/app/src/main/java/com/cappielloantonio/play/adapter/AlbumArtistPageAdapter.java +++ b/app/src/main/java/com/cappielloantonio/play/adapter/AlbumArtistPageAdapter.java @@ -44,7 +44,7 @@ public class AlbumArtistPageAdapter extends RecyclerView.Adapter getLastPlay()) { + this.playCount++; + this.lastPlay = startPlayTime; + return true; + } + + return false; } @Override diff --git a/app/src/main/java/com/cappielloantonio/play/service/notification/PlayingNotification.java b/app/src/main/java/com/cappielloantonio/play/service/notification/PlayingNotification.java index cca3c94f..1f72ea6d 100644 --- a/app/src/main/java/com/cappielloantonio/play/service/notification/PlayingNotification.java +++ b/app/src/main/java/com/cappielloantonio/play/service/notification/PlayingNotification.java @@ -69,7 +69,7 @@ public class PlayingNotification { final int bigNotificationImageSize = service.getResources().getDimensionPixelSize(R.dimen.notification_big_image_size); service.runOnUiThread(() -> CustomGlideRequest.Builder - .from(service, song.getPrimary(), song.getBlurHash(), CustomGlideRequest.PRIMARY, CustomGlideRequest.TOP_QUALITY) + .from(service, song.getPrimary(), song.getBlurHash(), CustomGlideRequest.PRIMARY, CustomGlideRequest.TOP_QUALITY, CustomGlideRequest.SONG_PIC) .bitmap() .build() .into(new CustomTarget(bigNotificationImageSize, bigNotificationImageSize) { 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 da5e738d..74135d6c 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 @@ -86,7 +86,7 @@ public class AlbumPageFragment extends Fragment { private void initBackCover() { CustomGlideRequest.Builder - .from(requireContext(), albumPageViewModel.getAlbum().getPrimary(), albumPageViewModel.getAlbum().getBlurHash(), CustomGlideRequest.PRIMARY, CustomGlideRequest.TOP_QUALITY) + .from(requireContext(), albumPageViewModel.getAlbum().getPrimary(), albumPageViewModel.getAlbum().getBlurHash(), CustomGlideRequest.PRIMARY, CustomGlideRequest.TOP_QUALITY, CustomGlideRequest.ALBUM_PIC) .build() .into(bind.albumBackCoverImageView); } 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 77aa74ca..23f0eab1 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 @@ -97,7 +97,7 @@ public class ArtistPageFragment extends Fragment { private void initBackdrop() { CustomGlideRequest.Builder - .from(requireContext(), artistPageViewModel.getArtist().getBackdrop(), artistPageViewModel.getArtist().getBackdropBlurHash(), CustomGlideRequest.BACKDROP, CustomGlideRequest.TOP_QUALITY) + .from(requireContext(), artistPageViewModel.getArtist().getBackdrop(), artistPageViewModel.getArtist().getBackdropBlurHash(), CustomGlideRequest.BACKDROP, CustomGlideRequest.TOP_QUALITY, CustomGlideRequest.ARTIST_PIC) .build() .into(bind.artistBackdropImageView); } diff --git a/app/src/main/java/com/cappielloantonio/play/ui/fragment/PlayerBottomSheetFragment.java b/app/src/main/java/com/cappielloantonio/play/ui/fragment/PlayerBottomSheetFragment.java index 50c25653..c4f87f19 100644 --- a/app/src/main/java/com/cappielloantonio/play/ui/fragment/PlayerBottomSheetFragment.java +++ b/app/src/main/java/com/cappielloantonio/play/ui/fragment/PlayerBottomSheetFragment.java @@ -200,7 +200,7 @@ public class PlayerBottomSheetFragment extends Fragment implements MusicServiceE bind.playerHeaderLayout.playerHeaderSongArtistLabel.setText(song.getArtistName()); CustomGlideRequest.Builder - .from(requireContext(), song.getPrimary(), song.getBlurHash(), CustomGlideRequest.PRIMARY, CustomGlideRequest.TOP_QUALITY) + .from(requireContext(), song.getPrimary(), song.getBlurHash(), CustomGlideRequest.PRIMARY, CustomGlideRequest.TOP_QUALITY, CustomGlideRequest.SONG_PIC) .build() .into(bind.playerHeaderLayout.playerHeaderSongCoverImage); 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 4e0c535d..477cc483 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 @@ -154,6 +154,6 @@ public class SearchFragment extends Fragment { searchViewModel.searchAlbum(query).observe(requireActivity(), albums -> albumResultSearchAdapter.setItems(albums)); searchViewModel.searchArtist(query).observe(requireActivity(), artists -> artistResultSearchAdapter.setItems(artists)); - bind.searchResultNestedScrollView.setVisibility(View.VISIBLE); + bind.searchResultLayout.setVisibility(View.VISIBLE); } } 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 eecc8b70..217c2e6c 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 @@ -55,7 +55,7 @@ public class AlbumBottomSheetDialog extends BottomSheetDialogFragment implements private void init(View view) { coverAlbum = view.findViewById(R.id.album_cover_image_view); CustomGlideRequest.Builder - .from(requireContext(), albumBottomSheetViewModel.getAlbum().getPrimary(), albumBottomSheetViewModel.getAlbum().getBlurHash(), CustomGlideRequest.PRIMARY, CustomGlideRequest.TOP_QUALITY) + .from(requireContext(), albumBottomSheetViewModel.getAlbum().getPrimary(), albumBottomSheetViewModel.getAlbum().getBlurHash(), CustomGlideRequest.PRIMARY, CustomGlideRequest.TOP_QUALITY, CustomGlideRequest.ALBUM_PIC) .build() .into(coverAlbum); 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 356b0592..e988b4df 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 @@ -47,7 +47,7 @@ public class ArtistBottomSheetDialog extends BottomSheetDialogFragment implement private void init(View view) { coverArtist = view.findViewById(R.id.artist_cover_image_view); CustomGlideRequest.Builder - .from(requireContext(), artistBottomSheetViewModel.getArtist().getPrimary(), artistBottomSheetViewModel.getArtist().getPrimaryBlurHash(), CustomGlideRequest.PRIMARY, CustomGlideRequest.TOP_QUALITY) + .from(requireContext(), artistBottomSheetViewModel.getArtist().getPrimary(), artistBottomSheetViewModel.getArtist().getPrimaryBlurHash(), CustomGlideRequest.PRIMARY, CustomGlideRequest.TOP_QUALITY, CustomGlideRequest.ARTIST_PIC) .build() .into(coverArtist); 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 9b6ca9de..74b72e3e 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 @@ -58,7 +58,7 @@ public class SongBottomSheetDialog extends BottomSheetDialogFragment implements private void init(View view) { coverSong = view.findViewById(R.id.song_cover_image_view); CustomGlideRequest.Builder - .from(requireContext(), songBottomSheetViewModel.getSong().getPrimary(), songBottomSheetViewModel.getSong().getBlurHash(), CustomGlideRequest.PRIMARY, CustomGlideRequest.TOP_QUALITY) + .from(requireContext(), songBottomSheetViewModel.getSong().getPrimary(), songBottomSheetViewModel.getSong().getBlurHash(), CustomGlideRequest.PRIMARY, CustomGlideRequest.TOP_QUALITY, CustomGlideRequest.SONG_PIC) .build() .into(coverSong); 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 2ba46eca..3beb4c41 100644 --- a/app/src/main/java/com/cappielloantonio/play/util/MusicUtil.java +++ b/app/src/main/java/com/cappielloantonio/play/util/MusicUtil.java @@ -3,6 +3,8 @@ package com.cappielloantonio.play.util; import android.util.Log; import com.cappielloantonio.play.App; +import com.cappielloantonio.play.R; +import com.cappielloantonio.play.glide.CustomGlideRequest; import com.cappielloantonio.play.model.DirectPlayCodec; import com.cappielloantonio.play.model.Song; @@ -66,4 +68,22 @@ public class MusicUtil { return String.format(Locale.getDefault(), "%d:%02d:%02d", hours, minutes, seconds); } } + + public static int getDefaultPicPerCategory(String category) { + if(category.equals(CustomGlideRequest.SONG_PIC)) { + return R.drawable.default_album_art; + } + else if(category.equals(CustomGlideRequest.ALBUM_PIC)) { + return R.drawable.default_album_art; + } + else if(category.equals(CustomGlideRequest.ARTIST_PIC)) { + return R.drawable.default_album_art; + } + else if(category.equals(CustomGlideRequest.PLAYLIST_PIC)) { + return R.drawable.default_album_art; + } + else { + return R.drawable.default_album_art; + } + } } diff --git a/app/src/main/java/com/cappielloantonio/play/util/Util.java b/app/src/main/java/com/cappielloantonio/play/util/Util.java deleted file mode 100644 index eccdb43e..00000000 --- a/app/src/main/java/com/cappielloantonio/play/util/Util.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.cappielloantonio.play.util; - -import android.content.Context; - -import java.util.Locale; - -public class Util { - public static String getReadableDurationString(long songDurationMillis) { - long minutes = (songDurationMillis / 1000) / 60; - long seconds = (songDurationMillis / 1000) % 60; - - if (minutes < 60) { - return String.format(Locale.getDefault(), "%01d:%02d", minutes, seconds); - } else { - long hours = minutes / 60; - minutes = minutes % 60; - return String.format(Locale.getDefault(), "%d:%02d:%02d", hours, minutes, seconds); - } - } - - public static float dpFromPx(final Context context, final float px) { - return px / context.getResources().getDisplayMetrics().density; - } - - public static float pxFromDp(final Context context, final float dp) { - return dp * context.getResources().getDisplayMetrics().density; - } -} diff --git a/app/src/main/res/layout/fragment_search.xml b/app/src/main/res/layout/fragment_search.xml index 530ec2da..ac6c2885 100644 --- a/app/src/main/res/layout/fragment_search.xml +++ b/app/src/main/res/layout/fragment_search.xml @@ -36,78 +36,78 @@ app:suggestionTextColor="@color/suggestionTextColor" app:suggestionSelectedTextColor="@color/suggestionSelectedTextColor" /> - + android:layout_below="@id/persistentSearchView" > - - + + android:orientation="vertical"> - + + android:paddingTop="8dp" + android:paddingEnd="8dp"> - + + + + + + android:paddingTop="4dp" + android:paddingEnd="8dp" /> - - - - - + android:paddingBottom="@dimen/global_padding_bottom" + android:visibility="gone"> - - + + \ No newline at end of file