Centralization in CustomGlideRequest of the corner rounding setting for images

This commit is contained in:
antonio 2023-03-16 19:47:39 +01:00
parent afa5375675
commit 1ac6ab3e3c
32 changed files with 99 additions and 106 deletions

View file

@ -9,6 +9,9 @@ import com.bumptech.glide.Glide;
import com.bumptech.glide.RequestBuilder;
import com.bumptech.glide.RequestManager;
import com.bumptech.glide.load.engine.DiskCacheStrategy;
import com.bumptech.glide.load.resource.bitmap.CenterCrop;
import com.bumptech.glide.load.resource.bitmap.RoundedCorners;
import com.bumptech.glide.load.resource.drawable.DrawableTransitionOptions;
import com.bumptech.glide.request.RequestOptions;
import com.bumptech.glide.signature.ObjectKey;
import com.cappielloantonio.play.App;
@ -20,7 +23,8 @@ import java.util.Map;
public class CustomGlideRequest {
private static final String TAG = "CustomGlideRequest";
public static final int CORNER_RADIUS = 12;
public static final int CORNER_RADIUS = Preferences.isCornerRoundingEnabled() ? Preferences.getRoundedCornerSize() : 1;
//public static final int CORNER_RADIUS = 12;
public static final DiskCacheStrategy DEFAULT_DISK_CACHE_STRATEGY = DiskCacheStrategy.ALL;
@ -31,7 +35,7 @@ public class CustomGlideRequest {
.error(new ColorDrawable(SurfaceColors.SURFACE_5.getColor(context)))
.diskCacheStrategy(DEFAULT_DISK_CACHE_STRATEGY)
.signature(new ObjectKey(item != null ? item : 0))
.centerCrop();
.transform(new CenterCrop(), new RoundedCorners(CustomGlideRequest.CORNER_RADIUS));
}
public static String createUrl(String item, int size) {
@ -83,7 +87,9 @@ public class CustomGlideRequest {
}
public RequestBuilder<Drawable> build() {
return requestManager.load(item);
return requestManager
.load(item)
.transition(DrawableTransitionOptions.withCrossFade());
}
}
}

View file

@ -47,8 +47,6 @@ public class AlbumAdapter extends RecyclerView.Adapter<AlbumAdapter.ViewHolder>
CustomGlideRequest.Builder
.from(holder.itemView.getContext(), album.getCoverArtId())
.build()
.transition(DrawableTransitionOptions.withCrossFade())
.transform(new CenterCrop(), new RoundedCorners(CustomGlideRequest.CORNER_RADIUS))
.into(holder.item.albumCoverImageView);
}

View file

@ -47,8 +47,6 @@ public class AlbumArtistPageOrSimilarAdapter extends RecyclerView.Adapter<AlbumA
CustomGlideRequest.Builder
.from(holder.itemView.getContext(), album.getCoverArtId())
.build()
.transition(DrawableTransitionOptions.withCrossFade())
.transform(new CenterCrop(), new RoundedCorners(CustomGlideRequest.CORNER_RADIUS))
.into(holder.item.artistPageAlbumCoverImageView);
}

View file

@ -82,8 +82,6 @@ public class AlbumCatalogueAdapter extends RecyclerView.Adapter<AlbumCatalogueAd
CustomGlideRequest.Builder
.from(holder.itemView.getContext(), album.getCoverArtId())
.build()
.transition(DrawableTransitionOptions.withCrossFade())
.transform(new CenterCrop(), new RoundedCorners(CustomGlideRequest.CORNER_RADIUS))
.into(holder.item.albumCatalogueCoverImageView);
}

View file

@ -49,8 +49,6 @@ public class AlbumHorizontalAdapter extends RecyclerView.Adapter<AlbumHorizontal
CustomGlideRequest.Builder
.from(holder.itemView.getContext(), album.getCoverArtId())
.build()
.transition(DrawableTransitionOptions.withCrossFade())
.transform(new CenterCrop(), new RoundedCorners(CustomGlideRequest.CORNER_RADIUS))
.into(holder.item.albumCoverImageView);
}

View file

@ -52,8 +52,6 @@ public class ArtistAdapter extends RecyclerView.Adapter<ArtistAdapter.ViewHolder
CustomGlideRequest.Builder
.from(holder.itemView.getContext(), artist.getCoverArtId())
.build()
.transition(DrawableTransitionOptions.withCrossFade())
.transform(new CenterCrop(), new RoundedCorners(CustomGlideRequest.CORNER_RADIUS))
.into(holder.item.artistCoverImageView);
}

View file

@ -82,8 +82,6 @@ public class ArtistCatalogueAdapter extends RecyclerView.Adapter<ArtistCatalogue
CustomGlideRequest.Builder
.from(holder.itemView.getContext(), artist.getCoverArtId())
.build()
.transition(DrawableTransitionOptions.withCrossFade())
.transform(new CenterCrop(), new RoundedCorners(CustomGlideRequest.CORNER_RADIUS))
.into(holder.item.artistCatalogueCoverImageView);
}

View file

@ -53,8 +53,6 @@ public class ArtistHorizontalAdapter extends RecyclerView.Adapter<ArtistHorizont
CustomGlideRequest.Builder
.from(holder.itemView.getContext(), artist.getCoverArtId())
.build()
.transition(DrawableTransitionOptions.withCrossFade())
.transform(new CenterCrop(), new RoundedCorners(CustomGlideRequest.CORNER_RADIUS))
.into(holder.item.artistCoverImageView);
}

View file

@ -46,8 +46,6 @@ public class ArtistSimilarAdapter extends RecyclerView.Adapter<ArtistSimilarAdap
CustomGlideRequest.Builder
.from(holder.itemView.getContext(), artist.getCoverArtId())
.build()
.transition(DrawableTransitionOptions.withCrossFade())
.transform(new CenterCrop(), new RoundedCorners(CustomGlideRequest.CORNER_RADIUS))
.into(holder.item.similarArtistCoverImageView);
}

View file

@ -8,6 +8,8 @@ import android.view.animation.AccelerateDecelerateInterpolator;
import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;
import com.bumptech.glide.load.resource.bitmap.CenterCrop;
import com.bumptech.glide.load.resource.bitmap.RoundedCorners;
import com.bumptech.glide.load.resource.drawable.DrawableTransitionOptions;
import com.cappielloantonio.play.databinding.ItemHomeDiscoverSongBinding;
import com.cappielloantonio.play.glide.CustomGlideRequest;
@ -46,7 +48,6 @@ public class DiscoverSongAdapter extends RecyclerView.Adapter<DiscoverSongAdapte
CustomGlideRequest.Builder
.from(holder.itemView.getContext(), song.getCoverArtId())
.build()
.transition(DrawableTransitionOptions.withCrossFade())
.into(holder.item.discoverSongCoverImageView);
}

View file

@ -44,8 +44,6 @@ public class GridTrackAdapter extends RecyclerView.Adapter<GridTrackAdapter.View
CustomGlideRequest.Builder
.from(holder.itemView.getContext(), item.getCoverArtId())
.build()
.transition(DrawableTransitionOptions.withCrossFade())
.transform(new CenterCrop(), new RoundedCorners(CustomGlideRequest.CORNER_RADIUS))
.into(holder.item.trackCoverImageView);
}

View file

@ -53,8 +53,6 @@ public class PlayerSongQueueAdapter extends RecyclerView.Adapter<PlayerSongQueue
CustomGlideRequest.Builder
.from(holder.itemView.getContext(), song.getCoverArtId())
.build()
.transition(DrawableTransitionOptions.withCrossFade())
.transform(new CenterCrop(), new RoundedCorners(CustomGlideRequest.CORNER_RADIUS))
.into(holder.item.queueSongCoverImageView);
MediaManager.getCurrentIndex(mediaBrowserListenableFuture, index -> {

View file

@ -42,8 +42,6 @@ public class PlaylistDialogSongHorizontalAdapter extends RecyclerView.Adapter<Pl
CustomGlideRequest.Builder
.from(holder.itemView.getContext(), song.getCoverArtId())
.build()
.transition(DrawableTransitionOptions.withCrossFade())
.transform(new CenterCrop(), new RoundedCorners(CustomGlideRequest.CORNER_RADIUS))
.into(holder.item.playlistDialogSongCoverImageView);
}

View file

@ -84,8 +84,6 @@ public class PlaylistHorizontalAdapter extends RecyclerView.Adapter<PlaylistHori
CustomGlideRequest.Builder
.from(holder.itemView.getContext(), playlist.getCoverArtId())
.build()
.transition(DrawableTransitionOptions.withCrossFade())
.transform(new CenterCrop(), new RoundedCorners(CustomGlideRequest.CORNER_RADIUS))
.into(holder.item.playlistCoverImageView);
}

View file

@ -52,8 +52,6 @@ public class PodcastEpisodeAdapter extends RecyclerView.Adapter<PodcastEpisodeAd
CustomGlideRequest.Builder
.from(holder.itemView.getContext(), podcastEpisode.getCoverArtId())
.build()
.transition(DrawableTransitionOptions.withCrossFade())
.transform(new CenterCrop(), new RoundedCorners(CustomGlideRequest.CORNER_RADIUS))
.into(holder.item.podcastCoverImageView);
}

View file

@ -46,8 +46,6 @@ public class SimilarTrackAdapter extends RecyclerView.Adapter<SimilarTrackAdapte
CustomGlideRequest.Builder
.from(holder.itemView.getContext(), song.getCoverArtId())
.build()
.transition(DrawableTransitionOptions.withCrossFade())
.transform(new CenterCrop(), new RoundedCorners(CustomGlideRequest.CORNER_RADIUS))
.into(holder.item.trackCoverImageView);
}

View file

@ -63,8 +63,6 @@ public class SongHorizontalAdapter extends RecyclerView.Adapter<SongHorizontalAd
if (isCoverVisible) CustomGlideRequest.Builder
.from(holder.itemView.getContext(), song.getCoverArtId())
.build()
.transition(DrawableTransitionOptions.withCrossFade())
.transform(new CenterCrop(), new RoundedCorners(CustomGlideRequest.CORNER_RADIUS))
.into(holder.item.songCoverImageView);
if (isCoverVisible) holder.item.trackNumberTextView.setVisibility(View.INVISIBLE);

View file

@ -177,8 +177,6 @@ public class AlbumPageFragment extends Fragment implements ClickCallback {
CustomGlideRequest.Builder
.from(requireContext(), albumPageViewModel.getAlbum().getCoverArtId())
.build()
.transition(DrawableTransitionOptions.withCrossFade())
.transform(new CenterCrop(), new RoundedCorners(CustomGlideRequest.CORNER_RADIUS))
.into(bind.albumCoverImageView);
}

View file

@ -122,7 +122,6 @@ public class ArtistPageFragment extends Fragment implements ClickCallback {
if (getContext() != null && bind != null) CustomGlideRequest.Builder
.from(requireContext(), artistPageViewModel.getArtist().getId())
.build()
.transition(DrawableTransitionOptions.withCrossFade())
.into(bind.artistBackdropImageView);
if (bind != null) bind.bioTextView.setText(normalizedBio);

View file

@ -160,8 +160,6 @@ public class PlayerBottomSheetFragment extends Fragment {
CustomGlideRequest.Builder
.from(requireContext(), mediaMetadata.extras.getString("coverArtId"))
.build()
.transition(DrawableTransitionOptions.withCrossFade())
.transform(new CenterCrop(), new RoundedCorners(CustomGlideRequest.CORNER_RADIUS))
.into(bind.playerHeaderLayout.playerHeaderMediaCoverImage);
}
}

View file

@ -171,7 +171,6 @@ public class PlayerCoverFragment extends Fragment {
CustomGlideRequest.Builder
.from(requireContext(), mediaMetadata.extras != null ? mediaMetadata.extras.getString("coverArtId") : null)
.build()
.transition(DrawableTransitionOptions.withCrossFade())
.into(bind.nowPlayingSongCoverImageView);
}
}

View file

@ -166,7 +166,6 @@ public class PlaylistPageFragment extends Fragment implements ClickCallback {
CustomGlideRequest.Builder
.from(requireContext(), playlistPageViewModel.getPlaylist().getCoverArtId())
.build()
.transition(DrawableTransitionOptions.withCrossFade())
.into(bind.playlistCoverImageView);
}

View file

@ -84,8 +84,6 @@ public class AlbumBottomSheetDialog extends BottomSheetDialogFragment implements
CustomGlideRequest.Builder
.from(requireContext(), albumBottomSheetViewModel.getAlbum().getCoverArtId())
.build()
.transition(DrawableTransitionOptions.withCrossFade())
.transform(new CenterCrop(), new RoundedCorners(CustomGlideRequest.CORNER_RADIUS))
.into(coverAlbum);
TextView titleAlbum = view.findViewById(R.id.album_title_text_view);

View file

@ -75,8 +75,6 @@ public class ArtistBottomSheetDialog extends BottomSheetDialogFragment implement
CustomGlideRequest.Builder
.from(requireContext(), artistBottomSheetViewModel.getArtist().getCoverArtId())
.build()
.transition(DrawableTransitionOptions.withCrossFade())
.transform(new CenterCrop(), new RoundedCorners(CustomGlideRequest.CORNER_RADIUS))
.into(coverArtist);
TextView nameArtist = view.findViewById(R.id.song_title_text_view);

View file

@ -70,8 +70,6 @@ public class PodcastBottomSheetDialog extends BottomSheetDialogFragment implemen
CustomGlideRequest.Builder
.from(requireContext(), podcastBottomSheetViewModel.getPodcast().getCoverArtId())
.build()
.transition(DrawableTransitionOptions.withCrossFade())
.transform(new CenterCrop(), new RoundedCorners(CustomGlideRequest.CORNER_RADIUS))
.into(coverPodcast);
TextView titlePodcast = view.findViewById(R.id.podcast_title_text_view);

View file

@ -79,8 +79,6 @@ public class SongBottomSheetDialog extends BottomSheetDialogFragment implements
CustomGlideRequest.Builder
.from(requireContext(), songBottomSheetViewModel.getSong().getCoverArtId())
.build()
.transition(DrawableTransitionOptions.withCrossFade())
.transform(new CenterCrop(), new RoundedCorners(CustomGlideRequest.CORNER_RADIUS))
.into(coverSong);
TextView titleSong = view.findViewById(R.id.song_title_text_view);

View file

@ -25,6 +25,8 @@ object Preferences {
private const val SYNC_STARRED_TRACKS_FOR_OFFLINE_USE = "sync_starred_tracks_for_offline_use"
private const val QUEUE_SYNCING = "queue_syncing"
private const val QUEUE_SYNCING_COUNTDOWN = "queue_syncing_countdown"
private const val ROUNDED_CORNER = "rounded_corner"
private const val ROUNDED_CORNER_SIZE = "rounded_corner_size"
@JvmStatic
fun getServer(): String? {
@ -195,4 +197,14 @@ object Preferences {
fun getSyncCountdownTimer(): Int {
return App.getInstance().preferences.getString(QUEUE_SYNCING_COUNTDOWN, "5")!!.toInt()
}
@JvmStatic
fun isCornerRoundingEnabled(): Boolean {
return App.getInstance().preferences.getBoolean(ROUNDED_CORNER, false)
}
@JvmStatic
fun getRoundedCornerSize(): Int {
return App.getInstance().preferences.getString(ROUNDED_CORNER_SIZE, "12")!!.toInt()
}
}