diff options
author | tamizh143 <50977879+tamizh143@users.noreply.github.com> | 2021-04-10 14:05:39 +0530 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-04-10 10:35:39 +0200 |
commit | b8276d2fb3f3dd2259eeb08c25626aa2c6968f8b (patch) | |
tree | 19827ba76a270c361d17dd0db95ff6a4d1700b8d /core/src/main/java/de/danoeh/antennapod | |
parent | 8c73bd6aeadb87ff98cdfb8f20525e4ab5dca424 (diff) | |
download | AntennaPod-b8276d2fb3f3dd2259eeb08c25626aa2c6968f8b.zip |
Add filtering subscriptions based on new episodes notification setting (#5098)
Diffstat (limited to 'core/src/main/java/de/danoeh/antennapod')
-rw-r--r-- | core/src/main/java/de/danoeh/antennapod/core/feed/SubscriptionsFilter.java | 15 | ||||
-rw-r--r-- | core/src/main/java/de/danoeh/antennapod/core/feed/SubscriptionsFilterGroup.java | 5 |
2 files changed, 19 insertions, 1 deletions
diff --git a/core/src/main/java/de/danoeh/antennapod/core/feed/SubscriptionsFilter.java b/core/src/main/java/de/danoeh/antennapod/core/feed/SubscriptionsFilter.java index 93f098ecf..e98b40151 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/feed/SubscriptionsFilter.java +++ b/core/src/main/java/de/danoeh/antennapod/core/feed/SubscriptionsFilter.java @@ -20,6 +20,9 @@ public class SubscriptionsFilter { private boolean showUpdatedEnabled = false; private boolean showUpdatedDisabled = false; + private boolean showEpisodeNotificationEnabled = false; + private boolean showEpisodeNotificationDisabled = false; + public SubscriptionsFilter(String properties) { this(TextUtils.split(properties, divider)); } @@ -45,6 +48,12 @@ public class SubscriptionsFilter { case "disabled_updates": showUpdatedDisabled = true; break; + case "episode_notification_enabled": + showEpisodeNotificationEnabled = true; + break; + case "episode_notification_disabled": + showEpisodeNotificationDisabled = true; + break; default: break; } @@ -81,6 +90,12 @@ public class SubscriptionsFilter { continue; } + if (showEpisodeNotificationEnabled && !itemPreferences.getShowEpisodeNotification()) { + continue; + } else if (showEpisodeNotificationDisabled && itemPreferences.getShowEpisodeNotification()) { + continue; + } + // If the item reaches here, it meets all criteria (except counter > 0) result.add(item); } diff --git a/core/src/main/java/de/danoeh/antennapod/core/feed/SubscriptionsFilterGroup.java b/core/src/main/java/de/danoeh/antennapod/core/feed/SubscriptionsFilterGroup.java index 7db0456a0..cea5d96ef 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/feed/SubscriptionsFilterGroup.java +++ b/core/src/main/java/de/danoeh/antennapod/core/feed/SubscriptionsFilterGroup.java @@ -7,7 +7,10 @@ public enum SubscriptionsFilterGroup { AUTO_DOWNLOAD(new ItemProperties(R.string.auto_downloaded, "enabled_auto_download"), new ItemProperties(R.string.not_auto_downloaded, "disabled_auto_download")), UPDATED(new ItemProperties(R.string.kept_updated, "enabled_updates"), - new ItemProperties(R.string.not_kept_updated, "disabled_updates")); + new ItemProperties(R.string.not_kept_updated, "disabled_updates")), + NEW_EPISODE_NOTIFICATION(new ItemProperties(R.string.new_episode_notification_enabled, + "episode_notification_enabled"), + new ItemProperties(R.string.new_episode_notification_disabled, "episode_notification_disabled")); public final ItemProperties[] values; |