diff --git a/src/components/Modal/BaseModal.tsx b/src/components/Modal/BaseModal.tsx index 45006f08ea96..e24c5b7c9c80 100644 --- a/src/components/Modal/BaseModal.tsx +++ b/src/components/Modal/BaseModal.tsx @@ -141,7 +141,6 @@ function BaseModal( }; const handleDismissModal = () => { - hideModal(); ComposerFocusManager.setReadyToFocus(uniqueModalId); }; @@ -226,7 +225,9 @@ function BaseModal( onBackButtonPress={Modal.closeTop} onModalShow={handleShowModal} propagateSwipe={propagateSwipe} + onModalHide={hideModal} onModalWillShow={saveFocusState} + onDismiss={handleDismissModal} onSwipeComplete={() => onClose?.()} swipeDirection={swipeDirection} isVisible={isVisible} diff --git a/src/libs/Navigation/AppNavigator/AuthScreens.tsx b/src/libs/Navigation/AppNavigator/AuthScreens.tsx index 138cfb15ea76..a160b6765f87 100644 --- a/src/libs/Navigation/AppNavigator/AuthScreens.tsx +++ b/src/libs/Navigation/AppNavigator/AuthScreens.tsx @@ -154,10 +154,8 @@ const modalScreenListeners = { beforeRemove: () => { // Clear search input (WorkspaceInvitePage) when modal is closed SearchInputManager.searchInput = ''; - if (Modal.areAllModalsHidden()) { - Modal.setModalVisibility(false); - Modal.willAlertModalBecomeVisible(false); - } + Modal.setModalVisibility(false); + Modal.willAlertModalBecomeVisible(false); }, }; diff --git a/src/pages/home/report/ReportActionCompose/ComposerWithSuggestions/ComposerWithSuggestions.tsx b/src/pages/home/report/ReportActionCompose/ComposerWithSuggestions/ComposerWithSuggestions.tsx index cd92f8c75ae1..c2b4bf65f45f 100644 --- a/src/pages/home/report/ReportActionCompose/ComposerWithSuggestions/ComposerWithSuggestions.tsx +++ b/src/pages/home/report/ReportActionCompose/ComposerWithSuggestions/ComposerWithSuggestions.tsx @@ -46,6 +46,7 @@ import SilentCommentUpdater from '@pages/home/report/ReportActionCompose/SilentC import Suggestions from '@pages/home/report/ReportActionCompose/Suggestions'; import * as EmojiPickerActions from '@userActions/EmojiPickerAction'; import * as InputFocus from '@userActions/InputFocus'; +import * as Modal from '@userActions/Modal'; import * as Report from '@userActions/Report'; import * as User from '@userActions/User'; import CONST from '@src/CONST'; @@ -285,7 +286,11 @@ function ComposerWithSuggestions( const parentReportAction = parentReportActions?.[parentReportActionID ?? ''] ?? null; const shouldAutoFocus = - !modal?.isVisible && isFocused && (shouldFocusInputOnScreenFocus || (isEmptyChat && !ReportActionsUtils.isTransactionThread(parentReportAction))) && shouldShowComposeInput; + !modal?.isVisible && + Modal.areAllModalsHidden() && + isFocused && + (shouldFocusInputOnScreenFocus || (isEmptyChat && !ReportActionsUtils.isTransactionThread(parentReportAction))) && + shouldShowComposeInput; const valueRef = useRef(value); valueRef.current = value;