Fixed caret positioning

This commit is contained in:
SamTV12345 2024-07-13 21:26:57 +02:00 committed by SamTv12345
parent 865f2e565a
commit b7e0e6b216
2 changed files with 3 additions and 3 deletions

View file

@ -3010,7 +3010,7 @@ function Ace2Inner(editorInfo, cssManagers) {
}; };
} }
}; };
const browserSelection = window.getSelection(); const browserSelection = targetDoc.getSelection();
if (browserSelection) { if (browserSelection) {
browserSelection.removeAllRanges(); browserSelection.removeAllRanges();
if (selection) { if (selection) {
@ -3153,7 +3153,7 @@ function Ace2Inner(editorInfo, cssManagers) {
browserSelection.anchorOffset === range.endOffset, browserSelection.anchorOffset === range.endOffset,
}; };
if (selection.startPoint.node.ownerDocument !== window.document) { if (selection.startPoint.node.ownerDocument !== targetDoc) {
return null; return null;
} }

View file

@ -5,7 +5,6 @@
// is represented by the browser // is represented by the browser
export const getPosition = () => { export const getPosition = () => {
const range = getSelectionRange(); const range = getSelectionRange();
console.log("Getting range", range)
if (!range || $(range.endContainer).closest('body')[0].id !== 'innerdocbody') return null; if (!range || $(range.endContainer).closest('body')[0].id !== 'innerdocbody') return null;
// When there's a <br> or any element that has no height, we can't get the dimension of the // When there's a <br> or any element that has no height, we can't get the dimension of the
// element where the caret is. As we can't get the element height, we create a text node to get // element where the caret is. As we can't get the element height, we create a text node to get
@ -190,6 +189,7 @@ const getDimensionOfFirstBrowserLineOfRepLine = (line, rep) => {
}; };
const getSelectionRange = () => { const getSelectionRange = () => {
console.log("Selection is",window.frameElement)
if (!window.getSelection) { if (!window.getSelection) {
return; return;
} }