File tree Expand file tree Collapse file tree 1 file changed +9
-2
lines changed
Expand file tree Collapse file tree 1 file changed +9
-2
lines changed Original file line number Diff line number Diff line change 11import * as Mantine from "@mantine/core" ;
2+ import { mergeRefs } from "@mantine/hooks" ;
23
34import { assertEmpty } from "@blocknote/core" ;
45import { ComponentProps } from "@blocknote/react" ;
@@ -81,6 +82,8 @@ const SubMenu = forwardRef<
8182
8283 const [ opened , setOpened ] = useState ( false ) ;
8384
85+ const itemRef = useRef < HTMLButtonElement | null > ( null ) ;
86+
8487 const menuCloseTimer = useRef < ReturnType < typeof setTimeout > | undefined > ( ) ;
8588
8689 const mouseLeave = useCallback ( ( ) => {
@@ -107,11 +110,15 @@ const SubMenu = forwardRef<
107110 } } >
108111 < Mantine . Menu . Item
109112 className = "bn-menu-item bn-mt-sub-menu-item"
110- ref = { ref }
113+ ref = { mergeRefs ( ref , itemRef ) }
111114 onMouseOver = { mouseOver }
112115 onMouseLeave = { mouseLeave } >
113116 < Mantine . Menu
114- withinPortal = { false }
117+ portalProps = { {
118+ target : itemRef . current
119+ ? itemRef . current . parentElement !
120+ : undefined ,
121+ } }
115122 middlewares = { { flip : true , shift : true , inline : false , size : true } }
116123 trigger = { "hover" }
117124 opened = { opened }
You can’t perform that action at this time.
0 commit comments