diff --git a/frontend/editor-poc.html b/frontend/editor-poc.html index 3aa3783..02013a9 100644 --- a/frontend/editor-poc.html +++ b/frontend/editor-poc.html @@ -1835,7 +1835,8 @@ body { font-family: var(--sans); background: var(--bg); color: var(--text); heig // Continue checkbox e.preventDefault(); ta.value = before + '\n' + indent + taskMatch[2] + ' [ ] ' + after; - ta.setSelectionRange(before.length + taskMatch[2].length + 6, before.length + taskMatch[2].length + 6); + var newPos = before.length + 1 + indent.length + taskMatch[2].length + 5; + ta.setSelectionRange(newPos, newPos); } markDirty(); autoHeight(); updateLineNumbers(); return; @@ -1845,7 +1846,8 @@ body { font-family: var(--sans); background: var(--bg); color: var(--text); heig e.preventDefault(); var num = parseInt(olMatch[2]) + 1; ta.value = before + '\n' + olMatch[1] + num + '. ' + after; - ta.setSelectionRange(ta.value.length, ta.value.length); + var newPos = before.length + 1 + olMatch[1].length + String(num).length + 2; + ta.setSelectionRange(newPos, newPos); markDirty(); autoHeight(); updateLineNumbers(); return; } else if (ulMatch) { @@ -1860,7 +1862,8 @@ body { font-family: var(--sans); background: var(--bg); color: var(--text); heig // Continue bullet e.preventDefault(); ta.value = before + '\n' + ulMatch[1] + ulMatch[2] + ' ' + after; - ta.setSelectionRange(ta.value.length, ta.value.length); + var newPos = before.length + 1 + ulMatch[1].length + ulMatch[2].length + 1; + ta.setSelectionRange(newPos, newPos); } markDirty(); autoHeight(); updateLineNumbers(); return;