diff --git a/web/src/pages/Exports.tsx b/web/src/pages/Exports.tsx index e85edbde1..4f719061c 100644 --- a/web/src/pages/Exports.tsx +++ b/web/src/pages/Exports.tsx @@ -15,7 +15,8 @@ import Heading from "@/components/ui/heading"; import { Input } from "@/components/ui/input"; import { Toaster } from "@/components/ui/sonner"; import useKeyboardListener from "@/hooks/use-keyboard-listener"; -import { useOverlayState, useSearchEffect } from "@/hooks/use-overlay-state"; +import { useSearchEffect } from "@/hooks/use-overlay-state"; +import { useHistoryBack } from "@/hooks/use-history-back"; import { useApiFilterArgs } from "@/hooks/use-api-filter"; import { cn } from "@/lib/utils"; import { @@ -114,11 +115,18 @@ function Exports() { // Viewing const [selected, setSelected] = useState(); - const [selectedCaseId, setSelectedCaseId] = useOverlayState< - string | undefined - >("caseId", undefined); + const [selectedCaseId, setSelectedCaseId] = useState( + undefined, + ); const [selectedAspect, setSelectedAspect] = useState(0.0); + // Handle browser back button to deselect case before navigating away + useHistoryBack({ + enabled: true, + open: selectedCaseId !== undefined, + onClose: () => setSelectedCaseId(undefined), + }); + useSearchEffect("id", (id) => { if (!rawExports) { return false;