From 65c3bff706e36782e10265943144c530708abaef Mon Sep 17 00:00:00 2001 From: jan Date: Tue, 7 Mar 2023 23:53:48 +0100 Subject: [PATCH] ui fixes --- src/caj/Navigation.tsx | 45 ++++++++--- src/caj/components/NotLoggedIn.tsx | 4 +- src/caj/components/chat/listChats.tsx | 7 +- src/caj/components/chat/screen/main.tsx | 80 ++++++++++++------- src/caj/components/simple/Skeleton.tsx | 6 +- .../components/userUI/AccountInfoBanner.tsx | 4 +- src/caj/tabs/main/ChatTab.tsx | 10 +++ src/caj/user/MyUserManager.ts | 3 +- src/caj/user/UserManager.ts | 1 + src/caj/user/types.ts | 4 +- 10 files changed, 116 insertions(+), 48 deletions(-) diff --git a/src/caj/Navigation.tsx b/src/caj/Navigation.tsx index 0eaf78a..6979615 100644 --- a/src/caj/Navigation.tsx +++ b/src/caj/Navigation.tsx @@ -1,6 +1,6 @@ import React, {useState, useEffect} from 'react'; -import {StyleSheet, Appearance, Dimensions} from 'react-native'; +import {StyleSheet, Appearance, Dimensions, Platform} from 'react-native'; import {SafeAreaProvider, SafeAreaView} from 'react-native-safe-area-context'; import {useSelector, useDispatch} from 'react-redux'; @@ -16,9 +16,11 @@ import {Box, Input, VStack, Center, Avatar, Text, Button} from 'native-base'; import {View} from 'react-native'; import { + getFocusedRouteNameFromRoute, LinkingOptions, NavigationContainer, NavigatorScreenParams, + RouteProp, useNavigation, } from '@react-navigation/native'; import { @@ -44,9 +46,7 @@ import { LoginStackNavigatorParamList, RegisterScreenAnim, } from './components/NotLoggedIn'; -import ChatMainScreen, { - ChatMainStackNavigatorParamList, -} from './components/chat/screen/main'; +import ChatMainScreen from './components/chat/screen/main'; import ChatScreenStack from './components/chat/screen/main'; const styles = StyleSheet.create({ @@ -63,7 +63,6 @@ export const linking: LinkingOptions<{}> = { export type RootStackNavigatorParamList = { Home: NavigatorScreenParams; Register: NavigatorScreenParams; - Chat: NavigatorScreenParams; }; export type RootScreenNavigationProp = @@ -73,11 +72,12 @@ export default function Navigation() { return ( - ); @@ -92,6 +92,9 @@ export type HomeStackNavigatorParamList = { ChatList: NavigatorScreenParams; }; +export type HomeScreenNavigationProp = + NativeStackNavigationProp; + function AccountTabAnim(props: any) { return ( @@ -123,12 +126,34 @@ function ChatTabAnim(props: any) { } function HomeStack() { + const getTabBarVisibility = ( + route: RouteProp, + ) => { + const routeName = getFocusedRouteNameFromRoute(route); + const hideOnScreens = ['Chat']; // put here name of screen where you want to hide tabBar + if (routeName !== undefined) { + return hideOnScreens.indexOf(routeName) <= -1; + } else { + return true; + } + }; + return ( - + { + return { + tabBarStyle: { + display: getTabBarVisibility(route) ? 'flex' : 'none', + }, + }; + }} + /> ); } diff --git a/src/caj/components/NotLoggedIn.tsx b/src/caj/components/NotLoggedIn.tsx index d745d13..f19dde9 100644 --- a/src/caj/components/NotLoggedIn.tsx +++ b/src/caj/components/NotLoggedIn.tsx @@ -68,7 +68,7 @@ export default function NotLoggedIn() { ); const lang = useSelector((state: RootState) => state.appVariables.lang); - const theme = useSelector( + const theme = useSelector( (state: RootState) => state.appVariables.preferences.theme, ); @@ -81,7 +81,7 @@ export default function NotLoggedIn() { return ( {lang.appName} - {lang.appNameDesc} + {lang.appNameDesc}