diff --git a/packages/lexical/src/LexicalSelection.ts b/packages/lexical/src/LexicalSelection.ts index af7ef3257f4..8b9c96bd462 100644 --- a/packages/lexical/src/LexicalSelection.ts +++ b/packages/lexical/src/LexicalSelection.ts @@ -3085,8 +3085,14 @@ export function updateDOMSelection( ? domSelection.getRangeAt(0) : null; if (selectionTarget !== null) { - // @ts-ignore Text nodes do have getBoundingClientRect - const selectionRect = selectionTarget.getBoundingClientRect(); + let selectionRect: DOMRect; + if (selectionTarget instanceof Text) { + const range = document.createRange(); + range.selectNode(selectionTarget); + selectionRect = range.getBoundingClientRect(); + } else { + selectionRect = selectionTarget.getBoundingClientRect(); + } scrollIntoViewIfNeeded(editor, selectionRect, rootElement); } }