diff --git a/src/screens/AdminScreen.tsx b/src/screens/AdminScreen.tsx index 0bd34e70..8d9068d8 100644 --- a/src/screens/AdminScreen.tsx +++ b/src/screens/AdminScreen.tsx @@ -125,8 +125,8 @@ export default function AdminScreen({ currentSettings, onSave, onClose }: AdminS return true; // Prevent default }; - BackHandler.addEventListener('hardwareBackPress', onBackPress); - return () => BackHandler.removeEventListener('hardwareBackPress', onBackPress); + const subscription = BackHandler.addEventListener('hardwareBackPress', onBackPress); + return () => subscription.remove(); }, [ countdown, printerIp, password, kioskActive, frameMode, selectedFrameId, availableFrameIds, dateOverlay, dateOverlayPosition, eventText, burstCount, burstInterval, welcomeText, diff --git a/src/screens/PreviewScreen.tsx b/src/screens/PreviewScreen.tsx index 312b1eb6..96f410a0 100644 --- a/src/screens/PreviewScreen.tsx +++ b/src/screens/PreviewScreen.tsx @@ -103,9 +103,9 @@ export default function PreviewScreen({ onReset(); return true; // Prevent default behavior (closing the app) }; - BackHandler.addEventListener('hardwareBackPress', onBackPress); + const subscription = BackHandler.addEventListener('hardwareBackPress', onBackPress); return () => { - BackHandler.removeEventListener('hardwareBackPress', onBackPress); + subscription.remove(); }; }, [onReset]);