From dcd4ff403e6173a8670526d8f7e13e13eff8e471 Mon Sep 17 00:00:00 2001 From: John Factotum <50942278+johnfactotum@users.noreply.github.com> Date: Wed, 25 Sep 2024 22:41:20 +0800 Subject: [PATCH] Paginator: fix scrolling to collapsed ranges that contain elements --- paginator.js | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/paginator.js b/paginator.js index e00d1a3..9984135 100644 --- a/paginator.js +++ b/paginator.js @@ -33,7 +33,11 @@ const animate = (a, b, duration, ease, render) => new Promise(resolve => { const uncollapse = range => { if (!range?.collapsed) return range const { endOffset, endContainer } = range - if (endContainer.nodeType === 1) return endContainer + if (endContainer.nodeType === 1) { + const node = endContainer.childNodes[endOffset] + if (node?.nodeType === 1) return node + return endContainer + } if (endOffset + 1 < endContainer.length) range.setEnd(endContainer, endOffset + 1) else if (endOffset > 1) range.setStart(endContainer, endOffset - 1) else return endContainer.parentNode