summaryrefslogtreecommitdiff
path: root/core
diff options
context:
space:
mode:
authorByteHamster <info@bytehamster.com>2020-03-25 16:09:39 +0100
committerByteHamster <info@bytehamster.com>2020-03-25 16:09:45 +0100
commita989db586a853852549c638d43c425a3463f901d (patch)
treec6f2a304e726ae9fa79ca5629b407204be4b2238 /core
parent982ce61b3fd2d27f70c6b595544e7dc51f68b752 (diff)
downloadAntennaPod-a989db586a853852549c638d43c425a3463f901d.zip
Implemented missing PlaybackController state handling
Diffstat (limited to 'core')
-rw-r--r--core/src/main/java/de/danoeh/antennapod/core/service/playback/PlaybackService.java5
-rw-r--r--core/src/main/java/de/danoeh/antennapod/core/util/playback/PlaybackController.java16
-rw-r--r--core/src/play/java/de/danoeh/antennapod/core/service/playback/PlaybackServiceFlavorHelper.java4
3 files changed, 5 insertions, 20 deletions
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 9b5931770..63b6ee7e1 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
@@ -182,11 +182,6 @@ public class PlaybackService extends MediaBrowserServiceCompat {
public static final int NOTIFICATION_TYPE_SET_SPEED_ABILITY_CHANGED = 9;
/**
- * Send a message to the user (with provided String resource id)
- */
- public static final int NOTIFICATION_TYPE_SHOW_TOAST = 10;
-
- /**
* Returned by getPositionSafe() or getDurationSafe() if the playbackService
* is in an invalid state.
*/
diff --git a/core/src/main/java/de/danoeh/antennapod/core/util/playback/PlaybackController.java b/core/src/main/java/de/danoeh/antennapod/core/util/playback/PlaybackController.java
index 7d47ef6ac..7723b4a8f 100644
--- a/core/src/main/java/de/danoeh/antennapod/core/util/playback/PlaybackController.java
+++ b/core/src/main/java/de/danoeh/antennapod/core/util/playback/PlaybackController.java
@@ -21,6 +21,7 @@ import android.widget.ImageButton;
import android.widget.SeekBar;
import android.widget.TextView;
+import de.danoeh.antennapod.core.event.MessageEvent;
import de.danoeh.antennapod.core.util.ThemeUtils;
import java.util.concurrent.ScheduledThreadPoolExecutor;
@@ -333,8 +334,6 @@ public class PlaybackController {
case PlaybackService.NOTIFICATION_TYPE_SET_SPEED_ABILITY_CHANGED:
onSetSpeedAbilityChanged();
break;
- case PlaybackService.NOTIFICATION_TYPE_SHOW_TOAST:
- postStatusMsg(code, true);
}
}
@@ -411,11 +410,10 @@ public class PlaybackController {
Log.d(TAG, "status: " + status.toString());
switch (status) {
case ERROR:
- postStatusMsg(R.string.player_error_msg, false);
+ EventBus.getDefault().post(new MessageEvent(activity.getString(R.string.player_error_msg)));
handleError(MediaPlayer.MEDIA_ERROR_UNKNOWN);
break;
case PAUSED:
- clearStatusMsg();
checkMediaInfoLoaded();
onPositionObserverUpdate();
updatePlayButtonAppearance(playResource, playText);
@@ -425,7 +423,6 @@ public class PlaybackController {
}
break;
case PLAYING:
- clearStatusMsg();
checkMediaInfoLoaded();
if (!PlaybackService.isCasting() &&
PlaybackService.getCurrentMediaType() == MediaType.VIDEO) {
@@ -435,7 +432,6 @@ public class PlaybackController {
updatePlayButtonAppearance(pauseResource, pauseText);
break;
case PREPARING:
- postStatusMsg(R.string.player_preparing_msg, false);
checkMediaInfoLoaded();
if (playbackService != null) {
if (playbackService.isStartWhenPrepared()) {
@@ -446,21 +442,17 @@ public class PlaybackController {
}
break;
case STOPPED:
- postStatusMsg(R.string.player_stopped_msg, false);
break;
case PREPARED:
checkMediaInfoLoaded();
- postStatusMsg(R.string.player_ready_msg, false);
updatePlayButtonAppearance(playResource, playText);
onPositionObserverUpdate();
break;
case SEEKING:
onPositionObserverUpdate();
- postStatusMsg(R.string.player_seeking_msg, false);
break;
case INITIALIZED:
checkMediaInfoLoaded();
- clearStatusMsg();
updatePlayButtonAppearance(playResource, playText);
break;
}
@@ -482,10 +474,6 @@ public class PlaybackController {
return null;
}
- public void postStatusMsg(int msg, boolean showToast) {}
-
- public void clearStatusMsg() {}
-
public boolean loadMediaInfo() {
return false;
}
diff --git a/core/src/play/java/de/danoeh/antennapod/core/service/playback/PlaybackServiceFlavorHelper.java b/core/src/play/java/de/danoeh/antennapod/core/service/playback/PlaybackServiceFlavorHelper.java
index c32ba2385..31e955017 100644
--- a/core/src/play/java/de/danoeh/antennapod/core/service/playback/PlaybackServiceFlavorHelper.java
+++ b/core/src/play/java/de/danoeh/antennapod/core/service/playback/PlaybackServiceFlavorHelper.java
@@ -26,9 +26,11 @@ import java.util.concurrent.TimeoutException;
import de.danoeh.antennapod.core.cast.CastConsumer;
import de.danoeh.antennapod.core.cast.CastManager;
import de.danoeh.antennapod.core.cast.DefaultCastConsumer;
+import de.danoeh.antennapod.core.event.MessageEvent;
import de.danoeh.antennapod.core.feed.MediaType;
import de.danoeh.antennapod.core.preferences.UserPreferences;
import de.danoeh.antennapod.core.util.NetworkUtils;
+import org.greenrobot.eventbus.EventBus;
/**
* Class intended to work along PlaybackService and provide support for different flavors.
@@ -106,7 +108,7 @@ public class PlaybackServiceFlavorHelper {
}
switch (code) {
case RemotePSMP.CAST_ERROR:
- callback.sendNotificationBroadcast(PlaybackService.NOTIFICATION_TYPE_SHOW_TOAST, resourceId);
+ EventBus.getDefault().post(new MessageEvent(context.getString(resourceId)));
return true;
case RemotePSMP.CAST_ERROR_PRIORITY_HIGH:
Toast.makeText(context, resourceId, Toast.LENGTH_SHORT).show();