From d19f8a267ae9b056a11e5392b3834ea9ed2dcec1 Mon Sep 17 00:00:00 2001 From: Chewbacca Date: Tue, 14 Feb 2023 12:18:26 -0500 Subject: [PATCH 1/2] Close dropdown-menu when component unmounts --- app/soapbox/components/dropdown-menu/dropdown-menu.tsx | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/app/soapbox/components/dropdown-menu/dropdown-menu.tsx b/app/soapbox/components/dropdown-menu/dropdown-menu.tsx index 033580d10..4d81e0dca 100644 --- a/app/soapbox/components/dropdown-menu/dropdown-menu.tsx +++ b/app/soapbox/components/dropdown-menu/dropdown-menu.tsx @@ -211,6 +211,11 @@ const DropdownMenu = (props: IDropdownMenu) => { } }; + useEffect(() => { + return () => { + dispatch(closeDropdownMenu()); + }; + }, []); useEffect(() => { document.addEventListener('click', handleDocumentClick, false); From f068d6280d29f82f9fca5bdfb5c9d1de394152b9 Mon Sep 17 00:00:00 2001 From: Chewbacca Date: Tue, 14 Feb 2023 13:28:11 -0500 Subject: [PATCH 2/2] prevent scrolling when focused --- app/soapbox/components/dropdown-menu/dropdown-menu-item.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/soapbox/components/dropdown-menu/dropdown-menu-item.tsx b/app/soapbox/components/dropdown-menu/dropdown-menu-item.tsx index 08339fe17..3de906dc8 100644 --- a/app/soapbox/components/dropdown-menu/dropdown-menu-item.tsx +++ b/app/soapbox/components/dropdown-menu/dropdown-menu-item.tsx @@ -64,7 +64,7 @@ const DropdownMenuItem = ({ index, item, onClick }: IDropdownMenuItem) => { const firstItem = index === 0; if (itemRef.current && firstItem) { - itemRef.current.focus(); + itemRef.current.focus({ preventScroll: true }); } }, [itemRef.current, index]);