diff --git a/mastodon/src/main/java/org/joinmastodon/android/fragments/HomeTimelineFragment.java b/mastodon/src/main/java/org/joinmastodon/android/fragments/HomeTimelineFragment.java index 473450a29..4b7196464 100644 --- a/mastodon/src/main/java/org/joinmastodon/android/fragments/HomeTimelineFragment.java +++ b/mastodon/src/main/java/org/joinmastodon/android/fragments/HomeTimelineFragment.java @@ -74,6 +74,13 @@ public class HomeTimelineFragment extends StatusListFragment{ loadData(); } + private List filterPosts(List items) { + return items.stream().filter(i -> + (GlobalUserPreferences.showReplies || i.inReplyToId == null) && + (GlobalUserPreferences.showBoosts || i.reblog == null) + ).collect(Collectors.toList()); + } + @Override protected void doLoadData(int offset, int count){ AccountSessionManager.getInstance() @@ -83,11 +90,7 @@ public class HomeTimelineFragment extends StatusListFragment{ public void onSuccess(CacheablePaginatedResponse> result){ if(getActivity()==null) return; - List filteredItems = result.items.stream().filter(i -> - (GlobalUserPreferences.showReplies || i.inReplyToId == null) && - (GlobalUserPreferences.showBoosts || i.reblog == null) - ).collect(Collectors.toList()); - + List filteredItems = filterPosts(result.items); onDataLoaded(filteredItems, !result.items.isEmpty()); maxID=result.maxID; if(result.isFromCache()) @@ -170,6 +173,7 @@ public class HomeTimelineFragment extends StatusListFragment{ public void onSuccess(List result){ currentRequest=null; dataLoading=false; + result = filterPosts(result); if(result.isEmpty() || getActivity()==null) return; Status last=result.get(result.size()-1);