diff options
Diffstat (limited to 'app/src/main/java/de/danoeh/antennapod/fragment')
6 files changed, 217 insertions, 224 deletions
diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/AudioPlayerFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/AudioPlayerFragment.java index ca6d28d67..86ab163e7 100644 --- a/app/src/main/java/de/danoeh/antennapod/fragment/AudioPlayerFragment.java +++ b/app/src/main/java/de/danoeh/antennapod/fragment/AudioPlayerFragment.java @@ -507,21 +507,21 @@ public class AudioPlayerFragment extends Fragment implements if (feedItem != null && FeedItemMenuHandler.onMenuItemClicked(this, item.getItemId(), feedItem)) { return true; } - switch (item.getItemId()) { - case R.id.disable_sleeptimer_item: // Fall-through - case R.id.set_sleeptimer_item: - new SleepTimerDialog().show(getChildFragmentManager(), "SleepTimerDialog"); - return true; - case R.id.audio_controls: - PlaybackControlsDialog dialog = PlaybackControlsDialog.newInstance(); - dialog.show(getChildFragmentManager(), "playback_controls"); - return true; - case R.id.open_feed_item: - if (feedItem != null) { - Intent intent = MainActivity.getIntentToOpenFeed(getContext(), feedItem.getFeedId()); - startActivity(intent); - } - return true; + + final int itemId = item.getItemId(); + if (itemId == R.id.disable_sleeptimer_item || itemId == R.id.set_sleeptimer_item) { + new SleepTimerDialog().show(getChildFragmentManager(), "SleepTimerDialog"); + return true; + } else if (itemId == R.id.audio_controls) { + PlaybackControlsDialog dialog = PlaybackControlsDialog.newInstance(); + dialog.show(getChildFragmentManager(), "playback_controls"); + return true; + } else if (itemId == R.id.open_feed_item) { + if (feedItem != null) { + Intent intent = MainActivity.getIntentToOpenFeed(getContext(), feedItem.getFeedId()); + startActivity(intent); + } + return true; } return false; } diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/EpisodesListFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/EpisodesListFragment.java index 9e5600d76..59556a340 100644 --- a/app/src/main/java/de/danoeh/antennapod/fragment/EpisodesListFragment.java +++ b/app/src/main/java/de/danoeh/antennapod/fragment/EpisodesListFragment.java @@ -122,43 +122,42 @@ public abstract class EpisodesListFragment extends Fragment { @Override public boolean onOptionsItemSelected(@NonNull MenuItem item) { if (!super.onOptionsItemSelected(item)) { - switch (item.getItemId()) { - case R.id.refresh_item: - AutoUpdateManager.runImmediate(requireContext()); - return true; - case R.id.mark_all_read_item: - ConfirmationDialog markAllReadConfirmationDialog = new ConfirmationDialog(getActivity(), - R.string.mark_all_read_label, - R.string.mark_all_read_confirmation_msg) { - - @Override - public void onConfirmButtonPressed(DialogInterface dialog) { - dialog.dismiss(); - DBWriter.markAllItemsRead(); - ((MainActivity) getActivity()).showSnackbarAbovePlayer( - R.string.mark_all_read_msg, Toast.LENGTH_SHORT); - } - }; - markAllReadConfirmationDialog.createNewDialog().show(); - return true; - case R.id.remove_all_new_flags_item: - ConfirmationDialog removeAllNewFlagsConfirmationDialog = new ConfirmationDialog(getActivity(), - R.string.remove_all_new_flags_label, - R.string.remove_all_new_flags_confirmation_msg) { - - @Override - public void onConfirmButtonPressed(DialogInterface dialog) { - dialog.dismiss(); - DBWriter.removeAllNewFlags(); - ((MainActivity) getActivity()).showSnackbarAbovePlayer( - R.string.removed_all_new_flags_msg, Toast.LENGTH_SHORT); - } - }; - removeAllNewFlagsConfirmationDialog.createNewDialog().show(); - return true; - default: - return false; + final int itemId = item.getItemId(); + if (itemId == R.id.refresh_item) { + AutoUpdateManager.runImmediate(requireContext()); + return true; + } else if (itemId == R.id.mark_all_read_item) { + ConfirmationDialog markAllReadConfirmationDialog = new ConfirmationDialog(getActivity(), + R.string.mark_all_read_label, + R.string.mark_all_read_confirmation_msg) { + + @Override + public void onConfirmButtonPressed(DialogInterface dialog) { + dialog.dismiss(); + DBWriter.markAllItemsRead(); + ((MainActivity) getActivity()).showSnackbarAbovePlayer( + R.string.mark_all_read_msg, Toast.LENGTH_SHORT); + } + }; + markAllReadConfirmationDialog.createNewDialog().show(); + return true; + } else if (itemId == R.id.remove_all_new_flags_item) { + ConfirmationDialog removeAllNewFlagsConfirmationDialog = new ConfirmationDialog(getActivity(), + R.string.remove_all_new_flags_label, + R.string.remove_all_new_flags_confirmation_msg) { + + @Override + public void onConfirmButtonPressed(DialogInterface dialog) { + dialog.dismiss(); + DBWriter.removeAllNewFlags(); + ((MainActivity) getActivity()).showSnackbarAbovePlayer( + R.string.removed_all_new_flags_msg, Toast.LENGTH_SHORT); + } + }; + removeAllNewFlagsConfirmationDialog.createNewDialog().show(); + return true; } + return false; } else { return true; } diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/FeedItemlistFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/FeedItemlistFragment.java index a3b58fc07..9c5f5079d 100644 --- a/app/src/main/java/de/danoeh/antennapod/fragment/FeedItemlistFragment.java +++ b/app/src/main/java/de/danoeh/antennapod/fragment/FeedItemlistFragment.java @@ -332,17 +332,16 @@ public class FeedItemlistFragment extends Fragment implements AdapterView.OnItem if (feedMenuHandled) { return true; } - switch (item.getItemId()) { - case R.id.rename_item: - new RenameFeedDialog(getActivity(), feed).show(); - return true; - case R.id.remove_item: - RemoveFeedDialog.show(getContext(), feed, () -> - ((MainActivity) getActivity()).loadFragment(EpisodesFragment.TAG, null)); - return true; - default: - return false; + final int itemId = item.getItemId(); + if (itemId == R.id.rename_item) { + new RenameFeedDialog(getActivity(), feed).show(); + return true; + } else if (itemId == R.id.remove_item) { + RemoveFeedDialog.show(getContext(), feed, () -> + ((MainActivity) getActivity()).loadFragment(EpisodesFragment.TAG, null)); + return true; } + return false; } @Override diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/NavDrawerFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/NavDrawerFragment.java index 98ba59980..7acb94ab3 100644 --- a/app/src/main/java/de/danoeh/antennapod/fragment/NavDrawerFragment.java +++ b/app/src/main/java/de/danoeh/antennapod/fragment/NavDrawerFragment.java @@ -143,43 +143,42 @@ public class NavDrawerFragment extends Fragment implements SharedPreferences.OnS } private boolean onFeedContextMenuClicked(Feed feed, MenuItem item) { - switch (item.getItemId()) { - case R.id.remove_all_new_flags_item: - ConfirmationDialog removeAllNewFlagsConfirmationDialog = new ConfirmationDialog(getContext(), - R.string.remove_all_new_flags_label, - R.string.remove_all_new_flags_confirmation_msg) { - @Override - public void onConfirmButtonPressed(DialogInterface dialog) { - dialog.dismiss(); - DBWriter.removeFeedNewFlag(feed.getId()); - } - }; - removeAllNewFlagsConfirmationDialog.createNewDialog().show(); - return true; - case R.id.mark_all_read_item: - ConfirmationDialog markAllReadConfirmationDialog = new ConfirmationDialog(getContext(), - R.string.mark_all_read_label, - R.string.mark_all_read_confirmation_msg) { - - @Override - public void onConfirmButtonPressed(DialogInterface dialog) { - dialog.dismiss(); - DBWriter.markFeedRead(feed.getId()); - } - }; - markAllReadConfirmationDialog.createNewDialog().show(); - return true; - case R.id.rename_item: - new RenameFeedDialog(getActivity(), feed).show(); - return true; - case R.id.remove_item: - RemoveFeedDialog.show(getContext(), feed, () -> { - ((MainActivity) getActivity()).loadFragment(EpisodesFragment.TAG, null); - }); - return true; - default: - return super.onContextItemSelected(item); + final int itemId = item.getItemId(); + if (itemId == R.id.remove_all_new_flags_item) { + ConfirmationDialog removeAllNewFlagsConfirmationDialog = new ConfirmationDialog(getContext(), + R.string.remove_all_new_flags_label, + R.string.remove_all_new_flags_confirmation_msg) { + @Override + public void onConfirmButtonPressed(DialogInterface dialog) { + dialog.dismiss(); + DBWriter.removeFeedNewFlag(feed.getId()); + } + }; + removeAllNewFlagsConfirmationDialog.createNewDialog().show(); + return true; + } else if (itemId == R.id.mark_all_read_item) { + ConfirmationDialog markAllReadConfirmationDialog = new ConfirmationDialog(getContext(), + R.string.mark_all_read_label, + R.string.mark_all_read_confirmation_msg) { + + @Override + public void onConfirmButtonPressed(DialogInterface dialog) { + dialog.dismiss(); + DBWriter.markFeedRead(feed.getId()); + } + }; + markAllReadConfirmationDialog.createNewDialog().show(); + return true; + } else if (itemId == R.id.rename_item) { + new RenameFeedDialog(getActivity(), feed).show(); + return true; + } else if (itemId == R.id.remove_item) { + RemoveFeedDialog.show(getContext(), feed, () -> { + ((MainActivity) getActivity()).loadFragment(EpisodesFragment.TAG, null); + }); + return true; } + return super.onContextItemSelected(item); } @Subscribe(threadMode = ThreadMode.MAIN) diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/QueueFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/QueueFragment.java index a89ad204b..6f8b9adbb 100644 --- a/app/src/main/java/de/danoeh/antennapod/fragment/QueueFragment.java +++ b/app/src/main/java/de/danoeh/antennapod/fragment/QueueFragment.java @@ -258,77 +258,76 @@ public class QueueFragment extends Fragment implements Toolbar.OnMenuItemClickLi @Override public boolean onMenuItemClick(MenuItem item) { - switch (item.getItemId()) { - case R.id.queue_lock: - toggleQueueLock(); - return true; - case R.id.refresh_item: - AutoUpdateManager.runImmediate(requireContext()); - return true; - case R.id.clear_queue: - // make sure the user really wants to clear the queue - ConfirmationDialog conDialog = new ConfirmationDialog(getActivity(), - R.string.clear_queue_label, - R.string.clear_queue_confirmation_msg) { - - @Override - public void onConfirmButtonPressed( - DialogInterface dialog) { - dialog.dismiss(); - DBWriter.clearQueue(); - } - }; - conDialog.createNewDialog().show(); - return true; - case R.id.queue_sort_episode_title_asc: - setSortOrder(SortOrder.EPISODE_TITLE_A_Z); - return true; - case R.id.queue_sort_episode_title_desc: - setSortOrder(SortOrder.EPISODE_TITLE_Z_A); - return true; - case R.id.queue_sort_date_asc: - setSortOrder(SortOrder.DATE_OLD_NEW); - return true; - case R.id.queue_sort_date_desc: - setSortOrder(SortOrder.DATE_NEW_OLD); - return true; - case R.id.queue_sort_duration_asc: - setSortOrder(SortOrder.DURATION_SHORT_LONG); - return true; - case R.id.queue_sort_duration_desc: - setSortOrder(SortOrder.DURATION_LONG_SHORT); - return true; - case R.id.queue_sort_feed_title_asc: - setSortOrder(SortOrder.FEED_TITLE_A_Z); - return true; - case R.id.queue_sort_feed_title_desc: - setSortOrder(SortOrder.FEED_TITLE_Z_A); - return true; - case R.id.queue_sort_random: - setSortOrder(SortOrder.RANDOM); - return true; - case R.id.queue_sort_smart_shuffle_asc: - setSortOrder(SortOrder.SMART_SHUFFLE_OLD_NEW); - return true; - case R.id.queue_sort_smart_shuffle_desc: - setSortOrder(SortOrder.SMART_SHUFFLE_NEW_OLD); - return true; - case R.id.queue_keep_sorted: - boolean keepSortedOld = UserPreferences.isQueueKeepSorted(); - boolean keepSortedNew = !keepSortedOld; - UserPreferences.setQueueKeepSorted(keepSortedNew); - if (keepSortedNew) { - SortOrder sortOrder = UserPreferences.getQueueKeepSortedOrder(); - DBWriter.reorderQueue(sortOrder, true); - } - if (recyclerAdapter != null) { - recyclerAdapter.updateDragDropEnabled(); + final int itemId = item.getItemId(); + if (itemId == R.id.queue_lock) { + toggleQueueLock(); + return true; + } else if (itemId == R.id.refresh_item) { + AutoUpdateManager.runImmediate(requireContext()); + return true; + } else if (itemId == R.id.clear_queue) { + // make sure the user really wants to clear the queue + ConfirmationDialog conDialog = new ConfirmationDialog(getActivity(), + R.string.clear_queue_label, + R.string.clear_queue_confirmation_msg) { + + @Override + public void onConfirmButtonPressed( + DialogInterface dialog) { + dialog.dismiss(); + DBWriter.clearQueue(); } - refreshToolbarState(); - return true; - default: - return false; + }; + conDialog.createNewDialog().show(); + return true; + } else if (itemId == R.id.queue_sort_episode_title_asc) { + setSortOrder(SortOrder.EPISODE_TITLE_A_Z); + return true; + } else if (itemId == R.id.queue_sort_episode_title_desc) { + setSortOrder(SortOrder.EPISODE_TITLE_Z_A); + return true; + } else if (itemId == R.id.queue_sort_date_asc) { + setSortOrder(SortOrder.DATE_OLD_NEW); + return true; + } else if (itemId == R.id.queue_sort_date_desc) { + setSortOrder(SortOrder.DATE_NEW_OLD); + return true; + } else if (itemId == R.id.queue_sort_duration_asc) { + setSortOrder(SortOrder.DURATION_SHORT_LONG); + return true; + } else if (itemId == R.id.queue_sort_duration_desc) { + setSortOrder(SortOrder.DURATION_LONG_SHORT); + return true; + } else if (itemId == R.id.queue_sort_feed_title_asc) { + setSortOrder(SortOrder.FEED_TITLE_A_Z); + return true; + } else if (itemId == R.id.queue_sort_feed_title_desc) { + setSortOrder(SortOrder.FEED_TITLE_Z_A); + return true; + } else if (itemId == R.id.queue_sort_random) { + setSortOrder(SortOrder.RANDOM); + return true; + } else if (itemId == R.id.queue_sort_smart_shuffle_asc) { + setSortOrder(SortOrder.SMART_SHUFFLE_OLD_NEW); + return true; + } else if (itemId == R.id.queue_sort_smart_shuffle_desc) { + setSortOrder(SortOrder.SMART_SHUFFLE_NEW_OLD); + return true; + } else if (itemId == R.id.queue_keep_sorted) { + boolean keepSortedOld = UserPreferences.isQueueKeepSorted(); + boolean keepSortedNew = !keepSortedOld; + UserPreferences.setQueueKeepSorted(keepSortedNew); + if (keepSortedNew) { + SortOrder sortOrder = UserPreferences.getQueueKeepSortedOrder(); + DBWriter.reorderQueue(sortOrder, true); + } + if (recyclerAdapter != null) { + recyclerAdapter.updateDragDropEnabled(); + } + refreshToolbarState(); + return true; } + return false; } private void toggleQueueLock() { @@ -404,20 +403,19 @@ public class QueueFragment extends Fragment implements Toolbar.OnMenuItemClickLi return true; } - switch(item.getItemId()) { - case R.id.move_to_top_item: - queue.add(0, queue.remove(position)); - recyclerAdapter.notifyItemMoved(position, 0); - DBWriter.moveQueueItemToTop(selectedItem.getId(), true); - return true; - case R.id.move_to_bottom_item: - queue.add(queue.size()-1, queue.remove(position)); - recyclerAdapter.notifyItemMoved(position, queue.size()-1); - DBWriter.moveQueueItemToBottom(selectedItem.getId(), true); - return true; - default: - return FeedItemMenuHandler.onMenuItemClicked(this, item.getItemId(), selectedItem); + final int itemId = item.getItemId(); + if (itemId == R.id.move_to_top_item) { + queue.add(0, queue.remove(position)); + recyclerAdapter.notifyItemMoved(position, 0); + DBWriter.moveQueueItemToTop(selectedItem.getId(), true); + return true; + } else if (itemId == R.id.move_to_bottom_item) { + queue.add(queue.size() - 1, queue.remove(position)); + recyclerAdapter.notifyItemMoved(position, queue.size() - 1); + DBWriter.moveQueueItemToBottom(selectedItem.getId(), true); + return true; } + return FeedItemMenuHandler.onMenuItemClicked(this, item.getItemId(), selectedItem); } @Override diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/SubscriptionFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/SubscriptionFragment.java index 367eb4aaf..23341ff66 100644 --- a/app/src/main/java/de/danoeh/antennapod/fragment/SubscriptionFragment.java +++ b/app/src/main/java/de/danoeh/antennapod/fragment/SubscriptionFragment.java @@ -172,31 +172,30 @@ public class SubscriptionFragment extends Fragment implements Toolbar.OnMenuItem @Override public boolean onMenuItemClick(MenuItem item) { - switch (item.getItemId()) { - case R.id.refresh_item: - AutoUpdateManager.runImmediate(requireContext()); - return true; - case R.id.subscriptions_filter: - SubscriptionsFilterDialog.showDialog(requireContext()); - return true; - case R.id.subscriptions_sort: - FeedSortDialog.showDialog(requireContext()); - return true; - case R.id.subscription_num_columns_2: - setColumnNumber(2); - return true; - case R.id.subscription_num_columns_3: - setColumnNumber(3); - return true; - case R.id.subscription_num_columns_4: - setColumnNumber(4); - return true; - case R.id.subscription_num_columns_5: - setColumnNumber(5); - return true; - default: - return false; + final int itemId = item.getItemId(); + if (itemId == R.id.refresh_item) { + AutoUpdateManager.runImmediate(requireContext()); + return true; + } else if (itemId == R.id.subscriptions_filter) { + SubscriptionsFilterDialog.showDialog(requireContext()); + return true; + } else if (itemId == R.id.subscriptions_sort) { + FeedSortDialog.showDialog(requireContext()); + return true; + } else if (itemId == R.id.subscription_num_columns_2) { + setColumnNumber(2); + return true; + } else if (itemId == R.id.subscription_num_columns_3) { + setColumnNumber(3); + return true; + } else if (itemId == R.id.subscription_num_columns_4) { + setColumnNumber(4); + return true; + } else if (itemId == R.id.subscription_num_columns_5) { + setColumnNumber(5); + return true; } + return false; } private void setColumnNumber(int columns) { @@ -315,28 +314,27 @@ public class SubscriptionFragment extends Fragment implements Toolbar.OnMenuItem Feed feed = selectedFeed; selectedFeed = null; - switch (item.getItemId()) { - case R.id.remove_all_new_flags_item: - displayConfirmationDialog( - R.string.remove_all_new_flags_label, - R.string.remove_all_new_flags_confirmation_msg, - () -> DBWriter.removeFeedNewFlag(feed.getId())); - return true; - case R.id.mark_all_read_item: - displayConfirmationDialog( - R.string.mark_all_read_label, - R.string.mark_all_read_confirmation_msg, - () -> DBWriter.markFeedRead(feed.getId())); - return true; - case R.id.rename_item: - new RenameFeedDialog(getActivity(), feed).show(); - return true; - case R.id.remove_item: - RemoveFeedDialog.show(getContext(), feed, null); - return true; - default: - return super.onContextItemSelected(item); + final int itemId = item.getItemId(); + if (itemId == R.id.remove_all_new_flags_item) { + displayConfirmationDialog( + R.string.remove_all_new_flags_label, + R.string.remove_all_new_flags_confirmation_msg, + () -> DBWriter.removeFeedNewFlag(feed.getId())); + return true; + } else if (itemId == R.id.mark_all_read_item) { + displayConfirmationDialog( + R.string.mark_all_read_label, + R.string.mark_all_read_confirmation_msg, + () -> DBWriter.markFeedRead(feed.getId())); + return true; + } else if (itemId == R.id.rename_item) { + new RenameFeedDialog(getActivity(), feed).show(); + return true; + } else if (itemId == R.id.remove_item) { + RemoveFeedDialog.show(getContext(), feed, null); + return true; } + return super.onContextItemSelected(item); } private <T> void displayConfirmationDialog(@StringRes int title, @StringRes int message, Callable<? extends T> task) { |