From bfe196bac5e618bfbeab4f6fabef3e5a18194868 Mon Sep 17 00:00:00 2001 From: Eric Bailey Date: Tue, 7 Nov 2023 13:37:47 -0600 Subject: Extract shell state into separate context (#1824) * WIP * Add shell state * Integrate new shell state for drawer and minimal shell mode * Replace isDrawerSwipeDisabled * Split shell state into separate contexts to avoid needless re-renders * Fix typo --------- Co-authored-by: Paul Frazee --- src/lib/hooks/useMinimalShellMode.tsx | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'src/lib/hooks/useMinimalShellMode.tsx') diff --git a/src/lib/hooks/useMinimalShellMode.tsx b/src/lib/hooks/useMinimalShellMode.tsx index 475d165d3..ada934a26 100644 --- a/src/lib/hooks/useMinimalShellMode.tsx +++ b/src/lib/hooks/useMinimalShellMode.tsx @@ -1,6 +1,5 @@ import React from 'react' import {autorun} from 'mobx' -import {useStores} from 'state/index' import { Easing, interpolate, @@ -9,8 +8,10 @@ import { withTiming, } from 'react-native-reanimated' +import {useMinimalShellMode as useMinimalShellModeState} from '#/state/shell/minimal-mode' + export function useMinimalShellMode() { - const store = useStores() + const minimalShellMode = useMinimalShellModeState() const minimalShellInterp = useSharedValue(0) const footerMinimalShellTransform = useAnimatedStyle(() => { return { @@ -38,7 +39,7 @@ export function useMinimalShellMode() { React.useEffect(() => { return autorun(() => { - if (store.shell.minimalShellMode) { + if (minimalShellMode) { minimalShellInterp.value = withTiming(1, { duration: 125, easing: Easing.bezier(0.25, 0.1, 0.25, 1), @@ -50,9 +51,10 @@ export function useMinimalShellMode() { }) } }) - }, [minimalShellInterp, store.shell.minimalShellMode]) + }, [minimalShellInterp, minimalShellMode]) return { + minimalShellMode, footerMinimalShellTransform, headerMinimalShellTransform, fabMinimalShellTransform, -- cgit 1.4.1