From 58102377fd3c9142925a99546ca5efe8906fbdf4 Mon Sep 17 00:00:00 2001 From: dan Date: Thu, 27 Jun 2024 18:36:06 +0100 Subject: [PATCH] Fix pasting images on web (#4670) --- .../com/composer/text-input/TextInput.web.tsx | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/src/view/com/composer/text-input/TextInput.web.tsx b/src/view/com/composer/text-input/TextInput.web.tsx index a9152497..3c4aaf73 100644 --- a/src/view/com/composer/text-input/TextInput.web.tsx +++ b/src/view/com/composer/text-input/TextInput.web.tsx @@ -152,23 +152,22 @@ export const TextInput = React.forwardRef(function TextInputImpl( }, handlePaste: (view, event) => { const clipboardData = event.clipboardData + let preventDefault = false if (clipboardData) { if (clipboardData.types.includes('text/html')) { // Rich-text formatting is pasted, try retrieving plain text const text = clipboardData.getData('text/plain') - // `pasteText` will invoke this handler again, but `clipboardData` will be null. view.pasteText(text) - + preventDefault = true + } + getImageFromUri(clipboardData.items, (uri: string) => { + textInputWebEmitter.emit('photo-pasted', uri) + }) + if (preventDefault) { // Return `true` to prevent ProseMirror's default paste behavior. return true - } else { - // Otherwise, try retrieving images from the clipboard - - getImageFromUri(clipboardData.items, (uri: string) => { - textInputWebEmitter.emit('photo-pasted', uri) - }) } } },