From b3a78d47f945006070120c8dd12d3b5fdc2ad3be Mon Sep 17 00:00:00 2001 From: Domingos Lopes Date: Sat, 16 Apr 2016 11:29:17 -0400 Subject: [PATCH] update PlaybackServiceCallbacks to be able to handle a cast player activity --- .../antennapod/config/PlaybackServiceCallbacksImpl.java | 6 +++++- .../danoeh/antennapod/core/PlaybackServiceCallbacks.java | 3 ++- .../antennapod/core/service/playback/PlaybackService.java | 8 ++++---- 3 files changed, 11 insertions(+), 6 deletions(-) diff --git a/app/src/main/java/de/danoeh/antennapod/config/PlaybackServiceCallbacksImpl.java b/app/src/main/java/de/danoeh/antennapod/config/PlaybackServiceCallbacksImpl.java index 997befe99..007799df7 100644 --- a/app/src/main/java/de/danoeh/antennapod/config/PlaybackServiceCallbacksImpl.java +++ b/app/src/main/java/de/danoeh/antennapod/config/PlaybackServiceCallbacksImpl.java @@ -12,7 +12,11 @@ import de.danoeh.antennapod.core.feed.MediaType; public class PlaybackServiceCallbacksImpl implements PlaybackServiceCallbacks { @Override - public Intent getPlayerActivityIntent(Context context, MediaType mediaType) { + public Intent getPlayerActivityIntent(Context context, MediaType mediaType, boolean remotePlayback) { + if (remotePlayback) { + // TODO possibly switch to a proper cast activity + return new Intent(context, AudioplayerActivity.class); + } if (mediaType == MediaType.VIDEO) { return new Intent(context, VideoplayerActivity.class); } else { diff --git a/core/src/main/java/de/danoeh/antennapod/core/PlaybackServiceCallbacks.java b/core/src/main/java/de/danoeh/antennapod/core/PlaybackServiceCallbacks.java index 08ccb6d71..13a32ab8a 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/PlaybackServiceCallbacks.java +++ b/core/src/main/java/de/danoeh/antennapod/core/PlaybackServiceCallbacks.java @@ -15,9 +15,10 @@ public interface PlaybackServiceCallbacks { * type of media that is being played. * * @param mediaType The type of media that is being played. + * @param remotePlayback true if the media is played on a remote device. * @return A non-null activity intent. */ - Intent getPlayerActivityIntent(Context context, MediaType mediaType); + Intent getPlayerActivityIntent(Context context, MediaType mediaType, boolean remotePlayback); /** * Returns true if the PlaybackService should load new episodes from the queue when playback ends diff --git a/core/src/main/java/de/danoeh/antennapod/core/service/playback/PlaybackService.java b/core/src/main/java/de/danoeh/antennapod/core/service/playback/PlaybackService.java index 6ea9dadeb..00c107f67 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/service/playback/PlaybackService.java +++ b/core/src/main/java/de/danoeh/antennapod/core/service/playback/PlaybackService.java @@ -235,12 +235,12 @@ public class PlaybackService extends Service { */ public static Intent getPlayerActivityIntent(Context context) { if (isRunning) { - return ClientConfig.playbackServiceCallbacks.getPlayerActivityIntent(context, currentMediaType); + return ClientConfig.playbackServiceCallbacks.getPlayerActivityIntent(context, currentMediaType, isCasting); } else { if (PlaybackPreferences.getCurrentEpisodeIsVideo()) { - return ClientConfig.playbackServiceCallbacks.getPlayerActivityIntent(context, MediaType.VIDEO); + return ClientConfig.playbackServiceCallbacks.getPlayerActivityIntent(context, MediaType.VIDEO, isCasting); } else { - return ClientConfig.playbackServiceCallbacks.getPlayerActivityIntent(context, MediaType.AUDIO); + return ClientConfig.playbackServiceCallbacks.getPlayerActivityIntent(context, MediaType.AUDIO, isCasting); } } } @@ -251,7 +251,7 @@ public class PlaybackService extends Service { */ public static Intent getPlayerActivityIntent(Context context, Playable media) { MediaType mt = media.getMediaType(); - return ClientConfig.playbackServiceCallbacks.getPlayerActivityIntent(context, mt); + return ClientConfig.playbackServiceCallbacks.getPlayerActivityIntent(context, mt, isCasting); } @Override