diff options
Diffstat (limited to 'app/src/main/java/de/danoeh/antennapod/actionbutton/PlayLocalActionButton.java')
-rw-r--r-- | app/src/main/java/de/danoeh/antennapod/actionbutton/PlayLocalActionButton.java | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/app/src/main/java/de/danoeh/antennapod/actionbutton/PlayLocalActionButton.java b/app/src/main/java/de/danoeh/antennapod/actionbutton/PlayLocalActionButton.java new file mode 100644 index 000000000..62a965494 --- /dev/null +++ b/app/src/main/java/de/danoeh/antennapod/actionbutton/PlayLocalActionButton.java @@ -0,0 +1,46 @@ +package de.danoeh.antennapod.actionbutton; + +import android.content.Context; +import androidx.annotation.DrawableRes; +import androidx.annotation.StringRes; +import de.danoeh.antennapod.R; +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.playback.service.PlaybackService; +import de.danoeh.antennapod.playback.service.PlaybackServiceStarter; + +public class PlayLocalActionButton extends ItemActionButton { + + public PlayLocalActionButton(FeedItem item) { + super(item); + } + + @Override + @StringRes + public int getLabel() { + return R.string.play_label; + } + + @Override + @DrawableRes + public int getDrawable() { + return R.drawable.ic_play_24dp; + } + + @Override + public void onClick(Context context) { + final FeedMedia media = item.getMedia(); + if (media == null) { + return; + } + + new PlaybackServiceStarter(context, media) + .callEvenIfRunning(true) + .start(); + + if (media.getMediaType() == MediaType.VIDEO) { + context.startActivity(PlaybackService.getPlayerActivityIntent(context, media)); + } + } +} |