fix: add confirmation dialog to prevent accidental back navigation

Addresses conflict between right-click drag and browser back gesture in
Chromium-based browsers. Shows browser confirmation dialog when user
tries to navigate away, preventing accidental page exits.

Closes #80
This commit is contained in:
dayuan.jiang
2025-12-05 18:39:49 +09:00
parent 57bfc9cef7
commit 22d0d4039d

View File

@@ -32,6 +32,18 @@ export default function Home() {
return () => window.removeEventListener('keydown', handleKeyDown);
}, []);
// Show confirmation dialog when user tries to leave the page
// This helps prevent accidental navigation from browser back gestures
useEffect(() => {
const handleBeforeUnload = (event: BeforeUnloadEvent) => {
event.preventDefault();
return '';
};
window.addEventListener('beforeunload', handleBeforeUnload);
return () => window.removeEventListener('beforeunload', handleBeforeUnload);
}, []);
return (
<div className="flex h-screen bg-background relative overflow-hidden">
{/* Mobile warning overlay */}