From 7fa52247e8a71ad5009c6ca404e22f91857e6c08 Mon Sep 17 00:00:00 2001 From: sk Date: Mon, 16 Jan 2023 19:46:44 +0100 Subject: [PATCH] display unread announcements first closes sk22#274 --- .../android/fragments/AnnouncementsFragment.java | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/mastodon/src/main/java/org/joinmastodon/android/fragments/AnnouncementsFragment.java b/mastodon/src/main/java/org/joinmastodon/android/fragments/AnnouncementsFragment.java index eb03ddd78..b2b42bc7e 100644 --- a/mastodon/src/main/java/org/joinmastodon/android/fragments/AnnouncementsFragment.java +++ b/mastodon/src/main/java/org/joinmastodon/android/fragments/AnnouncementsFragment.java @@ -1,5 +1,7 @@ package org.joinmastodon.android.fragments; +import static java.util.stream.Collectors.toList; + import android.app.Activity; import android.os.Bundle; import android.text.TextUtils; @@ -34,6 +36,7 @@ import java.util.ArrayList; import java.util.Collections; import java.util.List; import java.util.stream.Collectors; +import java.util.stream.Stream; import me.grishka.appkit.Nav; import me.grishka.appkit.api.PaginatedList; @@ -87,19 +90,17 @@ public class AnnouncementsFragment extends BaseStatusListFragment public void onItemClick(String id) { } - @Override - protected void onDataLoaded(List d, boolean more) { - unreadIDs = d.stream().filter(a -> !a.read).map(a -> a.id).collect(Collectors.toList()); - super.onDataLoaded(d, more); - } - @Override protected void doLoadData(int offset, int count){ currentRequest=new GetAnnouncements(true) .setCallback(new SimpleCallback<>(this){ @Override public void onSuccess(List result){ - onDataLoaded(result, false); + List unread = result.stream().filter(a -> !a.read).collect(toList()); + List read = result.stream().filter(a -> a.read).collect(toList()); + onDataLoaded(unread, true); + onDataLoaded(read, false); + unreadIDs = unread.stream().map(a -> a.id).collect(toList()); } }) .exec(accountID);