about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/components/Lists.tsx16
-rw-r--r--src/screens/Messages/List/index.tsx4
2 files changed, 18 insertions, 2 deletions
diff --git a/src/components/Lists.tsx b/src/components/Lists.tsx
index 8cbe2810e..47a5bf8f1 100644
--- a/src/components/Lists.tsx
+++ b/src/components/Lists.tsx
@@ -13,12 +13,14 @@ import {Text} from '#/components/Typography'
 
 export function ListFooter({
   isFetchingNextPage,
+  hasNextPage,
   error,
   onRetry,
   height,
   style,
 }: {
   isFetchingNextPage?: boolean
+  hasNextPage?: boolean
   error?: string
   onRetry?: () => Promise<unknown>
   height?: number
@@ -40,7 +42,19 @@ export function ListFooter({
       {isFetchingNextPage ? (
         <Loader size="xl" />
       ) : (
-        <ListFooterMaybeError error={error} onRetry={onRetry} />
+        <>
+          {error ? (
+            <ListFooterMaybeError error={error} onRetry={onRetry} />
+          ) : (
+            <>
+              {!hasNextPage && (
+                <Text style={[a.text_sm, t.atoms.text_contrast_low]}>
+                  <Trans>End of list</Trans>
+                </Text>
+              )}
+            </>
+          )}
+        </>
       )}
     </View>
   )
diff --git a/src/screens/Messages/List/index.tsx b/src/screens/Messages/List/index.tsx
index d083ae5ba..a0a1d4f80 100644
--- a/src/screens/Messages/List/index.tsx
+++ b/src/screens/Messages/List/index.tsx
@@ -9,6 +9,7 @@ import {useInitialNumToRender} from '#/lib/hooks/useInitialNumToRender'
 import {MessagesTabNavigatorParams} from '#/lib/routes/types'
 import {cleanError} from '#/lib/strings/errors'
 import {logger} from '#/logger'
+import {isNative} from '#/platform/detection'
 import {useListConvos} from '#/state/queries/messages/list-converations'
 import {List} from '#/view/com/util/List'
 import {ViewHeader} from '#/view/com/util/ViewHeader'
@@ -248,9 +249,10 @@ export function MessagesScreen({navigation, route}: Props) {
             error={cleanError(error)}
             onRetry={fetchNextPage}
             style={{borderColor: 'transparent'}}
+            hasNextPage={hasNextPage}
           />
         }
-        onEndReachedThreshold={3}
+        onEndReachedThreshold={isNative ? 1.5 : 0}
         initialNumToRender={initialNumToRender}
         windowSize={11}
         // @ts-ignore our .web version only -sfn