Show the splash screen during session resumption (close #186) (#199)

This commit is contained in:
Paul Frazee
2023-02-14 16:54:47 -06:00
committed by GitHub
parent f331fb9c75
commit 9b08fb93a0
2 changed files with 24 additions and 8 deletions
+14 -7
View File
@@ -8,6 +8,7 @@ import {Text} from '../com/util/text/Text'
import {ErrorBoundary} from '../com/util/ErrorBoundary'
import {colors} from '../lib/styles'
import {usePalette} from '../lib/hooks/usePalette'
import {useStores} from '../../state'
import {CLOUD_SPLASH} from '../lib/assets'
import {useAnalytics} from '@segment/analytics-react-native'
@@ -59,22 +60,28 @@ const SigninOrCreateAccount = ({
export const Login = observer(() => {
const pal = usePalette('default')
const store = useStores()
const [screenState, setScreenState] = useState<ScreenState>(
ScreenState.S_SigninOrCreateAccount,
)
if (screenState === ScreenState.S_SigninOrCreateAccount) {
if (
store.session.isResumingSession ||
screenState === ScreenState.S_SigninOrCreateAccount
) {
return (
<View style={styles.container}>
<FastImage source={CLOUD_SPLASH as FISource} style={styles.bgImg} />
<SafeAreaView testID="noSessionView" style={styles.container}>
<ErrorBoundary>
<SigninOrCreateAccount
onPressSignin={() => setScreenState(ScreenState.S_Signin)}
onPressCreateAccount={() =>
setScreenState(ScreenState.S_CreateAccount)
}
/>
{!store.session.isResumingSession && (
<SigninOrCreateAccount
onPressSignin={() => setScreenState(ScreenState.S_Signin)}
onPressCreateAccount={() =>
setScreenState(ScreenState.S_CreateAccount)
}
/>
)}
</ErrorBoundary>
</SafeAreaView>
</View>