From 6586cc06a1b938bb4a625f85b7a0821d8900d2bb Mon Sep 17 00:00:00 2001 From: Philipp Stracker Date: Mon, 9 Dec 2024 19:00:26 +0100 Subject: [PATCH] =?UTF-8?q?=E2=9C=A8=20Disable=20the=20browser=20warning?= =?UTF-8?q?=20on=20page=20reload?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../resources/js/Components/Screens/Settings.js | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/modules/ppcp-settings/resources/js/Components/Screens/Settings.js b/modules/ppcp-settings/resources/js/Components/Screens/Settings.js index e0634343c..faf65c047 100644 --- a/modules/ppcp-settings/resources/js/Components/Screens/Settings.js +++ b/modules/ppcp-settings/resources/js/Components/Screens/Settings.js @@ -1,3 +1,5 @@ +import { useEffect } from '@wordpress/element'; + import { OnboardingHooks } from '../../data'; import Onboarding from './Onboarding/Onboarding'; import SettingsScreen from './SettingsScreen'; @@ -5,6 +7,20 @@ import SettingsScreen from './SettingsScreen'; const Settings = () => { const onboardingProgress = OnboardingHooks.useSteps(); + // Disable the "Changes you made might not be saved" browser warning. + useEffect( () => { + const suppressBeforeUnload = ( event ) => { + event.stopImmediatePropagation(); + return undefined; + }; + + window.addEventListener( 'beforeunload', suppressBeforeUnload ); + + return () => { + window.removeEventListener( 'beforeunload', suppressBeforeUnload ); + }; + }, [] ); + if ( ! onboardingProgress.isReady ) { // TODO: Use better loading state indicator. return
Loading...
;