summaryrefslogtreecommitdiff
path: root/app/src/main/java/de/danoeh/antennapod/fragment
diff options
context:
space:
mode:
authorvbh <code@bindu.io>2021-12-19 16:28:45 +0000
committerGitHub <noreply@github.com>2021-12-19 17:28:45 +0100
commita399702da2e222c586f8f5697076d373b667929a (patch)
treeeda5748c989952aa5f72ba73f980bb87566292ea /app/src/main/java/de/danoeh/antennapod/fragment
parent12be830f217fe9e179bf053665337af39f48aa9e (diff)
downloadAntennaPod-a399702da2e222c586f8f5697076d373b667929a.zip
Rename tags (#5601)
Diffstat (limited to 'app/src/main/java/de/danoeh/antennapod/fragment')
-rw-r--r--app/src/main/java/de/danoeh/antennapod/fragment/FeedItemlistFragment.java4
-rw-r--r--app/src/main/java/de/danoeh/antennapod/fragment/NavDrawerFragment.java35
-rw-r--r--app/src/main/java/de/danoeh/antennapod/fragment/SubscriptionFragment.java14
3 files changed, 36 insertions, 17 deletions
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 d74981b7f..5df8e2ccf 100644
--- a/app/src/main/java/de/danoeh/antennapod/fragment/FeedItemlistFragment.java
+++ b/app/src/main/java/de/danoeh/antennapod/fragment/FeedItemlistFragment.java
@@ -72,7 +72,7 @@ import de.danoeh.antennapod.core.util.FeedItemUtil;
import de.danoeh.antennapod.core.util.gui.MoreContentListFooterUtil;
import de.danoeh.antennapod.dialog.FilterDialog;
import de.danoeh.antennapod.dialog.RemoveFeedDialog;
-import de.danoeh.antennapod.dialog.RenameFeedDialog;
+import de.danoeh.antennapod.dialog.RenameItemDialog;
import de.danoeh.antennapod.fragment.swipeactions.SwipeActions;
import de.danoeh.antennapod.fragment.actions.EpisodeMultiSelectActionHandler;
import de.danoeh.antennapod.menuhandler.FeedItemMenuHandler;
@@ -331,7 +331,7 @@ public class FeedItemlistFragment extends Fragment implements AdapterView.OnItem
}
final int itemId = item.getItemId();
if (itemId == R.id.rename_item) {
- new RenameFeedDialog(getActivity(), feed).show();
+ new RenameItemDialog(getActivity(), feed).show();
return true;
} else if (itemId == R.id.remove_item) {
((MainActivity) getActivity()).loadFragment(EpisodesFragment.TAG, null);
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 18defc545..a5cabeb29 100644
--- a/app/src/main/java/de/danoeh/antennapod/fragment/NavDrawerFragment.java
+++ b/app/src/main/java/de/danoeh/antennapod/fragment/NavDrawerFragment.java
@@ -39,7 +39,7 @@ import de.danoeh.antennapod.core.storage.DBWriter;
import de.danoeh.antennapod.core.storage.NavDrawerData;
import de.danoeh.antennapod.dialog.RemoveFeedDialog;
import de.danoeh.antennapod.dialog.SubscriptionsFilterDialog;
-import de.danoeh.antennapod.dialog.RenameFeedDialog;
+import de.danoeh.antennapod.dialog.RenameItemDialog;
import io.reactivex.Observable;
import io.reactivex.android.schedulers.AndroidSchedulers;
import io.reactivex.disposables.Disposable;
@@ -124,24 +124,28 @@ public class NavDrawerFragment extends Fragment implements SharedPreferences.OnS
@Override
public void onCreateContextMenu(@NonNull ContextMenu menu, @NonNull View v, ContextMenu.ContextMenuInfo menuInfo) {
super.onCreateContextMenu(menu, v, menuInfo);
- if (contextPressedItem.type != NavDrawerData.DrawerItem.Type.FEED) {
- return; // Should actually never happen because the context menu is not set up for other items
- }
-
MenuInflater inflater = getActivity().getMenuInflater();
- inflater.inflate(R.menu.nav_feed_context, menu);
- menu.setHeaderTitle(((NavDrawerData.FeedDrawerItem) contextPressedItem).feed.getTitle());
- // episodes are not loaded, so we cannot check if the podcast has new or unplayed ones!
+ menu.setHeaderTitle(contextPressedItem.getTitle());
+ if (contextPressedItem.type == NavDrawerData.DrawerItem.Type.FEED) {
+ inflater.inflate(R.menu.nav_feed_context, menu);
+ // episodes are not loaded, so we cannot check if the podcast has new or unplayed ones!
+ } else {
+ inflater.inflate(R.menu.nav_folder_context, menu);
+ }
}
@Override
public boolean onContextItemSelected(@NonNull MenuItem item) {
NavDrawerData.DrawerItem pressedItem = contextPressedItem;
contextPressedItem = null;
- if (pressedItem != null && pressedItem.type == NavDrawerData.DrawerItem.Type.FEED) {
+ if (pressedItem == null) {
+ return false;
+ }
+ if (pressedItem.type == NavDrawerData.DrawerItem.Type.FEED) {
return onFeedContextMenuClicked(((NavDrawerData.FeedDrawerItem) pressedItem).feed, item);
+ } else {
+ return onTagContextMenuClicked(pressedItem, item);
}
- return false;
}
private boolean onFeedContextMenuClicked(Feed feed, MenuItem item) {
@@ -163,7 +167,7 @@ public class NavDrawerFragment extends Fragment implements SharedPreferences.OnS
.show(getChildFragmentManager(), TagSettingsDialog.TAG);
return true;
} else if (itemId == R.id.rename_item) {
- new RenameFeedDialog(getActivity(), feed).show();
+ new RenameItemDialog(getActivity(), feed).show();
return true;
} else if (itemId == R.id.remove_item) {
((MainActivity) getActivity()).loadFragment(EpisodesFragment.TAG, null);
@@ -173,6 +177,15 @@ public class NavDrawerFragment extends Fragment implements SharedPreferences.OnS
return super.onContextItemSelected(item);
}
+ private boolean onTagContextMenuClicked(NavDrawerData.DrawerItem drawerItem, MenuItem item) {
+ final int itemId = item.getItemId();
+ if (itemId == R.id.rename_folder_item) {
+ new RenameItemDialog(getActivity(), drawerItem).show();
+ return true;
+ }
+ return super.onContextItemSelected(item);
+ }
+
@Subscribe(threadMode = ThreadMode.MAIN)
public void onUnreadItemsChanged(UnreadItemsUpdateEvent event) {
loadData();
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 c4ac25455..200f4dcd6 100644
--- a/app/src/main/java/de/danoeh/antennapod/fragment/SubscriptionFragment.java
+++ b/app/src/main/java/de/danoeh/antennapod/fragment/SubscriptionFragment.java
@@ -55,7 +55,7 @@ import de.danoeh.antennapod.core.storage.NavDrawerData;
import de.danoeh.antennapod.core.util.download.AutoUpdateManager;
import de.danoeh.antennapod.dialog.FeedSortDialog;
import de.danoeh.antennapod.dialog.RemoveFeedDialog;
-import de.danoeh.antennapod.dialog.RenameFeedDialog;
+import de.danoeh.antennapod.dialog.RenameItemDialog;
import de.danoeh.antennapod.dialog.SubscriptionsFilterDialog;
import de.danoeh.antennapod.fragment.actions.FeedMultiSelectActionHandler;
import de.danoeh.antennapod.model.feed.Feed;
@@ -334,11 +334,17 @@ public class SubscriptionFragment extends Fragment
@Override
public boolean onContextItemSelected(MenuItem item) {
- Feed feed = subscriptionAdapter.getSelectedFeed();
- if (feed == null) {
+ NavDrawerData.DrawerItem drawerItem = subscriptionAdapter.getSelectedItem();
+ if (drawerItem == null) {
return false;
}
int itemId = item.getItemId();
+ if (drawerItem.type == NavDrawerData.DrawerItem.Type.TAG && itemId == R.id.rename_folder_item) {
+ new RenameItemDialog(getActivity(), drawerItem).show();
+ return true;
+ }
+
+ Feed feed = ((NavDrawerData.FeedDrawerItem) drawerItem).feed;
if (itemId == R.id.remove_all_new_flags_item) {
displayConfirmationDialog(
R.string.remove_all_new_flags_label,
@@ -350,7 +356,7 @@ public class SubscriptionFragment extends Fragment
.show(getChildFragmentManager(), TagSettingsDialog.TAG);
return true;
} else if (itemId == R.id.rename_item) {
- new RenameFeedDialog(getActivity(), feed).show();
+ new RenameItemDialog(getActivity(), feed).show();
return true;
} else if (itemId == R.id.remove_item) {
RemoveFeedDialog.show(getContext(), feed);