summaryrefslogtreecommitdiff
path: root/app/src
diff options
context:
space:
mode:
authorByteHamster <info@bytehamster.com>2020-04-10 21:56:44 +0200
committerByteHamster <info@bytehamster.com>2020-04-10 21:56:44 +0200
commitc24761806e87a3c1a9fe6dc5b6342034d2678408 (patch)
tree6a849988fe231b9fe2194c3eb8814ac660c68dbf /app/src
parenta35ecaa74bd9392f9e7e513522aee8e1601e78cf (diff)
downloadAntennaPod-c24761806e87a3c1a9fe6dc5b6342034d2678408.zip
Allow to stop previewed episode
Diffstat (limited to 'app/src')
-rw-r--r--app/src/main/java/de/danoeh/antennapod/adapter/FeedItemlistDescriptionAdapter.java25
1 files changed, 23 insertions, 2 deletions
diff --git a/app/src/main/java/de/danoeh/antennapod/adapter/FeedItemlistDescriptionAdapter.java b/app/src/main/java/de/danoeh/antennapod/adapter/FeedItemlistDescriptionAdapter.java
index 849bb3b64..9158d587b 100644
--- a/app/src/main/java/de/danoeh/antennapod/adapter/FeedItemlistDescriptionAdapter.java
+++ b/app/src/main/java/de/danoeh/antennapod/adapter/FeedItemlistDescriptionAdapter.java
@@ -8,6 +8,9 @@ import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.TextView;
import de.danoeh.antennapod.R;
+import de.danoeh.antennapod.core.feed.MediaType;
+import de.danoeh.antennapod.core.preferences.PlaybackPreferences;
+import de.danoeh.antennapod.core.util.IntentUtils;
import de.danoeh.antennapod.core.util.NetworkUtils;
import de.danoeh.antennapod.core.util.playback.RemoteMedia;
import de.danoeh.antennapod.core.feed.FeedItem;
@@ -67,16 +70,28 @@ public class FeedItemlistDescriptionAdapter extends ArrayAdapter<FeedItem> {
return;
}
Playable playable = new RemoteMedia(item);
+ if (PlaybackPreferences.getCurrentlyPlayingMediaType() == RemoteMedia.PLAYABLE_TYPE_REMOTE_MEDIA) {
+ PlaybackPreferences.writeNoMediaPlaying();
+ IntentUtils.sendLocalBroadcast(getContext(), PlaybackService.ACTION_SHUTDOWN_PLAYBACK_SERVICE);
+ holder.preview.setText(R.string.preview_episode);
+ return;
+ }
+
if (!NetworkUtils.isStreamingAllowed()) {
new StreamingConfirmationDialog(getContext(), playable).show();
return;
}
+
new PlaybackServiceStarter(getContext(), playable)
.shouldStream(true)
.startWhenPrepared(true)
.callEvenIfRunning(true)
.start();
- getContext().startActivity(PlaybackService.getPlayerActivityIntent(getContext(), playable));
+ holder.preview.setText(R.string.stop_playback);
+
+ if (playable.getMediaType() == MediaType.VIDEO) {
+ getContext().startActivity(PlaybackService.getPlayerActivityIntent(getContext(), playable));
+ }
});
convertView.setOnClickListener(v -> {
if (holder.description.getTag() == Boolean.TRUE) {
@@ -85,8 +100,14 @@ public class FeedItemlistDescriptionAdapter extends ArrayAdapter<FeedItem> {
holder.description.setTag(Boolean.FALSE);
} else {
holder.description.setMaxLines(2000);
- holder.preview.setVisibility(View.VISIBLE);
holder.description.setTag(Boolean.TRUE);
+
+ holder.preview.setVisibility(item.getMedia() != null ? View.VISIBLE : View.GONE);
+ if (PlaybackPreferences.getCurrentlyPlayingMediaType() == RemoteMedia.PLAYABLE_TYPE_REMOTE_MEDIA) {
+ holder.preview.setText(R.string.stop_playback);
+ } else {
+ holder.preview.setText(R.string.preview_episode);
+ }
}
});
return convertView;