summaryrefslogtreecommitdiffstats
path: root/app/src/main/java/app/fedilab/android/ui/fragment/timeline/FragmentMastodonNotification.java
diff options
context:
space:
mode:
Diffstat (limited to 'app/src/main/java/app/fedilab/android/ui/fragment/timeline/FragmentMastodonNotification.java')
-rw-r--r--app/src/main/java/app/fedilab/android/ui/fragment/timeline/FragmentMastodonNotification.java12
1 files changed, 8 insertions, 4 deletions
diff --git a/app/src/main/java/app/fedilab/android/ui/fragment/timeline/FragmentMastodonNotification.java b/app/src/main/java/app/fedilab/android/ui/fragment/timeline/FragmentMastodonNotification.java
index 3a07d55ed..0bef27f8d 100644
--- a/app/src/main/java/app/fedilab/android/ui/fragment/timeline/FragmentMastodonNotification.java
+++ b/app/src/main/java/app/fedilab/android/ui/fragment/timeline/FragmentMastodonNotification.java
@@ -387,7 +387,7 @@ public class FragmentMastodonNotification extends Fragment implements Notificati
}
timelineParams.excludeType = getExcludeType();
timelineParams.fetchingMissing = fetchingMissing;
- if (useCache) {
+ if (useCache && direction != FragmentMastodonTimeline.DIRECTION.SCROLL_TOP && direction != FragmentMastodonTimeline.DIRECTION.FETCH_NEW) {
getCachedNotifications(direction, fetchingMissing, timelineParams);
} else {
getLiveNotifications(direction, fetchingMissing, timelineParams, notificationToUpdate);
@@ -430,10 +430,14 @@ public class FragmentMastodonNotification extends Fragment implements Notificati
} else if (direction == FragmentMastodonTimeline.DIRECTION.REFRESH) {
notificationsVM.getNotifications(notificationList, timelineParams)
.observe(getViewLifecycleOwner(), notificationsRefresh -> {
- if (notificationAdapter != null) {
- dealWithPagination(notificationsRefresh, FragmentMastodonTimeline.DIRECTION.REFRESH, true, null);
+ if (notificationsRefresh == null || notificationsRefresh.notifications == null || notificationsRefresh.notifications.size() == 0) {
+ getLiveNotifications(direction, fetchingMissing, timelineParams, null);
} else {
- initializeNotificationView(notificationsRefresh);
+ if (notificationAdapter != null) {
+ dealWithPagination(notificationsRefresh, FragmentMastodonTimeline.DIRECTION.REFRESH, true, null);
+ } else {
+ initializeNotificationView(notificationsRefresh);
+ }
}
});
}