From 4003ede4a722491cac952b1c1dee171581158cb7 Mon Sep 17 00:00:00 2001 From: daniel oeh Date: Sun, 15 Jul 2012 21:04:18 +0200 Subject: [PATCH] implemented menu in mediaplayer activity --- res/menu/feeditem.xml | 90 ++++++++++++++++--- res/menu/mediaplayer.xml | 23 +++++ .../activity/MediaplayerActivity.java | 29 ++++-- 3 files changed, 122 insertions(+), 20 deletions(-) create mode 100644 res/menu/mediaplayer.xml diff --git a/res/menu/feeditem.xml b/res/menu/feeditem.xml index 9b80593a5..5fcaed2c3 100644 --- a/res/menu/feeditem.xml +++ b/res/menu/feeditem.xml @@ -1,16 +1,82 @@ - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/res/menu/mediaplayer.xml b/res/menu/mediaplayer.xml new file mode 100644 index 000000000..3f1aa117e --- /dev/null +++ b/res/menu/mediaplayer.xml @@ -0,0 +1,23 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/src/de/danoeh/antennapod/activity/MediaplayerActivity.java b/src/de/danoeh/antennapod/activity/MediaplayerActivity.java index 8f2e987f2..d5f0939bc 100644 --- a/src/de/danoeh/antennapod/activity/MediaplayerActivity.java +++ b/src/de/danoeh/antennapod/activity/MediaplayerActivity.java @@ -35,6 +35,7 @@ import android.widget.VideoView; import com.actionbarsherlock.app.SherlockFragmentActivity; import com.actionbarsherlock.view.Menu; +import com.actionbarsherlock.view.MenuInflater; import com.actionbarsherlock.view.MenuItem; import com.viewpagerindicator.TabPageIndicator; @@ -47,6 +48,7 @@ import de.danoeh.antennapod.fragment.ItemDescriptionFragment; import de.danoeh.antennapod.service.PlaybackService; import de.danoeh.antennapod.service.PlayerStatus; import de.danoeh.antennapod.util.Converter; +import de.danoeh.antennapod.util.FeedItemMenuHandler; import de.danoeh.antennapod.util.MediaPlayerError; import de.danoeh.antennapod.util.StorageUtils; @@ -118,6 +120,16 @@ public class MediaplayerActivity extends SherlockFragmentActivity implements @Override public boolean onCreateOptionsMenu(Menu menu) { + MenuInflater inflater = new MenuInflater(this); + inflater.inflate(R.menu.mediaplayer, menu); + return true; + } + + @Override + public boolean onPrepareOptionsMenu(Menu menu) { + menu.findItem(R.id.support_item).setVisible(media.getItem().getPaymentLink() != null); + menu.findItem(R.id.share_link_item).setVisible(media.getItem().getLink() != null); + menu.findItem(R.id.visit_website_item).setVisible(media.getItem().getLink() != null); return true; } @@ -128,7 +140,7 @@ public class MediaplayerActivity extends SherlockFragmentActivity implements finish(); break; default: - return false; + return FeedItemMenuHandler.onMenuItemClicked(this, item, media.getItem()); } return true; } @@ -468,13 +480,14 @@ public class MediaplayerActivity extends SherlockFragmentActivity implements errorDialog.setTitle(R.string.error_label); errorDialog .setMessage(MediaPlayerError.getErrorString(this, errorCode)); - errorDialog.setNeutralButton("OK", new DialogInterface.OnClickListener() { - @Override - public void onClick(DialogInterface dialog, int which) { - dialog.dismiss(); - finish(); - } - }); + errorDialog.setNeutralButton("OK", + new DialogInterface.OnClickListener() { + @Override + public void onClick(DialogInterface dialog, int which) { + dialog.dismiss(); + finish(); + } + }); errorDialog.create().show(); }