summaryrefslogtreecommitdiff
path: root/core/src/main/java
diff options
context:
space:
mode:
authorByteHamster <info@bytehamster.com>2021-03-07 10:48:54 +0100
committerByteHamster <info@bytehamster.com>2021-03-07 11:11:31 +0100
commitdb7012953726d5b3dc8c1f2b4b4e6a6207026fbf (patch)
treec17f17e43f9cde4a9ade57ed29ba3774e57ddf41 /core/src/main/java
parentf6e3843813cfa519ff8c96c5e11b12ea885794d2 (diff)
downloadAntennaPod-db7012953726d5b3dc8c1f2b4b4e6a6207026fbf.zip
Stop playback of deleted podcast even if it is just streaming
Diffstat (limited to 'core/src/main/java')
-rw-r--r--core/src/main/java/de/danoeh/antennapod/core/storage/DBWriter.java15
1 files changed, 11 insertions, 4 deletions
diff --git a/core/src/main/java/de/danoeh/antennapod/core/storage/DBWriter.java b/core/src/main/java/de/danoeh/antennapod/core/storage/DBWriter.java
index a86bdaa65..827e30394 100644
--- a/core/src/main/java/de/danoeh/antennapod/core/storage/DBWriter.java
+++ b/core/src/main/java/de/danoeh/antennapod/core/storage/DBWriter.java
@@ -196,10 +196,17 @@ public class DBWriter {
if (queue.remove(item)) {
removedFromQueue.add(item);
}
- if (item.getMedia() != null && item.getMedia().isDownloaded()) {
- deleteFeedMediaSynchronous(context, item.getMedia());
- } else if (item.getMedia() != null && requester.isDownloadingFile(item.getMedia())) {
- requester.cancelDownload(context, item.getMedia());
+ if (item.getMedia() != null) {
+ if (item.getMedia().getId() == PlaybackPreferences.getCurrentlyPlayingFeedMediaId()) {
+ // Applies to both downloaded and streamed media
+ PlaybackPreferences.writeNoMediaPlaying();
+ IntentUtils.sendLocalBroadcast(context, PlaybackService.ACTION_SHUTDOWN_PLAYBACK_SERVICE);
+ }
+ if (item.getMedia().isDownloaded()) {
+ deleteFeedMediaSynchronous(context, item.getMedia());
+ } else if (requester.isDownloadingFile(item.getMedia())) {
+ requester.cancelDownload(context, item.getMedia());
+ }
}
}