diff options
author | Eric Bailey <git@esb.lol> | 2023-11-27 19:17:09 -0600 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-11-27 17:17:09 -0800 |
commit | d4714baf13561236a85d44fec144f7f27a149bfd (patch) | |
tree | eea0aaf64ecd087c1bd9717ab7be8f43560bab4d /src/view/screens/Home.tsx | |
parent | a741a201b990e35e96ea22bd8c503923db4683f9 (diff) | |
download | voidsky-d4714baf13561236a85d44fec144f7f27a149bfd.tar.zst |
[PWI] Home (#2007)
* Fix up home page * Fix spacing * Remove unused default tab * Update logic
Diffstat (limited to 'src/view/screens/Home.tsx')
-rw-r--r-- | src/view/screens/Home.tsx | 46 |
1 files changed, 16 insertions, 30 deletions
diff --git a/src/view/screens/Home.tsx b/src/view/screens/Home.tsx index 015c436f4..ad9b6f7f4 100644 --- a/src/view/screens/Home.tsx +++ b/src/view/screens/Home.tsx @@ -17,13 +17,8 @@ import {useSession} from '#/state/session' type Props = NativeStackScreenProps<HomeTabNavigatorParams, 'Home'> export function HomeScreen(props: Props) { - const {hasSession} = useSession() const {data: preferences} = usePreferencesQuery() - if (!hasSession) { - return <HomeScreenPublic /> - } - if (preferences) { return <HomeScreenReady {...props} preferences={preferences} /> } else { @@ -35,35 +30,12 @@ export function HomeScreen(props: Props) { } } -function HomeScreenPublic() { - const setMinimalShellMode = useSetMinimalShellMode() - const setDrawerSwipeDisabled = useSetDrawerSwipeDisabled() - - const renderCustomFeedEmptyState = React.useCallback(() => { - return <CustomFeedEmptyState /> - }, []) - - useFocusEffect( - React.useCallback(() => { - setMinimalShellMode(false) - setDrawerSwipeDisabled(false) - }, [setDrawerSwipeDisabled, setMinimalShellMode]), - ) - - return ( - <FeedPage - isPageFocused - feed={`feedgen|at://did:plc:z72i7hdynmk6r22z27h6tvur/app.bsky.feed.generator/whats-hot`} - renderEmptyState={renderCustomFeedEmptyState} - /> - ) -} - function HomeScreenReady({ preferences, }: Props & { preferences: UsePreferencesQueryResponse }) { + const {hasSession} = useSession() const setMinimalShellMode = useSetMinimalShellMode() const setDrawerSwipeDisabled = useSetDrawerSwipeDisabled() const [selectedPage, setSelectedPage] = React.useState(0) @@ -144,7 +116,7 @@ function HomeScreenReady({ return <CustomFeedEmptyState /> }, []) - return ( + return hasSession ? ( <Pager testID="homeScreen" onPageSelected={onPageSelected} @@ -172,6 +144,20 @@ function HomeScreenReady({ ) })} </Pager> + ) : ( + <Pager + testID="homeScreen" + onPageSelected={onPageSelected} + onPageScrollStateChanged={onPageScrollStateChanged} + renderTabBar={renderTabBar} + tabBarPosition="top"> + <FeedPage + testID="customFeedPage" + isPageFocused + feed={`feedgen|at://did:plc:z72i7hdynmk6r22z27h6tvur/app.bsky.feed.generator/whats-hot`} + renderEmptyState={renderCustomFeedEmptyState} + /> + </Pager> ) } |