1
1
import { useFocusEffect , useIsFocused } from '@react-navigation/native' ;
2
2
import lodashIsEqual from 'lodash/isEqual' ;
3
3
import React , { memo , useCallback , useEffect , useMemo , useRef , useState } from 'react' ;
4
- import { View } from 'react-native' ;
4
+ import { InteractionManager , View } from 'react-native' ;
5
5
import { withOnyx } from 'react-native-onyx' ;
6
6
import type { OnyxEntry } from 'react-native-onyx' ;
7
7
import useCurrentUserPersonalDetails from '@hooks/useCurrentUserPersonalDetails' ;
@@ -11,6 +11,7 @@ import {MouseProvider} from '@hooks/useMouseContext';
11
11
import usePermissions from '@hooks/usePermissions' ;
12
12
import usePrevious from '@hooks/usePrevious' ;
13
13
import useThemeStyles from '@hooks/useThemeStyles' ;
14
+ import blurActiveElement from '@libs/Accessibility/blurActiveElement' ;
14
15
import * as CurrencyUtils from '@libs/CurrencyUtils' ;
15
16
import DistanceRequestUtils from '@libs/DistanceRequestUtils' ;
16
17
import type { MileageRate } from '@libs/DistanceRequestUtils' ;
@@ -754,11 +755,12 @@ function MoneyRequestConfirmationList({
754
755
) ;
755
756
756
757
const focusTimeoutRef = useRef < NodeJS . Timeout | null > ( null ) ;
757
- const confirmButtonRef = useRef < View > ( null ) ;
758
758
useFocusEffect (
759
759
useCallback ( ( ) => {
760
760
focusTimeoutRef . current = setTimeout ( ( ) => {
761
- confirmButtonRef . current ?. focus ( ) ;
761
+ InteractionManager . runAfterInteractions ( ( ) => {
762
+ blurActiveElement ( ) ;
763
+ } ) ;
762
764
} , CONST . ANIMATED_TRANSITION ) ;
763
765
return ( ) => focusTimeoutRef . current && clearTimeout ( focusTimeoutRef . current ) ;
764
766
} , [ ] ) ,
@@ -795,7 +797,6 @@ function MoneyRequestConfirmationList({
795
797
/>
796
798
) : (
797
799
< ButtonWithDropdownMenu
798
- buttonRef = { confirmButtonRef }
799
800
success
800
801
pressOnEnter
801
802
isDisabled = { shouldDisableButton }
0 commit comments