diff options
Diffstat (limited to 'src/view/shell/index.web.tsx')
-rw-r--r-- | src/view/shell/index.web.tsx | 16 |
1 files changed, 6 insertions, 10 deletions
diff --git a/src/view/shell/index.web.tsx b/src/view/shell/index.web.tsx index e134358d9..c0eed0787 100644 --- a/src/view/shell/index.web.tsx +++ b/src/view/shell/index.web.tsx @@ -1,7 +1,6 @@ import React, {useEffect} from 'react' import {observer} from 'mobx-react-lite' import {View, StyleSheet, TouchableOpacity} from 'react-native' -import {useStores} from 'state/index' import {DesktopLeftNav} from './desktop/LeftNav' import {DesktopRightNav} from './desktop/RightNav' import {ErrorBoundary} from '../com/util/ErrorBoundary' @@ -23,28 +22,25 @@ import { useSetDrawerOpen, useOnboardingState, } from '#/state/shell' -import {useModalControls} from '#/state/modals' import {useSession} from '#/state/session' +import {useCloseAllActiveElements} from '#/state/util' -const ShellInner = observer(function ShellInnerImpl() { - const store = useStores() +function ShellInner() { const isDrawerOpen = useIsDrawerOpen() const setDrawerOpen = useSetDrawerOpen() - const {closeModal} = useModalControls() const onboardingState = useOnboardingState() const {isDesktop, isMobile} = useWebMediaQueries() const navigator = useNavigation<NavigationProp>() const {hasSession} = useSession() + const closeAllActiveElements = useCloseAllActiveElements() useAuxClick() useEffect(() => { navigator.addListener('state', () => { - setDrawerOpen(false) - closeModal() - store.shell.closeAnyActiveElement() + closeAllActiveElements() }) - }, [navigator, store.shell, setDrawerOpen, closeModal]) + }, [navigator, closeAllActiveElements]) const showBottomBar = isMobile && !onboardingState.isActive const showSideNavs = !isMobile && hasSession && !onboardingState.isActive @@ -78,7 +74,7 @@ const ShellInner = observer(function ShellInnerImpl() { )} </View> ) -}) +} export const Shell: React.FC = observer(function ShellImpl() { const pageBg = useColorSchemeStyle(styles.bgLight, styles.bgDark) |