diff --git a/src/libs/actions/Report.ts b/src/libs/actions/Report.ts index 7eb7e01d6edd..ed984080ff6c 100644 --- a/src/libs/actions/Report.ts +++ b/src/libs/actions/Report.ts @@ -1753,11 +1753,8 @@ function updateNotificationPreference( } } -function updateRoomVisibility(reportID: string, previousValue: RoomVisibility | undefined, newValue: RoomVisibility, navigate: boolean, report?: OnyxEntry) { +function updateRoomVisibility(reportID: string, previousValue: RoomVisibility | undefined, newValue: RoomVisibility) { if (previousValue === newValue) { - if (navigate && !isEmptyObject(report) && report.reportID) { - ReportUtils.goBackToDetailsPage(report); - } return; } @@ -1780,9 +1777,6 @@ function updateRoomVisibility(reportID: string, previousValue: RoomVisibility | const parameters: UpdateRoomVisibilityParams = {reportID, visibility: newValue}; API.write(WRITE_COMMANDS.UPDATE_ROOM_VISIBILITY, parameters, {optimisticData, failureData}); - if (navigate && !isEmptyObject(report)) { - ReportUtils.goBackToDetailsPage(report); - } } /** diff --git a/src/pages/settings/Report/VisibilityPage.tsx b/src/pages/settings/Report/VisibilityPage.tsx index 6cdb8a8d828f..5d09bec1788e 100644 --- a/src/pages/settings/Report/VisibilityPage.tsx +++ b/src/pages/settings/Report/VisibilityPage.tsx @@ -1,5 +1,5 @@ import type {StackScreenProps} from '@react-navigation/stack'; -import React, {useCallback, useMemo, useState} from 'react'; +import React, {useCallback, useMemo, useRef, useState} from 'react'; import {useOnyx} from 'react-native-onyx'; import FullPageNotFoundView from '@components/BlockingViews/FullPageNotFoundView'; import ConfirmModal from '@components/ConfirmModal'; @@ -23,6 +23,7 @@ type VisibilityProps = WithReportOrNotFoundProps & StackScreenProps { @@ -85,6 +91,13 @@ function VisibilityPage({report}: VisibilityProps) { changeVisibility(CONST.REPORT.VISIBILITY.PUBLIC); hideModal(); }} + onModalHide={() => { + if (!shouldGoBackToDetailsPage.current) { + return; + } + shouldGoBackToDetailsPage.current = false; + ReportUtils.goBackToDetailsPage(report); + }} onCancel={hideModal} title={translate('common.areYouSure')} prompt={translate('newRoomPage.publicDescription')}