Skip to content

Commit

Permalink
Improve layout for missing chapter images (#7164)
Browse files Browse the repository at this point in the history
If only some chapters have images the other chapters don't display
anything but reserve space for the image.

Now those chapters display the image of the episode. If no chapters have
images no images will be displayed (just like before).
  • Loading branch information
flofriday committed May 6, 2024
1 parent 6f572fa commit 2827f41
Showing 1 changed file with 18 additions and 5 deletions.
Expand Up @@ -19,6 +19,7 @@
import de.danoeh.antennapod.model.feed.Chapter;
import de.danoeh.antennapod.ui.common.Converter;
import de.danoeh.antennapod.model.feed.EmbeddedChapterImage;
import de.danoeh.antennapod.ui.common.ImagePlaceholder;
import de.danoeh.antennapod.ui.common.IntentUtils;
import de.danoeh.antennapod.model.playback.Playable;
import de.danoeh.antennapod.ui.common.CircularProgressBar;
Expand Down Expand Up @@ -99,15 +100,27 @@ public void onBindViewHolder(@NonNull ChapterHolder holder, int position) {

if (hasImages) {
holder.image.setVisibility(View.VISIBLE);

float radius = 4 * context.getResources().getDisplayMetrics().density;
RequestOptions options = new RequestOptions()
.placeholder(ImagePlaceholder.getDrawable(context, radius))
.dontAnimate()
.transform(new FitCenter(), new RoundedCorners((int) radius));

if (TextUtils.isEmpty(sc.getImageUrl())) {
Glide.with(context).clear(holder.image);
if (media.getImageLocation() == null) {
Glide.with(context).clear(holder.image);
holder.image.setVisibility(View.GONE);
} else {
Glide.with(context)
.load(media.getImageLocation())
.apply(options)
.into(holder.image);
}
} else {
Glide.with(context)
.load(EmbeddedChapterImage.getModelFor(media, position))
.apply(new RequestOptions()
.dontAnimate()
.transform(new FitCenter(), new RoundedCorners((int)
(4 * context.getResources().getDisplayMetrics().density))))
.apply(options)
.into(holder.image);
}
} else {
Expand Down

0 comments on commit 2827f41

Please sign in to comment.