diff options
author | GitStart <1501599+gitstart@users.noreply.github.com> | 2023-02-28 23:41:15 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-02-28 21:41:15 +0100 |
commit | 581e71b306bbc28dc504bde1d1bba6d6121e26e1 (patch) | |
tree | 9c559a79a01cf8345719af7e9848ff2ff8c564fa /core/src | |
parent | ccea00e4056b85d5be0ebfa898a1ac961c2e3c56 (diff) | |
download | AntennaPod-581e71b306bbc28dc504bde1d1bba6d6121e26e1.zip |
Add option to switch a- & descending sort order for Inbox (#6266)
Diffstat (limited to 'core/src')
3 files changed, 7 insertions, 4 deletions
diff --git a/core/src/main/java/de/danoeh/antennapod/core/storage/AutomaticDownloadAlgorithm.java b/core/src/main/java/de/danoeh/antennapod/core/storage/AutomaticDownloadAlgorithm.java index 5fbbbbc19..c9f37fd00 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/storage/AutomaticDownloadAlgorithm.java +++ b/core/src/main/java/de/danoeh/antennapod/core/storage/AutomaticDownloadAlgorithm.java @@ -7,6 +7,7 @@ import java.util.ArrayList; import java.util.Iterator; import java.util.List; +import de.danoeh.antennapod.model.feed.SortOrder; import de.danoeh.antennapod.net.download.serviceinterface.DownloadRequest; import de.danoeh.antennapod.core.service.download.DownloadRequestCreator; import de.danoeh.antennapod.net.download.serviceinterface.DownloadServiceInterface; @@ -52,7 +53,7 @@ public class AutomaticDownloadAlgorithm { List<FeedItem> candidates; final List<FeedItem> queue = DBReader.getQueue(); - final List<FeedItem> newItems = DBReader.getNewItemsList(0, Integer.MAX_VALUE); + final List<FeedItem> newItems = DBReader.getNewItemsList(0, Integer.MAX_VALUE, SortOrder.DATE_NEW_OLD); candidates = new ArrayList<>(queue.size() + newItems.size()); candidates.addAll(queue); for (FeedItem newItem : newItems) { diff --git a/core/src/main/java/de/danoeh/antennapod/core/storage/DBReader.java b/core/src/main/java/de/danoeh/antennapod/core/storage/DBReader.java index 62b1db3cb..b76284347 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/storage/DBReader.java +++ b/core/src/main/java/de/danoeh/antennapod/core/storage/DBReader.java @@ -328,12 +328,12 @@ public final class DBReader { * @param limit The maximum number of episodes that should be loaded. * @return A list of FeedItems that are considered new. */ - public static List<FeedItem> getNewItemsList(int offset, int limit) { + public static List<FeedItem> getNewItemsList(int offset, int limit, SortOrder sortOrder) { Log.d(TAG, "getNewItemsList() called"); PodDBAdapter adapter = PodDBAdapter.getInstance(); adapter.open(); - try (Cursor cursor = adapter.getNewItemsCursor(offset, limit)) { + try (Cursor cursor = adapter.getNewItemsCursor(offset, limit, sortOrder)) { List<FeedItem> items = extractItemlistFromCursor(adapter, cursor); loadAdditionalFeedItemListData(items); return items; diff --git a/core/src/test/java/de/danoeh/antennapod/core/storage/DbReaderTest.java b/core/src/test/java/de/danoeh/antennapod/core/storage/DbReaderTest.java index c44c6ae43..886c6821b 100644 --- a/core/src/test/java/de/danoeh/antennapod/core/storage/DbReaderTest.java +++ b/core/src/test/java/de/danoeh/antennapod/core/storage/DbReaderTest.java @@ -10,9 +10,11 @@ import java.util.List; import java.util.Random; import androidx.test.platform.app.InstrumentationRegistry; + import de.danoeh.antennapod.model.feed.Feed; import de.danoeh.antennapod.model.feed.FeedItem; import de.danoeh.antennapod.model.feed.FeedMedia; +import de.danoeh.antennapod.model.feed.SortOrder; import de.danoeh.antennapod.storage.preferences.UserPreferences; import de.danoeh.antennapod.core.util.LongList; import de.danoeh.antennapod.storage.database.PodDBAdapter; @@ -281,7 +283,7 @@ public class DbReaderTest { for (int i = 0; i < newItems.size(); i++) { unreadIds[i] = newItems.get(i).getId(); } - List<FeedItem> newItemsSaved = DBReader.getNewItemsList(0, Integer.MAX_VALUE); + List<FeedItem> newItemsSaved = DBReader.getNewItemsList(0, Integer.MAX_VALUE, SortOrder.DATE_NEW_OLD); assertNotNull(newItemsSaved); assertEquals(newItemsSaved.size(), newItems.size()); for (FeedItem feedItem : newItemsSaved) { |