diff options
Diffstat (limited to 'app/src/main/java/de/danoeh/antennapod/view/viewholder/EpisodeItemViewHolder.java')
-rw-r--r-- | app/src/main/java/de/danoeh/antennapod/view/viewholder/EpisodeItemViewHolder.java | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/app/src/main/java/de/danoeh/antennapod/view/viewholder/EpisodeItemViewHolder.java b/app/src/main/java/de/danoeh/antennapod/view/viewholder/EpisodeItemViewHolder.java index fd3ec9299..03df844b1 100644 --- a/app/src/main/java/de/danoeh/antennapod/view/viewholder/EpisodeItemViewHolder.java +++ b/app/src/main/java/de/danoeh/antennapod/view/viewholder/EpisodeItemViewHolder.java @@ -21,8 +21,6 @@ import de.danoeh.antennapod.R; import de.danoeh.antennapod.activity.MainActivity; import de.danoeh.antennapod.adapter.CoverLoader; import de.danoeh.antennapod.adapter.actionbutton.ItemActionButton; -import de.danoeh.antennapod.net.download.serviceinterface.DownloadRequest; -import de.danoeh.antennapod.core.service.download.DownloadService; import de.danoeh.antennapod.core.util.PlaybackStatus; import de.danoeh.antennapod.core.util.download.MediaSizeLoader; import de.danoeh.antennapod.event.playback.PlaybackPositionEvent; @@ -31,6 +29,7 @@ import de.danoeh.antennapod.model.feed.FeedItem; import de.danoeh.antennapod.model.feed.FeedMedia; import de.danoeh.antennapod.model.playback.MediaType; import de.danoeh.antennapod.core.feed.util.ImageResourceUtils; +import de.danoeh.antennapod.net.download.serviceinterface.DownloadServiceInterface; import de.danoeh.antennapod.storage.preferences.UserPreferences; import de.danoeh.antennapod.core.util.Converter; import de.danoeh.antennapod.core.util.NetworkUtils; @@ -117,6 +116,7 @@ public class EpisodeItemViewHolder extends RecyclerView.ViewHolder { bind(item.getMedia()); } else { secondaryActionProgress.setPercentage(0, item); + secondaryActionProgress.setIndeterminate(false); isVideo.setVisibility(View.GONE); progressBar.setVisibility(View.GONE); duration.setVisibility(View.GONE); @@ -145,14 +145,17 @@ public class EpisodeItemViewHolder extends RecyclerView.ViewHolder { itemView.setBackgroundResource(ThemeUtils.getDrawableFromAttr(activity, R.attr.selectableItemBackground)); } - if (DownloadService.isDownloadingFile(media.getDownload_url())) { - final DownloadRequest downloadRequest = DownloadService.findRequest(media.getDownload_url()); - float percent = 0.01f * downloadRequest.getProgressPercent(); + if (DownloadServiceInterface.get().isDownloadingEpisode(media.getDownload_url())) { + float percent = 0.01f * DownloadServiceInterface.get().getProgress(media.getDownload_url()); secondaryActionProgress.setPercentage(Math.max(percent, 0.01f), item); + secondaryActionProgress.setIndeterminate( + DownloadServiceInterface.get().isEpisodeQueued(media.getDownload_url())); } else if (media.isDownloaded()) { secondaryActionProgress.setPercentage(1, item); // Do not animate 100% -> 0% + secondaryActionProgress.setIndeterminate(false); } else { secondaryActionProgress.setPercentage(0, item); // Animate X% -> 0% + secondaryActionProgress.setIndeterminate(false); } duration.setText(Converter.getDurationStringLong(media.getDuration())); @@ -210,6 +213,7 @@ public class EpisodeItemViewHolder extends RecyclerView.ViewHolder { pubDate.setText("████"); duration.setText("████"); secondaryActionProgress.setPercentage(0, null); + secondaryActionProgress.setIndeterminate(false); progressBar.setVisibility(View.GONE); position.setVisibility(View.GONE); dragHandle.setVisibility(View.GONE); |