diff options
author | Hailey <me@haileyok.com> | 2024-02-04 12:54:07 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-02-04 12:54:07 -0800 |
commit | 0bbe2c5e32f72e4aaf52d7e1f72b6076517caee7 (patch) | |
tree | 9587b5eb7183d969ec642f204a405a0cda7a7927 /src | |
parent | 250b48d5a2263833b6b7c2f9045a775396ff57e2 (diff) | |
download | voidsky-0bbe2c5e32f72e4aaf52d7e1f72b6076517caee7.tar.zst |
show bottom bar on web tablet breakpoints when logged out (signup cta) (#2747)
* show signup bottom bar on web tablet * show signup bottom bar on web tablet * comment * adjust load latest btn position based on logged in/out
Diffstat (limited to 'src')
-rw-r--r-- | src/view/com/util/load-latest/LoadLatestBtn.tsx | 10 | ||||
-rw-r--r-- | src/view/shell/createNativeStackNavigatorWithAuth.tsx | 10 |
2 files changed, 15 insertions, 5 deletions
diff --git a/src/view/com/util/load-latest/LoadLatestBtn.tsx b/src/view/com/util/load-latest/LoadLatestBtn.tsx index 970d3a73a..5fad11760 100644 --- a/src/view/com/util/load-latest/LoadLatestBtn.tsx +++ b/src/view/com/util/load-latest/LoadLatestBtn.tsx @@ -10,6 +10,7 @@ import Animated from 'react-native-reanimated' const AnimatedTouchableOpacity = Animated.createAnimatedComponent(TouchableOpacity) import {isWeb} from 'platform/detection' +import {useSession} from 'state/session' export function LoadLatestBtn({ onPress, @@ -21,9 +22,14 @@ export function LoadLatestBtn({ showIndicator: boolean }) { const pal = usePalette('default') - const {isDesktop, isTablet, isMobile} = useWebMediaQueries() + const {hasSession} = useSession() + const {isDesktop, isTablet, isMobile, isTabletOrMobile} = useWebMediaQueries() const {fabMinimalShellTransform} = useMinimalShellMode() + // Adjust height of the fab if we have a session only on mobile web. If we don't have a session, we want to adjust + // it on both tablet and mobile since we are showing the bottom bar (see createNativeStackNavigatorWithAuth) + const showBottomBar = hasSession ? isMobile : isTabletOrMobile + return ( <AnimatedTouchableOpacity style={[ @@ -32,7 +38,7 @@ export function LoadLatestBtn({ isTablet && styles.loadLatestTablet, pal.borderDark, pal.view, - isMobile && fabMinimalShellTransform, + showBottomBar && fabMinimalShellTransform, ]} onPress={onPress} hitSlop={HITSLOP_20} diff --git a/src/view/shell/createNativeStackNavigatorWithAuth.tsx b/src/view/shell/createNativeStackNavigatorWithAuth.tsx index 0f240ea00..938213c31 100644 --- a/src/view/shell/createNativeStackNavigatorWithAuth.tsx +++ b/src/view/shell/createNativeStackNavigatorWithAuth.tsx @@ -101,7 +101,7 @@ function NativeStackNavigator({ const onboardingState = useOnboardingState() const {showLoggedOut} = useLoggedOutView() const {setShowLoggedOut} = useLoggedOutViewControls() - const {isMobile} = useWebMediaQueries() + const {isMobile, isTabletOrMobile} = useWebMediaQueries() if ((!PWI_ENABLED || activeRouteRequiresAuth) && !hasSession) { return <LoggedOut /> } @@ -134,6 +134,10 @@ function NativeStackNavigator({ } } + // Show the bottom bar if we have a session only on mobile web. If we don't have a session, we want to show it + // on both tablet and mobile web so that we see the sign up CTA. + const showBottomBar = hasSession ? isMobile : isTabletOrMobile + return ( <NavigationContent> <NativeStackView @@ -142,8 +146,8 @@ function NativeStackNavigator({ navigation={navigation} descriptors={newDescriptors} /> - {isWeb && isMobile && <BottomBarWeb />} - {isWeb && !isMobile && ( + {isWeb && showBottomBar && <BottomBarWeb />} + {isWeb && !showBottomBar && ( <> <DesktopLeftNav /> <DesktopRightNav routeName={activeRoute.name} /> |