From 4a01664b8147857e878222b3f93073181afe3117 Mon Sep 17 00:00:00 2001
From: Adam Grzybowski <adam.grzybowski@swmansion.com>
Date: Wed, 31 Jan 2024 11:38:09 +0100
Subject: [PATCH 1/2] add temporary fix for splash screen

---
 src/Expensify.js | 15 +++++++++++++--
 1 file changed, 13 insertions(+), 2 deletions(-)

diff --git a/src/Expensify.js b/src/Expensify.js
index 407e5ae09c2d..be01159c95d7 100644
--- a/src/Expensify.js
+++ b/src/Expensify.js
@@ -4,6 +4,7 @@ import React, {useCallback, useEffect, useLayoutEffect, useMemo, useRef, useStat
 import {AppState, Linking} from 'react-native';
 import Onyx, {withOnyx} from 'react-native-onyx';
 import _ from 'underscore';
+import getTopmostBottomTabRoute from '@libs/Navigation/getTopmostBottomTabRoute';
 import ConfirmModal from './components/ConfirmModal';
 import DeeplinkWrapper from './components/DeeplinkWrapper';
 import EmojiPicker from './components/EmojiPicker/EmojiPicker';
@@ -23,7 +24,7 @@ import compose from './libs/compose';
 import * as Growl from './libs/Growl';
 import Log from './libs/Log';
 import migrateOnyx from './libs/migrateOnyx';
-import Navigation from './libs/Navigation/Navigation';
+import Navigation, {navigationRef} from './libs/Navigation/Navigation';
 import NavigationRoot from './libs/Navigation/NavigationRoot';
 import NetworkConnection from './libs/NetworkConnection';
 import PushNotification from './libs/Notification/PushNotification';
@@ -37,6 +38,7 @@ import Visibility from './libs/Visibility';
 import ONYXKEYS from './ONYXKEYS';
 import PopoverReportActionContextMenu from './pages/home/report/ContextMenu/PopoverReportActionContextMenu';
 import * as ReportActionContextMenu from './pages/home/report/ContextMenu/ReportActionContextMenu';
+import SCREENS from './SCREENS';
 
 Onyx.registerLogger(({level, message}) => {
     if (level === 'alert') {
@@ -130,7 +132,16 @@ function Expensify(props) {
         [isSplashHidden],
     );
 
-    const shouldInit = isNavigationReady && (!isAuthenticated || props.isSidebarLoaded) && hasAttemptedToOpenPublicRoom;
+    // This is a temporary fix to handle more that one possible screen in the sidebar.
+    const isSidebarLoaded = useMemo(() => {
+        if (!isNavigationReady) {
+            return false;
+        }
+
+        return getTopmostBottomTabRoute(navigationRef.getState()).name === SCREENS.HOME ? props.isSidebarLoaded : true;
+    }, [isNavigationReady, props.isSidebarLoaded]);
+
+    const shouldInit = isNavigationReady && (!isAuthenticated || isSidebarLoaded) && hasAttemptedToOpenPublicRoom;
     const shouldHideSplash = shouldInit && !isSplashHidden;
 
     const initializeClient = () => {

From a47c9b2644e3c497656e040720f5ec4969344416 Mon Sep 17 00:00:00 2001
From: Adam Grzybowski <adam.grzybowski@swmansion.com>
Date: Wed, 31 Jan 2024 11:50:46 +0100
Subject: [PATCH 2/2] fix lint

---
 src/Expensify.js | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/Expensify.js b/src/Expensify.js
index be01159c95d7..d9282229b749 100644
--- a/src/Expensify.js
+++ b/src/Expensify.js
@@ -4,7 +4,6 @@ import React, {useCallback, useEffect, useLayoutEffect, useMemo, useRef, useStat
 import {AppState, Linking} from 'react-native';
 import Onyx, {withOnyx} from 'react-native-onyx';
 import _ from 'underscore';
-import getTopmostBottomTabRoute from '@libs/Navigation/getTopmostBottomTabRoute';
 import ConfirmModal from './components/ConfirmModal';
 import DeeplinkWrapper from './components/DeeplinkWrapper';
 import EmojiPicker from './components/EmojiPicker/EmojiPicker';
@@ -24,6 +23,7 @@ import compose from './libs/compose';
 import * as Growl from './libs/Growl';
 import Log from './libs/Log';
 import migrateOnyx from './libs/migrateOnyx';
+import getTopmostBottomTabRoute from './libs/Navigation/getTopmostBottomTabRoute';
 import Navigation, {navigationRef} from './libs/Navigation/Navigation';
 import NavigationRoot from './libs/Navigation/NavigationRoot';
 import NetworkConnection from './libs/NetworkConnection';