From a054938414b47ae5f71e191af511077bb4e0cbda Mon Sep 17 00:00:00 2001
From: Chris Dryden <117657238+chrisdrydenaltmetric@users.noreply.github.com>
Date: Thu, 29 Jan 2026 10:50:17 +0000
Subject: [PATCH] Merge pull request #30983 from
overleaf/cd-close-modal-select-menus-on-click
Ensure select menus in Modals close on modal click
GitOrigin-RevId: 4a07f16146ac99e6fb1fdf09d222e6832cc93079
---
.../js/shared/components/focus-trap.tsx | 4 ++-
.../frontend/components/shared/modal.spec.tsx | 36 +++++++++++++++++++
.../components/share-project-modal.test.tsx | 12 +++----
3 files changed, 45 insertions(+), 7 deletions(-)
diff --git a/services/web/frontend/js/shared/components/focus-trap.tsx b/services/web/frontend/js/shared/components/focus-trap.tsx
index d5def1efab..e36a8bffff 100644
--- a/services/web/frontend/js/shared/components/focus-trap.tsx
+++ b/services/web/frontend/js/shared/components/focus-trap.tsx
@@ -25,7 +25,9 @@ export default function FocusTrap({
fallbackFocus: () => containerRef.current as HTMLElement,
}}
>
-
{children}
+
+ {children}
+
)
}
diff --git a/services/web/test/frontend/components/shared/modal.spec.tsx b/services/web/test/frontend/components/shared/modal.spec.tsx
index 653429de35..0e659c884c 100644
--- a/services/web/test/frontend/components/shared/modal.spec.tsx
+++ b/services/web/test/frontend/components/shared/modal.spec.tsx
@@ -6,10 +6,22 @@ import {
OLModalFooter,
OLModalTitle,
} from '@/shared/components/ol/ol-modal'
+import { Select } from '@/shared/components/select'
+
+type TestItem = {
+ key: string
+ label: string
+}
function Modal({ backdrop }: { backdrop?: boolean | 'static' } = {}) {
const [isModalOpen, setIsModalOpen] = useState(false)
+ const testItems: TestItem[] = [
+ { key: 'item1', label: 'First Item' },
+ { key: 'item2', label: 'Second Item' },
+ { key: 'item3', label: 'Third Item' },
+ ]
+
return (
@@ -26,6 +38,13 @@ function Modal({ backdrop }: { backdrop?: boolean | 'static' } = {}) {
This is for testing the modal behaviour
+