summaryrefslogtreecommitdiffstats
path: root/app/src/main/java/app/fedilab/android/ui/fragment/timeline/FragmentMastodonTimeline.java
diff options
context:
space:
mode:
Diffstat (limited to 'app/src/main/java/app/fedilab/android/ui/fragment/timeline/FragmentMastodonTimeline.java')
-rw-r--r--app/src/main/java/app/fedilab/android/ui/fragment/timeline/FragmentMastodonTimeline.java27
1 files changed, 26 insertions, 1 deletions
diff --git a/app/src/main/java/app/fedilab/android/ui/fragment/timeline/FragmentMastodonTimeline.java b/app/src/main/java/app/fedilab/android/ui/fragment/timeline/FragmentMastodonTimeline.java
index 1ae410459..cdc3462a4 100644
--- a/app/src/main/java/app/fedilab/android/ui/fragment/timeline/FragmentMastodonTimeline.java
+++ b/app/src/main/java/app/fedilab/android/ui/fragment/timeline/FragmentMastodonTimeline.java
@@ -177,7 +177,7 @@ public class FragmentMastodonTimeline extends Fragment implements StatusAdapter.
private String publicTrendsDomain;
private int lockForResumeCall;
private boolean isNotPinnedTimeline;
-
+ private int extraCalls;
//Allow to recreate data when detaching/attaching fragment
public void recreate() {
initialStatuses = null;
@@ -290,6 +290,7 @@ public class FragmentMastodonTimeline extends Fragment implements StatusAdapter.
//Only fragment in main view pager should not have the view initialized
//AND Only the first fragment will initialize its view
flagLoading = false;
+ extraCalls = -1;
}
@@ -454,12 +455,34 @@ public class FragmentMastodonTimeline extends Fragment implements StatusAdapter.
min_id = fetched_statuses.pagination.min_id;
}
}
+ int sizeBeforeFilter = 0;
+ int filteredMessage = 0;
+ int requestedMessages = MastodonHelper.statusesPerCall(requireActivity());
+ sizeBeforeFilter = fetched_statuses.statuses.size();
+ for (Status status : fetched_statuses.statuses) {
+ if (status.filteredByApp != null) {
+ filteredMessage++;
+ }
+ }
+ //TODO: keep for an improvement in beta
+ /*
+ int displayedMessages = sizeBeforeFilter - filteredMessage;
+ if(displayedMessages < 5 && extraCalls < 8) {
+ router(direction);
+ if(extraCalls == -1) {
+ extraCalls = 1;
+ } else {
+ extraCalls++;
+ }
+ }*/
} else if (direction == DIRECTION.BOTTOM) {
flagLoading = true;
}
if (direction == DIRECTION.SCROLL_TOP) {
binding.recyclerView.scrollToPosition(0);
}
+
+
}
/**
@@ -568,6 +591,7 @@ public class FragmentMastodonTimeline extends Fragment implements StatusAdapter.
flagLoading = true;
binding.loadingNextElements.setVisibility(View.VISIBLE);
router(DIRECTION.BOTTOM);
+ extraCalls = -1;
}
} else {
binding.loadingNextElements.setVisibility(View.GONE);
@@ -577,6 +601,7 @@ public class FragmentMastodonTimeline extends Fragment implements StatusAdapter.
flagLoading = true;
binding.loadingNextElements.setVisibility(View.VISIBLE);
router(DIRECTION.TOP);
+ extraCalls = -1;
}
}
}