summaryrefslogtreecommitdiff
path: root/src/de/danoeh/antennapod/util
diff options
context:
space:
mode:
authordaniel oeh <daniel.oeh@gmail.com>2013-03-07 20:02:23 +0100
committerdaniel oeh <daniel.oeh@gmail.com>2013-03-07 20:02:23 +0100
commit5876b98bb80309d09e85ca4c0967f5e3d74bff5d (patch)
tree664ec81a07f17881dc6b595912dc1c5560e7295f /src/de/danoeh/antennapod/util
parent3e25aa4ea37604e765878a470f098ee810502520 (diff)
downloadAntennaPod-5876b98bb80309d09e85ca4c0967f5e3d74bff5d.zip
Implemented skip functionality
Diffstat (limited to 'src/de/danoeh/antennapod/util')
-rw-r--r--src/de/danoeh/antennapod/util/menuhandler/FeedItemMenuHandler.java15
1 files changed, 13 insertions, 2 deletions
diff --git a/src/de/danoeh/antennapod/util/menuhandler/FeedItemMenuHandler.java b/src/de/danoeh/antennapod/util/menuhandler/FeedItemMenuHandler.java
index 9cdf8eec2..d1d0c6966 100644
--- a/src/de/danoeh/antennapod/util/menuhandler/FeedItemMenuHandler.java
+++ b/src/de/danoeh/antennapod/util/menuhandler/FeedItemMenuHandler.java
@@ -7,6 +7,7 @@ import de.danoeh.antennapod.R;
import de.danoeh.antennapod.asynctask.FlattrClickWorker;
import de.danoeh.antennapod.feed.FeedItem;
import de.danoeh.antennapod.feed.FeedManager;
+import de.danoeh.antennapod.service.PlaybackService;
import de.danoeh.antennapod.storage.DownloadRequestException;
import de.danoeh.antennapod.storage.DownloadRequester;
import de.danoeh.antennapod.util.ShareUtils;
@@ -55,16 +56,22 @@ public class FeedItemMenuHandler {
&& requester.isDownloadingFile(selectedItem.getMedia());
boolean notLoadedAndNotLoading = hasMedia && (!downloaded)
&& (!downloading);
+ boolean isPlaying = hasMedia
+ && selectedItem.getState() == FeedItem.State.PLAYING;
+
FeedItem.State state = selectedItem.getState();
- if (!downloaded) {
+ if (!isPlaying) {
+ mi.setItemVisibility(R.id.skip_episode_item, false);
+ }
+ if (!downloaded || isPlaying) {
mi.setItemVisibility(R.id.play_item, false);
mi.setItemVisibility(R.id.remove_item, false);
}
if (!notLoadedAndNotLoading) {
mi.setItemVisibility(R.id.download_item, false);
}
- if (!(notLoadedAndNotLoading | downloading)) {
+ if (!(notLoadedAndNotLoading | downloading | isPlaying)) {
mi.setItemVisibility(R.id.stream_item, false);
}
if (!downloading) {
@@ -104,6 +111,10 @@ public class FeedItemMenuHandler {
DownloadRequester requester = DownloadRequester.getInstance();
FeedManager manager = FeedManager.getInstance();
switch (menuItemId) {
+ case R.id.skip_episode_item:
+ context.sendBroadcast(new Intent(
+ PlaybackService.ACTION_SKIP_CURRENT_EPISODE));
+ break;
case R.id.download_item:
manager.downloadFeedItem(context, selectedItem);
break;