diff --git a/src/components/middle/composer/AttachmentModal.tsx b/src/components/middle/composer/AttachmentModal.tsx index cf4ceaad4..9cff8a3e0 100644 --- a/src/components/middle/composer/AttachmentModal.tsx +++ b/src/components/middle/composer/AttachmentModal.tsx @@ -28,6 +28,7 @@ import { selectCurrentLimit } from '../../../global/selectors/limits'; import { openSystemFilesDialog } from '../../../util/systemFilesDialog'; import buildClassName from '../../../util/buildClassName'; import { validateFiles } from '../../../util/files'; +import { removeAllSelections } from '../../../util/selection'; import usePrevious from '../../../hooks/usePrevious'; import useMentionTooltip from './hooks/useMentionTooltip'; @@ -239,6 +240,12 @@ const AttachmentModal: FC = ({ } }, [attachmentSettings, isOpen, shouldSuggestCompression]); + useEffect(() => { + if (isOpen && isMobile) { + removeAllSelections(); + } + }, [isMobile, isOpen]); + const { isContextMenuOpen: isCustomSendMenuOpen, handleContextMenu, diff --git a/src/util/selection.ts b/src/util/selection.ts index 9c9ae82b9..cca130575 100644 --- a/src/util/selection.ts +++ b/src/util/selection.ts @@ -92,3 +92,8 @@ export function setCaretPosition(element: Node, position: number) { return position; } + +export function removeAllSelections() { + const selection = window.getSelection(); + selection?.removeAllRanges(); +}