@@ -4,6 +4,7 @@ import { Range } from "@tiptap/core";
44import { FC , useEffect , useMemo , useState } from "react" ;
55
66import { useBlockNoteEditor } from "../../hooks/useBlockNoteEditor.js" ;
7+ import { useEditorDOMElement } from "../../hooks/useEditorDomElement.js" ;
78import { useExtension } from "../../hooks/useExtension.js" ;
89import { FloatingUIOptions } from "../Popovers/FloatingUIOptions.js" ;
910import {
@@ -22,6 +23,8 @@ export const LinkToolbarController = (props: {
2223 const [ toolbarOpen , setToolbarOpen ] = useState ( false ) ;
2324 const [ toolbarPositionFrozen , setToolbarPositionFrozen ] = useState ( false ) ;
2425
26+ const editorDOMElement = useEditorDOMElement ( ) ;
27+
2528 const linkToolbar = useExtension ( LinkToolbarExtension ) ;
2629
2730 // Because the toolbar opens with a delay when a link is hovered by the mouse
@@ -98,16 +101,14 @@ export const LinkToolbarController = (props: {
98101 const destroyOnSelectionChangeHandler =
99102 editor . onSelectionChange ( textCursorCallback ) ;
100103
101- const domElement = editor . domElement ;
102-
103- domElement ?. addEventListener ( "mouseover" , mouseCursorCallback ) ;
104+ editorDOMElement ?. addEventListener ( "mouseover" , mouseCursorCallback ) ;
104105
105106 return ( ) => {
106107 destroyOnChangeHandler ( ) ;
107108 destroyOnSelectionChangeHandler ( ) ;
108- domElement ?. removeEventListener ( "mouseover" , mouseCursorCallback ) ;
109+ editorDOMElement ?. removeEventListener ( "mouseover" , mouseCursorCallback ) ;
109110 } ;
110- } , [ editor , editor . domElement , linkToolbar , link , toolbarPositionFrozen ] ) ;
111+ } , [ editor , editorDOMElement , linkToolbar , link , toolbarPositionFrozen ] ) ;
111112
112113 const floatingUIOptions = useMemo < FloatingUIOptions > (
113114 ( ) => ( {
0 commit comments