diff options
author | Shom Bandopadhaya <shom@bandopadhaya.com> | 2022-01-04 10:26:59 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-01-04 11:26:59 +0100 |
commit | 8568226468e7377e273410847a97ebf8a1d7e5e7 (patch) | |
tree | 487879cce40c1dba0180d4041430bdde9f0cf26f /core/src/main/java | |
parent | 4f031c4e45cc2e83059da8bed55f23bca345320d (diff) | |
download | AntennaPod-8568226468e7377e273410847a97ebf8a1d7e5e7.zip |
Local feeds: add sort option for file name (#5629)
Co-authored-by: widlok <widlok@users.noreply.github.com>
Diffstat (limited to 'core/src/main/java')
-rw-r--r-- | core/src/main/java/de/danoeh/antennapod/core/util/FeedItemPermutors.java | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/core/src/main/java/de/danoeh/antennapod/core/util/FeedItemPermutors.java b/core/src/main/java/de/danoeh/antennapod/core/util/FeedItemPermutors.java index 09161ca7b..7f2742ab0 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/util/FeedItemPermutors.java +++ b/core/src/main/java/de/danoeh/antennapod/core/util/FeedItemPermutors.java @@ -50,6 +50,12 @@ public class FeedItemPermutors { case DURATION_LONG_SHORT: comparator = (f1, f2) -> Integer.compare(duration(f2), duration(f1)); break; + case EPISODE_FILENAME_A_Z: + comparator = (f1, f2) -> itemLink(f1).compareTo(itemLink(f2)); + break; + case EPISODE_FILENAME_Z_A: + comparator = (f1, f2) -> itemLink(f2).compareTo(itemLink(f1)); + break; case FEED_TITLE_A_Z: comparator = (f1, f2) -> feedTitle(f1).compareTo(feedTitle(f2)); break; @@ -91,6 +97,12 @@ public class FeedItemPermutors { } @NonNull + private static String itemLink(@Nullable FeedItem item) { + return (item != null && item.getLink() != null) + ? item.getLink().toLowerCase(Locale.getDefault()) : ""; + } + + @NonNull private static String feedTitle(@Nullable FeedItem item) { return (item != null && item.getFeed() != null && item.getFeed().getTitle() != null) ? item.getFeed().getTitle().toLowerCase(Locale.getDefault()) : ""; |