Skip to content

Commit 0da9c4f

Browse files
authored
Merge pull request #117 from blacksky-algorithms/fix/community-load-latest
fix: add load-latest button to community feed
2 parents ecfcf88 + cf4c886 commit 0da9c4f

1 file changed

Lines changed: 11 additions & 1 deletion

File tree

src/view/com/feeds/CommunityFeedPage.tsx

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ import {isThreadChildAt, isThreadParentAt} from '#/view/com/posts/PostFeed'
1818
import {ViewFullThread} from '#/view/com/posts/ViewFullThread'
1919
import {FAB} from '#/view/com/util/fab/FAB'
2020
import {List, type ListMethods} from '#/view/com/util/List'
21+
import {LoadLatestBtn} from '#/view/com/util/load-latest/LoadLatestBtn'
2122
import {MainScrollProvider} from '#/view/com/util/MainScrollProvider'
2223
import {atoms as a, useTheme} from '#/alf'
2324
import {useHeaderOffset} from '#/components/hooks/useHeaderOffset'
@@ -113,6 +114,7 @@ export function CommunityFeedPage({isPageFocused}: {isPageFocused: boolean}) {
113114
}, [slices])
114115

115116
const [isRefreshing, setIsRefreshing] = useState(false)
117+
const [isScrolledDown, setIsScrolledDown] = useState(false)
116118
const onRefresh = useCallback(async () => {
117119
setIsRefreshing(true)
118120
try {
@@ -132,7 +134,7 @@ export function CommunityFeedPage({isPageFocused}: {isPageFocused: boolean}) {
132134
return () => clearInterval(id)
133135
}, [isPageFocused, refetch])
134136

135-
const _onScrollToTop = useCallback(() => {
137+
const onPressLoadLatest = useCallback(() => {
136138
scrollElRef.current?.scrollToOffset({
137139
animated: IS_NATIVE,
138140
offset: -headerOffset,
@@ -251,8 +253,16 @@ export function CommunityFeedPage({isPageFocused}: {isPageFocused: boolean}) {
251253
contentContainerStyle={{paddingBottom: 100}}
252254
refreshing={isRefreshing}
253255
onRefresh={onRefresh}
256+
onScrolledDownChange={setIsScrolledDown}
254257
/>
255258
</MainScrollProvider>
259+
{isScrolledDown && (
260+
<LoadLatestBtn
261+
onPress={onPressLoadLatest}
262+
label={_(msg`Load new posts`)}
263+
showIndicator={false}
264+
/>
265+
)}
256266
{hasSession && (
257267
<FAB
258268
testID="composeFAB"

0 commit comments

Comments
 (0)