From 796162af3124e790eb501200a4b06bb28a8b257f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?nicole=20miko=C5=82ajczyk?= Date: Sat, 7 Feb 2026 21:13:06 +0100 Subject: [PATCH] pl-fe: ask for confirmation before closing a tab when composing post MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: nicole mikołajczyk --- .../src/features/compose/components/compose-form.tsx | 1 + .../src/features/compose/editor/plugins/state-plugin.tsx | 8 ++++++++ 2 files changed, 9 insertions(+) diff --git a/packages/pl-fe/src/features/compose/components/compose-form.tsx b/packages/pl-fe/src/features/compose/components/compose-form.tsx index 525feaace..df37cb3fc 100644 --- a/packages/pl-fe/src/features/compose/components/compose-form.tsx +++ b/packages/pl-fe/src/features/compose/components/compose-form.tsx @@ -278,6 +278,7 @@ const ComposeForm = ({ id, shouldCondense, autoFocus, clickab return () => { document.removeEventListener('click', handleClick, true); + window.onbeforeunload = null; }; }, []); diff --git a/packages/pl-fe/src/features/compose/editor/plugins/state-plugin.tsx b/packages/pl-fe/src/features/compose/editor/plugins/state-plugin.tsx index 78314a44b..d4254c3c3 100644 --- a/packages/pl-fe/src/features/compose/editor/plugins/state-plugin.tsx +++ b/packages/pl-fe/src/features/compose/editor/plugins/state-plugin.tsx @@ -177,6 +177,14 @@ const StatePlugin: React.FC = ({ composeId, isWysiwyg }) => { checkHashtagCasingSuggestions(editorState); getQuoteSuggestions(plainText); detectLanguage(plainText); + if (isEmpty) { + window.onbeforeunload = null; + } else { + window.onbeforeunload = (event) => { + event.preventDefault(); + event.returnValue = true; + }; + } }); }); }, [editor]);