diff options
author | daniel oeh <daniel.oeh@gmail.com> | 2013-01-21 22:47:19 +0100 |
---|---|---|
committer | daniel oeh <daniel.oeh@gmail.com> | 2013-01-21 22:47:19 +0100 |
commit | 825ccd28c1572c2f49b1bd2c83c78cd76d0e6629 (patch) | |
tree | bff9ae5daf5b0adf3ad3f0399327dad2c20c2c73 /src/de/danoeh/antennapod/util/menuhandler | |
parent | ccd75800c92051e4f7366ab65f9cc17f32f96f23 (diff) | |
download | AntennaPod-825ccd28c1572c2f49b1bd2c83c78cd76d0e6629.zip |
Improved performance of FeedItemMenuHandler's prepare method
Diffstat (limited to 'src/de/danoeh/antennapod/util/menuhandler')
-rw-r--r-- | src/de/danoeh/antennapod/util/menuhandler/FeedItemMenuHandler.java | 56 |
1 files changed, 33 insertions, 23 deletions
diff --git a/src/de/danoeh/antennapod/util/menuhandler/FeedItemMenuHandler.java b/src/de/danoeh/antennapod/util/menuhandler/FeedItemMenuHandler.java index a1145f372..c3d3af495 100644 --- a/src/de/danoeh/antennapod/util/menuhandler/FeedItemMenuHandler.java +++ b/src/de/danoeh/antennapod/util/menuhandler/FeedItemMenuHandler.java @@ -3,6 +3,7 @@ package de.danoeh.antennapod.util.menuhandler; import android.content.Context; import android.content.Intent; import android.net.Uri; +import android.os.Debug; import android.view.Menu; import android.view.MenuInflater; import android.view.MenuItem; @@ -47,36 +48,45 @@ public class FeedItemMenuHandler { && (!downloading); FeedItem.State state = selectedItem.getState(); - mi.setItemVisibility(R.id.play_item, downloaded); - mi.setItemVisibility(R.id.remove_item, downloaded); - mi.setItemVisibility(R.id.download_item, notLoadedAndNotLoading); - mi.setItemVisibility(R.id.stream_item, notLoadedAndNotLoading - | downloading); - mi.setItemVisibility(R.id.cancel_download_item, downloading); + if (!downloaded) { + 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)) { + mi.setItemVisibility(R.id.stream_item, false); + } + if (!downloading) { + mi.setItemVisibility(R.id.cancel_download_item, false); + } boolean isInQueue = manager.isInQueue(selectedItem); + if (!isInQueue) { + mi.setItemVisibility(R.id.remove_from_queue_item, false); + } + if (!(!isInQueue && selectedItem.getMedia() != null)) { + mi.setItemVisibility(R.id.add_to_queue_item, false); + } + if (selectedItem.getLink() == null) { + mi.setItemVisibility(R.id.share_link_item, false); + } - mi.setItemVisibility(R.id.remove_from_queue_item, isInQueue); - mi.setItemVisibility(R.id.add_to_queue_item, - !isInQueue && selectedItem.getMedia() != null); - - mi.setItemVisibility(R.id.share_link_item, - selectedItem.getLink() != null); - - mi.setItemVisibility(R.id.mark_unread_item, - state == FeedItem.State.IN_PROGRESS - || state == FeedItem.State.READ); - mi.setItemVisibility(R.id.mark_read_item, state == FeedItem.State.NEW - || state == FeedItem.State.IN_PROGRESS); - - if (selectedItem.getLink() != null) { - mi.setItemVisibility(R.id.visit_website_item, true); + if (!(state == FeedItem.State.IN_PROGRESS || state == FeedItem.State.READ)) { + mi.setItemVisibility(R.id.mark_unread_item, false); + } + if (!(state == FeedItem.State.NEW || state == FeedItem.State.IN_PROGRESS)) { + mi.setItemVisibility(R.id.mark_read_item, false); } - if (selectedItem.getPaymentLink() != null) { - mi.setItemVisibility(R.id.support_item, true); + if (selectedItem.getLink() == null) { + mi.setItemVisibility(R.id.visit_website_item, false); } + if (selectedItem.getPaymentLink() == null) { + mi.setItemVisibility(R.id.support_item, false); + } return true; } |