diff --git a/app/src/main/java/de/danoeh/antennapod/ui/screen/preferences/UserInterfacePreferencesFragment.java b/app/src/main/java/de/danoeh/antennapod/ui/screen/preferences/UserInterfacePreferencesFragment.java
index 293a4bed3..01f6587d4 100644
--- a/app/src/main/java/de/danoeh/antennapod/ui/screen/preferences/UserInterfacePreferencesFragment.java
+++ b/app/src/main/java/de/danoeh/antennapod/ui/screen/preferences/UserInterfacePreferencesFragment.java
@@ -6,28 +6,22 @@ import android.os.Build;
import android.os.Bundle;
import android.widget.Button;
import android.widget.ListView;
-
import androidx.appcompat.app.AlertDialog;
import androidx.core.app.ActivityCompat;
import androidx.preference.Preference;
-
import com.google.android.material.dialog.MaterialAlertDialogBuilder;
import com.google.android.material.snackbar.Snackbar;
-
+import de.danoeh.antennapod.R;
+import de.danoeh.antennapod.event.PlayerStatusEvent;
+import de.danoeh.antennapod.event.UnreadItemsUpdateEvent;
import de.danoeh.antennapod.storage.preferences.UsageStatistics;
+import de.danoeh.antennapod.storage.preferences.UserPreferences;
import de.danoeh.antennapod.ui.preferences.screen.AnimatedPreferenceFragment;
-import de.danoeh.antennapod.ui.screen.subscriptions.FeedSortDialog;
+import de.danoeh.antennapod.ui.screen.drawer.DrawerPreferencesDialog;
import org.greenrobot.eventbus.EventBus;
import java.util.List;
-import de.danoeh.antennapod.R;
-import de.danoeh.antennapod.ui.screen.drawer.DrawerPreferencesDialog;
-import de.danoeh.antennapod.ui.screen.subscriptions.SubscriptionsFilterDialog;
-import de.danoeh.antennapod.event.PlayerStatusEvent;
-import de.danoeh.antennapod.event.UnreadItemsUpdateEvent;
-import de.danoeh.antennapod.storage.preferences.UserPreferences;
-
public class UserInterfacePreferencesFragment extends AnimatedPreferenceFragment {
private static final String PREF_SWIPE = "prefSwipe";
@@ -76,17 +70,6 @@ public class UserInterfacePreferencesFragment extends AnimatedPreferenceFragment
showFullNotificationButtonsDialog();
return true;
});
- findPreference(UserPreferences.PREF_FILTER_FEED)
- .setOnPreferenceClickListener((preference -> {
- new SubscriptionsFilterDialog().show(getChildFragmentManager(), "filter");
- return true;
- }));
-
- findPreference(UserPreferences.PREF_DRAWER_FEED_ORDER)
- .setOnPreferenceClickListener((preference -> {
- FeedSortDialog.showDialog(requireContext());
- return true;
- }));
findPreference(PREF_SWIPE)
.setOnPreferenceClickListener(preference -> {
((PreferenceActivity) getActivity()).openScreen(R.xml.preferences_swipe);
diff --git a/app/src/main/java/de/danoeh/antennapod/ui/screen/subscriptions/FeedCounterDialog.java b/app/src/main/java/de/danoeh/antennapod/ui/screen/subscriptions/FeedCounterDialog.java
new file mode 100644
index 000000000..a0f5f8998
--- /dev/null
+++ b/app/src/main/java/de/danoeh/antennapod/ui/screen/subscriptions/FeedCounterDialog.java
@@ -0,0 +1,37 @@
+package de.danoeh.antennapod.ui.screen.subscriptions;
+
+import android.content.Context;
+import com.google.android.material.dialog.MaterialAlertDialogBuilder;
+import de.danoeh.antennapod.R;
+import de.danoeh.antennapod.event.UnreadItemsUpdateEvent;
+import de.danoeh.antennapod.model.feed.FeedCounter;
+import de.danoeh.antennapod.storage.preferences.UserPreferences;
+import org.greenrobot.eventbus.EventBus;
+
+import java.util.Arrays;
+import java.util.List;
+
+public class FeedCounterDialog {
+ public static void showDialog(Context context) {
+ MaterialAlertDialogBuilder dialog = new MaterialAlertDialogBuilder(context);
+ dialog.setTitle(context.getString(R.string.pref_nav_drawer_feed_counter_title));
+ dialog.setNegativeButton(android.R.string.cancel, (d, listener) -> d.dismiss());
+
+ int selected = UserPreferences.getFeedCounterSetting().id;
+ List entryValues =
+ Arrays.asList(context.getResources().getStringArray(R.array.nav_drawer_feed_counter_values));
+ final int selectedIndex = entryValues.indexOf("" + selected);
+
+ String[] items = context.getResources().getStringArray(R.array.nav_drawer_feed_counter_options);
+ dialog.setSingleChoiceItems(items, selectedIndex, (d, which) -> {
+ if (selectedIndex != which) {
+ UserPreferences.setFeedCounterSetting(
+ FeedCounter.fromOrdinal(Integer.parseInt(entryValues.get(which))));
+ //Update subscriptions
+ EventBus.getDefault().post(new UnreadItemsUpdateEvent());
+ }
+ d.dismiss();
+ });
+ dialog.show();
+ }
+}
diff --git a/app/src/main/java/de/danoeh/antennapod/ui/screen/subscriptions/FeedSortDialog.java b/app/src/main/java/de/danoeh/antennapod/ui/screen/subscriptions/FeedSortDialog.java
index 7e42581ce..1082fd9b8 100644
--- a/app/src/main/java/de/danoeh/antennapod/ui/screen/subscriptions/FeedSortDialog.java
+++ b/app/src/main/java/de/danoeh/antennapod/ui/screen/subscriptions/FeedSortDialog.java
@@ -17,7 +17,7 @@ import de.danoeh.antennapod.storage.preferences.UserPreferences;
public class FeedSortDialog {
public static void showDialog(Context context) {
MaterialAlertDialogBuilder dialog = new MaterialAlertDialogBuilder(context);
- dialog.setTitle(context.getString(R.string.pref_nav_drawer_feed_order_title));
+ dialog.setTitle(context.getString(R.string.sort));
dialog.setNegativeButton(android.R.string.cancel, (d, listener) -> d.dismiss());
int selected = UserPreferences.getFeedOrder().id;
diff --git a/app/src/main/java/de/danoeh/antennapod/ui/screen/subscriptions/SubscriptionFragment.java b/app/src/main/java/de/danoeh/antennapod/ui/screen/subscriptions/SubscriptionFragment.java
index 307436bab..79a541068 100644
--- a/app/src/main/java/de/danoeh/antennapod/ui/screen/subscriptions/SubscriptionFragment.java
+++ b/app/src/main/java/de/danoeh/antennapod/ui/screen/subscriptions/SubscriptionFragment.java
@@ -233,6 +233,9 @@ public class SubscriptionFragment extends Fragment
} else if (itemId == R.id.subscriptions_sort) {
FeedSortDialog.showDialog(requireContext());
return true;
+ } else if (itemId == R.id.subscriptions_counter) {
+ FeedCounterDialog.showDialog(requireContext());
+ return true;
} else if (itemId == R.id.subscription_display_list) {
setColumnNumber(1);
return true;
diff --git a/app/src/main/res/menu/subscriptions.xml b/app/src/main/res/menu/subscriptions.xml
index 927962b7a..aa9f55577 100644
--- a/app/src/main/res/menu/subscriptions.xml
+++ b/app/src/main/res/menu/subscriptions.xml
@@ -24,6 +24,10 @@
android:id="@+id/subscriptions_sort"
android:title="@string/sort"
custom:showAsAction="never" />
+
- Access the most important screens from everywhere, in a single tap
Customize navigation
Change which items appear in the navigation drawer or bottom navigation
- Set subscription order
- Change the order of your subscriptions
- Set subscription counter
- Change the information displayed by the subscription counter. Also affects the sorting of subscriptions if \'Subscription Order\' is set to \'Counter\'.
+ Counter
Automatic download
Automatically download episodes from the inbox. Can be overridden per podcast.
Download queued
@@ -561,8 +558,6 @@
Automatically remove an episode from the queue when it is deleted
Play from downloads screen
Display play button instead of delete button on downloads screen
- Subscription filter
- Filter your subscriptions in navigation drawer and subscriptions screen
Counter greater than zero
Auto downloaded
Not auto downloaded
diff --git a/ui/preferences/src/main/res/xml/preferences_user_interface.xml b/ui/preferences/src/main/res/xml/preferences_user_interface.xml
index e00bc0d13..c5752ca11 100644
--- a/ui/preferences/src/main/res/xml/preferences_user_interface.xml
+++ b/ui/preferences/src/main/res/xml/preferences_user_interface.xml
@@ -17,23 +17,6 @@
android:summary="@string/pref_tinted_theme_message"
android:defaultValue="false" />
-
-
-
-
-