Move dialog outputs inside navigation context (#8511)

* Move all dialogs within NavigationContent on native

* Ok leave old ModalsContainer alone for now

* Do the same on web

* Gate browser consent dialog just to be clear
This commit is contained in:
Eric Bailey
2025-06-18 09:53:34 -05:00
committed by GitHub
parent 4da86e5864
commit f83335f110
5 changed files with 22 additions and 28 deletions
-2
View File
@@ -64,7 +64,6 @@ import {Shell} from '#/view/shell'
import {ThemeProvider as Alf} from '#/alf' import {ThemeProvider as Alf} from '#/alf'
import {useColorModeTheme} from '#/alf/util/useColorModeTheme' import {useColorModeTheme} from '#/alf/util/useColorModeTheme'
import {Provider as ContextMenuProvider} from '#/components/ContextMenu' import {Provider as ContextMenuProvider} from '#/components/ContextMenu'
import {NuxDialogs} from '#/components/dialogs/nuxs'
import {useStarterPackEntry} from '#/components/hooks/useStarterPackEntry' import {useStarterPackEntry} from '#/components/hooks/useStarterPackEntry'
import {Provider as IntentDialogProvider} from '#/components/intents/IntentDialogs' import {Provider as IntentDialogProvider} from '#/components/intents/IntentDialogs'
import {Provider as PortalProvider} from '#/components/Portal' import {Provider as PortalProvider} from '#/components/Portal'
@@ -157,7 +156,6 @@ function InnerApp() {
<IntentDialogProvider> <IntentDialogProvider>
<TestCtrls /> <TestCtrls />
<Shell /> <Shell />
<NuxDialogs />
</IntentDialogProvider> </IntentDialogProvider>
</GestureHandlerRootView> </GestureHandlerRootView>
</HideBottomBarBorderProvider> </HideBottomBarBorderProvider>
-2
View File
@@ -54,7 +54,6 @@ import {Shell} from '#/view/shell/index'
import {ThemeProvider as Alf} from '#/alf' import {ThemeProvider as Alf} from '#/alf'
import {useColorModeTheme} from '#/alf/util/useColorModeTheme' import {useColorModeTheme} from '#/alf/util/useColorModeTheme'
import {Provider as ContextMenuProvider} from '#/components/ContextMenu' import {Provider as ContextMenuProvider} from '#/components/ContextMenu'
import {NuxDialogs} from '#/components/dialogs/nuxs'
import {useStarterPackEntry} from '#/components/hooks/useStarterPackEntry' import {useStarterPackEntry} from '#/components/hooks/useStarterPackEntry'
import {Provider as IntentDialogProvider} from '#/components/intents/IntentDialogs' import {Provider as IntentDialogProvider} from '#/components/intents/IntentDialogs'
import {Provider as PortalProvider} from '#/components/Portal' import {Provider as PortalProvider} from '#/components/Portal'
@@ -135,7 +134,6 @@ function InnerApp() {
<HideBottomBarBorderProvider> <HideBottomBarBorderProvider>
<IntentDialogProvider> <IntentDialogProvider>
<Shell /> <Shell />
<NuxDialogs />
</IntentDialogProvider> </IntentDialogProvider>
</HideBottomBarBorderProvider> </HideBottomBarBorderProvider>
</ServiceConfigProvider> </ServiceConfigProvider>
@@ -40,6 +40,14 @@ import {Onboarding} from '#/screens/Onboarding'
import {SignupQueued} from '#/screens/SignupQueued' import {SignupQueued} from '#/screens/SignupQueued'
import {Takendown} from '#/screens/Takendown' import {Takendown} from '#/screens/Takendown'
import {atoms as a, useLayoutBreakpoints} from '#/alf' import {atoms as a, useLayoutBreakpoints} from '#/alf'
import {EmailDialog} from '#/components/dialogs/EmailDialog'
import {InAppBrowserConsentDialog} from '#/components/dialogs/InAppBrowserConsent'
import {LinkWarningDialog} from '#/components/dialogs/LinkWarning'
import {MutedWordsDialog} from '#/components/dialogs/MutedWords'
import {NuxDialogs} from '#/components/dialogs/nuxs'
import {SigninDialog} from '#/components/dialogs/Signin'
import {Outlet as PortalOutlet} from '#/components/Portal'
import {BottomSheetOutlet} from '#/../modules/bottom-sheet'
import {BottomBarWeb} from './bottom-bar/BottomBarWeb' import {BottomBarWeb} from './bottom-bar/BottomBarWeb'
import {DesktopLeftNav} from './desktop/LeftNav' import {DesktopLeftNav} from './desktop/LeftNav'
import {DesktopRightNav} from './desktop/RightNav' import {DesktopRightNav} from './desktop/RightNav'
@@ -167,6 +175,20 @@ function NativeStackNavigator({
{!isMobile && <DesktopRightNav routeName={activeRoute.name} />} {!isMobile && <DesktopRightNav routeName={activeRoute.name} />}
</> </>
)} )}
{/* Start: individual dialogs and outlets */}
<MutedWordsDialog />
<SigninDialog />
<EmailDialog />
<LinkWarningDialog />
{!isWeb && <InAppBrowserConsentDialog />}
<PortalOutlet />
<BottomSheetOutlet />
{/* End: individual dialogs and outlets */}
{/* Start: dialog controllers */}
<NuxDialogs />
{/* End: dialog controllers */}
</NavigationContent> </NavigationContent>
) )
} }
-14
View File
@@ -25,14 +25,7 @@ import {ModalsContainer} from '#/view/com/modals/Modal'
import {ErrorBoundary} from '#/view/com/util/ErrorBoundary' import {ErrorBoundary} from '#/view/com/util/ErrorBoundary'
import {atoms as a, select, useTheme} from '#/alf' import {atoms as a, select, useTheme} from '#/alf'
import {setSystemUITheme} from '#/alf/util/systemUI' import {setSystemUITheme} from '#/alf/util/systemUI'
import {EmailDialog} from '#/components/dialogs/EmailDialog'
import {InAppBrowserConsentDialog} from '#/components/dialogs/InAppBrowserConsent'
import {LinkWarningDialog} from '#/components/dialogs/LinkWarning'
import {MutedWordsDialog} from '#/components/dialogs/MutedWords'
import {SigninDialog} from '#/components/dialogs/Signin'
import {Outlet as PortalOutlet} from '#/components/Portal'
import {RoutesContainer, TabsNavigator} from '#/Navigation' import {RoutesContainer, TabsNavigator} from '#/Navigation'
import {BottomSheetOutlet} from '../../../modules/bottom-sheet'
import {updateActiveViewAsync} from '../../../modules/expo-bluesky-swiss-army/src/VisibilityView' import {updateActiveViewAsync} from '../../../modules/expo-bluesky-swiss-army/src/VisibilityView'
import {Composer} from './Composer' import {Composer} from './Composer'
import {DrawerContent} from './Drawer' import {DrawerContent} from './Drawer'
@@ -152,14 +145,7 @@ function ShellInner() {
</View> </View>
<Composer winHeight={winDim.height} /> <Composer winHeight={winDim.height} />
<ModalsContainer /> <ModalsContainer />
<MutedWordsDialog />
<SigninDialog />
<EmailDialog />
<InAppBrowserConsentDialog />
<LinkWarningDialog />
<Lightbox /> <Lightbox />
<PortalOutlet />
<BottomSheetOutlet />
</> </>
) )
} }
-10
View File
@@ -17,11 +17,6 @@ import {Lightbox} from '#/view/com/lightbox/Lightbox'
import {ModalsContainer} from '#/view/com/modals/Modal' import {ModalsContainer} from '#/view/com/modals/Modal'
import {ErrorBoundary} from '#/view/com/util/ErrorBoundary' import {ErrorBoundary} from '#/view/com/util/ErrorBoundary'
import {atoms as a, select, useTheme} from '#/alf' import {atoms as a, select, useTheme} from '#/alf'
import {EmailDialog} from '#/components/dialogs/EmailDialog'
import {LinkWarningDialog} from '#/components/dialogs/LinkWarning'
import {MutedWordsDialog} from '#/components/dialogs/MutedWords'
import {SigninDialog} from '#/components/dialogs/Signin'
import {Outlet as PortalOutlet} from '#/components/Portal'
import {FlatNavigator, RoutesContainer} from '#/Navigation' import {FlatNavigator, RoutesContainer} from '#/Navigation'
import {Composer} from './Composer.web' import {Composer} from './Composer.web'
import {DrawerContent} from './Drawer' import {DrawerContent} from './Drawer'
@@ -67,12 +62,7 @@ function ShellInner() {
</ErrorBoundary> </ErrorBoundary>
<Composer winHeight={0} /> <Composer winHeight={0} />
<ModalsContainer /> <ModalsContainer />
<MutedWordsDialog />
<SigninDialog />
<EmailDialog />
<LinkWarningDialog />
<Lightbox /> <Lightbox />
<PortalOutlet />
{showDrawerDelayedExit && ( {showDrawerDelayedExit && (
<> <>