diff --git a/web/chat/edit-text-message.react.js b/web/chat/edit-text-message.react.js --- a/web/chat/edit-text-message.react.js +++ b/web/chat/edit-text-message.react.js @@ -87,15 +87,28 @@ }); }, [background, updatePosition]); + const preventCloseTab = React.useCallback( + event => { + if (!isMessageEdited) { + return null; + } + event.preventDefault(); + return (event.returnValue = ''); + }, + [isMessageEdited], + ); + React.useEffect(() => { if (!background) { return undefined; } window.addEventListener('resize', updateDimensions); + window.addEventListener('beforeunload', preventCloseTab); return () => { window.removeEventListener('resize', updateDimensions); + window.removeEventListener('beforeunload', preventCloseTab); }; - }, [background, updateDimensions]); + }, [background, preventCloseTab, updateDimensions]); React.useEffect(() => { updateDimensions();