From 37e0afad6a2fb7011f52cc30a45af13a2e940846 Mon Sep 17 00:00:00 2001 From: tienifr Date: Wed, 27 Dec 2023 14:04:49 +0700 Subject: [PATCH] fix: prevent double click outside RHP --- .../Navigators/RightModalNavigator.tsx | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/src/libs/Navigation/AppNavigator/Navigators/RightModalNavigator.tsx b/src/libs/Navigation/AppNavigator/Navigators/RightModalNavigator.tsx index bd790589c8d1..6a449aa2e3e9 100644 --- a/src/libs/Navigation/AppNavigator/Navigators/RightModalNavigator.tsx +++ b/src/libs/Navigation/AppNavigator/Navigators/RightModalNavigator.tsx @@ -1,5 +1,5 @@ import {createStackNavigator, StackScreenProps} from '@react-navigation/stack'; -import React, {useMemo} from 'react'; +import React, {useMemo, useRef} from 'react'; import {View} from 'react-native'; import NoDropZone from '@components/DragAndDrop/NoDropZone'; import useThemeStyles from '@hooks/useThemeStyles'; @@ -19,10 +19,21 @@ function RightModalNavigator({navigation}: RightModalNavigatorProps) { const styles = useThemeStyles(); const {isSmallScreenWidth} = useWindowDimensions(); const screenOptions = useMemo(() => RHPScreenOptions(styles), [styles]); + const isExecutingRef = useRef(false); return ( - {!isSmallScreenWidth && } + {!isSmallScreenWidth && ( + { + if (isExecutingRef.current) { + return; + } + isExecutingRef.current = true; + navigation.goBack(); + }} + /> + )}