diff options
author | ByteHamster <info@bytehamster.com> | 2021-01-02 17:16:57 +0100 |
---|---|---|
committer | ByteHamster <info@bytehamster.com> | 2021-01-02 17:16:57 +0100 |
commit | b107e6da95ae9f9ba771a235252ada059bfa7791 (patch) | |
tree | 70c76860b960ffbb3fb2f277eeb5850f83f41fd6 /core/src/main/java | |
parent | 3ed33794327f547c8892d30958a78770dae56d45 (diff) | |
download | AntennaPod-b107e6da95ae9f9ba771a235252ada059bfa7791.zip |
Fixed crash when opening subscriptions screen
Diffstat (limited to 'core/src/main/java')
-rw-r--r-- | core/src/main/java/de/danoeh/antennapod/core/storage/DBReader.java | 8 | ||||
-rw-r--r-- | core/src/main/java/de/danoeh/antennapod/core/storage/NavDrawerData.java | 26 |
2 files changed, 29 insertions, 5 deletions
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 8721dcd08..e1bb93db3 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 @@ -868,18 +868,20 @@ public final class DBReader { List<NavDrawerData.DrawerItem> items = new ArrayList<>(); for (int i = 0, feedsSize = feeds.size(); i < feedsSize; i++) { - items.add(new NavDrawerData.FeedDrawerItem(feeds.get(i), 0, i)); + items.add(new NavDrawerData.FeedDrawerItem(feeds.get(i), 0, i, feedCounters.get(feeds.get(i).getId()))); } List<NavDrawerData.DrawerItem> folderItems = new ArrayList<>(); for (int i = 0, feedsSize = feeds.size(); i < feedsSize; i++) { - folderItems.add(new NavDrawerData.FeedDrawerItem(feeds.get(i), 1, 10001 + i)); + folderItems.add(new NavDrawerData.FeedDrawerItem(feeds.get(i), 1, 10001 + i, + feedCounters.get(feeds.get(i).getId()))); } items.add(new NavDrawerData.FolderDrawerItem("Folder 1", folderItems, 0, 10000)); List<NavDrawerData.DrawerItem> folderItems2 = new ArrayList<>(); for (int i = 0, feedsSize = feeds.size(); i < feedsSize; i++) { - folderItems2.add(new NavDrawerData.FeedDrawerItem(feeds.get(i), 1, 20001 + i)); + folderItems2.add(new NavDrawerData.FeedDrawerItem(feeds.get(i), 1, 20001 + i, + feedCounters.get(feeds.get(i).getId()))); } items.add(new NavDrawerData.FolderDrawerItem("Folder 2", folderItems2, 0, 20000)); diff --git a/core/src/main/java/de/danoeh/antennapod/core/storage/NavDrawerData.java b/core/src/main/java/de/danoeh/antennapod/core/storage/NavDrawerData.java index 05ca7ffe1..8d917d81b 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/storage/NavDrawerData.java +++ b/core/src/main/java/de/danoeh/antennapod/core/storage/NavDrawerData.java @@ -27,7 +27,7 @@ public class NavDrawerData { this.reclaimableSpace = reclaimableSpace; } - public static class DrawerItem { + public abstract static class DrawerItem { public enum Type { FOLDER, FEED } @@ -41,6 +41,10 @@ public class NavDrawerData { this.layer = layer; this.id = id; } + + public abstract String getTitle(); + + public abstract int getCounter(); } public static class FolderDrawerItem extends DrawerItem { @@ -52,14 +56,32 @@ public class NavDrawerData { this.children = children; this.name = name; } + + public String getTitle() { + return name; + } + + public int getCounter() { + return -1; + } } public static class FeedDrawerItem extends DrawerItem { public final Feed feed; + public final int counter; - public FeedDrawerItem(Feed feed, int layer, long id) { + public FeedDrawerItem(Feed feed, int layer, long id, int counter) { super(DrawerItem.Type.FEED, layer, id); this.feed = feed; + this.counter = counter; + } + + public String getTitle() { + return feed.getTitle(); + } + + public int getCounter() { + return counter; } } } |