diff options
author | Eric Bailey <git@esb.lol> | 2023-08-24 18:26:29 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-08-24 16:26:29 -0700 |
commit | 4654a9a45e68eeba289f2f35473fb2af60e754e2 (patch) | |
tree | 344ded1d3ff63def5f64c00c3abcee4258fad12f /src/view/screens/Home.tsx | |
parent | a5981e127f7e4e2a5ba44717b91b26161adc0a5e (diff) | |
download | voidsky-4654a9a45e68eeba289f2f35473fb2af60e754e2.tar.zst |
defer loading of feeds until visible (#1271)
* defer loading of feeds until visible * Fix: use existing hasLoaded * Fix: dont query for latest during initial load --------- Co-authored-by: Paul Frazee <pfrazee@gmail.com>
Diffstat (limited to 'src/view/screens/Home.tsx')
-rw-r--r-- | src/view/screens/Home.tsx | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/view/screens/Home.tsx b/src/view/screens/Home.tsx index b633e0e1c..9259d4bea 100644 --- a/src/view/screens/Home.tsx +++ b/src/view/screens/Home.tsx @@ -56,7 +56,6 @@ export const HomeScreen = withAuthRequired( const feeds = [] for (const feed of pinned) { const model = new PostsFeedModel(store, 'custom', {feed: feed.uri}) - model.setup() feeds.push(model) } pagerRef.current?.setPage(0) @@ -169,6 +168,13 @@ const FeedPage = observer( }) const isScreenFocused = useIsFocused() + React.useEffect(() => { + // called on first load + if (!feed.hasLoaded && isPageFocused) { + feed.setup() + } + }, [isPageFocused, feed]) + const doPoll = React.useCallback( (knownActive = false) => { if ( |