diff --git a/src/components/middle/MessageSelectToolbar.tsx b/src/components/middle/MessageSelectToolbar.tsx index 294db2667..25c525491 100644 --- a/src/components/middle/MessageSelectToolbar.tsx +++ b/src/components/middle/MessageSelectToolbar.tsx @@ -39,6 +39,7 @@ type StateProps = { canReportMessages?: boolean; canDownloadMessages?: boolean; hasProtectedMessage?: boolean; + isForwardModalOpen?: boolean; selectedMessageIds?: number[]; }; @@ -52,6 +53,7 @@ const MessageSelectToolbar: FC = ({ canReportMessages, canDownloadMessages, hasProtectedMessage, + isForwardModalOpen, selectedMessageIds, }) => { const { @@ -68,14 +70,14 @@ const MessageSelectToolbar: FC = ({ useCopySelectedMessages(Boolean(isActive), copySelectedMessages); useEffect(() => { - return isActive && !isDeleteModalOpen && !isReportModalOpen + return isActive && !isDeleteModalOpen && !isReportModalOpen && !isForwardModalOpen ? captureKeyboardListeners({ onBackspace: openDeleteModal, onDelete: openDeleteModal, onEsc: exitMessageSelectMode, }) : undefined; - }, [isActive, isDeleteModalOpen, isReportModalOpen, openDeleteModal, exitMessageSelectMode]); + }, [isActive, isDeleteModalOpen, isReportModalOpen, openDeleteModal, exitMessageSelectMode, isForwardModalOpen]); const handleCopy = useCallback(() => { copySelectedMessages(); @@ -176,6 +178,7 @@ export default memo(withGlobal( const canDownload = selectCanDownloadSelectedMessages(global); const { messageIds: selectedMessageIds } = global.selectedMessages || {}; const hasProtectedMessage = chatId ? selectHasProtectedMessage(global, chatId, selectedMessageIds) : false; + const isForwardModalOpen = global.forwardMessages.isModalShown; return { isSchedule: messageListType === 'scheduled', @@ -185,6 +188,7 @@ export default memo(withGlobal( canDownloadMessages: canDownload, selectedMessageIds, hasProtectedMessage, + isForwardModalOpen, }; }, )(MessageSelectToolbar));