diff options
Diffstat (limited to 'src/Navigation.tsx')
-rw-r--r-- | src/Navigation.tsx | 46 |
1 files changed, 19 insertions, 27 deletions
diff --git a/src/Navigation.tsx b/src/Navigation.tsx index c68cb0580..35d8dff74 100644 --- a/src/Navigation.tsx +++ b/src/Navigation.tsx @@ -1,5 +1,4 @@ import * as React from 'react' -import {StyleSheet} from 'react-native' import { NavigationContainer, createNavigationContainerRef, @@ -25,7 +24,6 @@ import { import {BottomBar} from './view/shell/bottom-bar/BottomBar' import {buildStateObject} from 'lib/routes/helpers' import {State, RouteParams} from 'lib/routes/types' -import {colors} from 'lib/styles' import {isAndroid, isNative} from 'platform/detection' import {useColorSchemeStyle} from 'lib/hooks/useColorSchemeStyle' import {router} from './routes' @@ -41,6 +39,7 @@ import { setEmailConfirmationRequested, } from './state/shell/reminders' import {init as initAnalytics} from './lib/analytics/analytics' +import {useWebScrollRestoration} from './lib/hooks/useWebScrollRestoration' import {HomeScreen} from './view/screens/Home' import {SearchScreen} from './view/screens/Search' @@ -61,7 +60,7 @@ import {ProfileListScreen} from './view/screens/ProfileList' import {PostThreadScreen} from './view/screens/PostThread' import {PostLikedByScreen} from './view/screens/PostLikedBy' import {PostRepostedByScreen} from './view/screens/PostRepostedBy' -import {DebugScreen} from './view/screens/DebugNew' +import {Storybook} from './view/screens/Storybook' import {LogScreen} from './view/screens/Log' import {SupportScreen} from './view/screens/Support' import {PrivacyPolicyScreen} from './view/screens/PrivacyPolicy' @@ -144,7 +143,7 @@ function commonScreens(Stack: typeof HomeTab, unreadCountLabel?: string) { name="Profile" getComponent={() => ProfileScreen} options={({route}) => ({ - title: title(msg`@${route.params.name}`), + title: bskyTitle(`@${route.params.name}`, unreadCountLabel), animation: 'none', })} /> @@ -200,8 +199,8 @@ function commonScreens(Stack: typeof HomeTab, unreadCountLabel?: string) { /> <Stack.Screen name="Debug" - getComponent={() => DebugScreen} - options={{title: title(msg`Debug`), requireAuth: true}} + getComponent={() => Storybook} + options={{title: title(msg`Storybook`), requireAuth: true}} /> <Stack.Screen name="Log" @@ -299,7 +298,7 @@ function TabsNavigator() { } function HomeTabNavigator() { - const contentStyle = useColorSchemeStyle(styles.bgLight, styles.bgDark) + const pal = usePalette('default') return ( <HomeTab.Navigator @@ -309,7 +308,7 @@ function HomeTabNavigator() { fullScreenGestureEnabled: true, headerShown: false, animationDuration: 250, - contentStyle, + contentStyle: pal.view, }}> <HomeTab.Screen name="Home" @@ -322,7 +321,7 @@ function HomeTabNavigator() { } function SearchTabNavigator() { - const contentStyle = useColorSchemeStyle(styles.bgLight, styles.bgDark) + const pal = usePalette('default') return ( <SearchTab.Navigator screenOptions={{ @@ -331,7 +330,7 @@ function SearchTabNavigator() { fullScreenGestureEnabled: true, headerShown: false, animationDuration: 250, - contentStyle, + contentStyle: pal.view, }}> <SearchTab.Screen name="Search" getComponent={() => SearchScreen} /> {commonScreens(SearchTab as typeof HomeTab)} @@ -340,7 +339,7 @@ function SearchTabNavigator() { } function FeedsTabNavigator() { - const contentStyle = useColorSchemeStyle(styles.bgLight, styles.bgDark) + const pal = usePalette('default') return ( <FeedsTab.Navigator screenOptions={{ @@ -349,7 +348,7 @@ function FeedsTabNavigator() { fullScreenGestureEnabled: true, headerShown: false, animationDuration: 250, - contentStyle, + contentStyle: pal.view, }}> <FeedsTab.Screen name="Feeds" @@ -362,7 +361,7 @@ function FeedsTabNavigator() { } function NotificationsTabNavigator() { - const contentStyle = useColorSchemeStyle(styles.bgLight, styles.bgDark) + const pal = usePalette('default') return ( <NotificationsTab.Navigator screenOptions={{ @@ -371,7 +370,7 @@ function NotificationsTabNavigator() { fullScreenGestureEnabled: true, headerShown: false, animationDuration: 250, - contentStyle, + contentStyle: pal.view, }}> <NotificationsTab.Screen name="Notifications" @@ -384,7 +383,7 @@ function NotificationsTabNavigator() { } function MyProfileTabNavigator() { - const contentStyle = useColorSchemeStyle(styles.bgLight, styles.bgDark) + const pal = usePalette('default') return ( <MyProfileTab.Navigator screenOptions={{ @@ -393,7 +392,7 @@ function MyProfileTabNavigator() { fullScreenGestureEnabled: true, headerShown: false, animationDuration: 250, - contentStyle, + contentStyle: pal.view, }}> <MyProfileTab.Screen // @ts-ignore // TODO: fix this broken type in ProfileScreen @@ -415,16 +414,18 @@ function MyProfileTabNavigator() { const FlatNavigator = () => { const pal = usePalette('default') const numUnread = useUnreadNotifications() - + const screenListeners = useWebScrollRestoration() const title = (page: MessageDescriptor) => bskyTitle(i18n._(page), numUnread) + return ( <Flat.Navigator + screenListeners={screenListeners} screenOptions={{ gestureEnabled: true, fullScreenGestureEnabled: true, headerShown: false, animationDuration: 250, - contentStyle: [pal.view], + contentStyle: pal.view, }}> <Flat.Screen name="Home" @@ -620,15 +621,6 @@ function handleLink(url: string) { } } -const styles = StyleSheet.create({ - bgDark: { - backgroundColor: colors.black, - }, - bgLight: { - backgroundColor: colors.white, - }, -}) - let didInit = false function logModuleInitTime() { if (didInit) { |