diff --git a/native/media/camera-modal.react.js b/native/media/camera-modal.react.js --- a/native/media/camera-modal.react.js +++ b/native/media/camera-modal.react.js @@ -31,7 +31,10 @@ interpolate, Extrapolate, } from 'react-native-reanimated'; -import { SafeAreaView } from 'react-native-safe-area-context'; +import { + SafeAreaView, + useSafeAreaInsets, +} from 'react-native-safe-area-context'; import { pathFromURI, filenameFromPathOrURI } from 'lib/media/file-utils.js'; import { useIsAppForegrounded } from 'lib/shared/lifecycle-utils.js'; @@ -591,6 +594,8 @@ }); }, [flashButtonDimensions]); + const insets = useSafeAreaInsets(); + const outsideButtons = React.useCallback( (x: number, y: number) => { 'worklet'; @@ -598,8 +603,8 @@ return ( x < dim.x || x > dim.x + dim.width || - y < dim.y || - y > dim.y + dim.height + y + insets.top < dim.y || + y + insets.top > dim.y + dim.height ); }; const isOutsideCloseButton = isOutsideButton( @@ -623,10 +628,11 @@ ); }, [ - closeButtonDimensions, - flashButtonDimensions, - photoButtonDimensions, - switchCameraButtonDimensions, + closeButtonDimensions.value, + flashButtonDimensions.value, + insets.top, + photoButtonDimensions.value, + switchCameraButtonDimensions.value, ], );