diff --git a/src/static/js/ace2_inner.js b/src/static/js/ace2_inner.js
index b0b0d3fb5..ffe0ffe61 100644
--- a/src/static/js/ace2_inner.js
+++ b/src/static/js/ace2_inner.js
@@ -73,7 +73,6 @@ function Ace2Inner(editorInfo, cssManagers) {
lineSpan.appendChild(outerDoc.createTextNode('1'));
lineDiv.appendChild(lineSpan);
})();
- let lineNumbersShown = 1;
const scroll = Scroll.init(outerWin);
@@ -3594,7 +3593,7 @@ function Ace2Inner(editorInfo, cssManagers) {
// Apply height to existing sidediv lines
currentLine = 0;
- while (sidebarLine && currentLine <= lineNumbersShown) {
+ while (sidebarLine && currentLine <= sideDivInner.children.length) {
if (lineOffsets[currentLine] != null) {
sidebarLine.style.height = `${lineOffsets[currentLine]}px`;
sidebarLine.style.lineHeight = `${lineHeights[currentLine]}px`;
@@ -3603,24 +3602,22 @@ function Ace2Inner(editorInfo, cssManagers) {
currentLine++;
}
- if (newNumLines !== lineNumbersShown) {
+ if (newNumLines !== sideDivInner.children.length) {
// Create missing line and apply height
- while (lineNumbersShown < newNumLines) {
- lineNumbersShown++;
+ while (sideDivInner.children.length < newNumLines) {
const div = outerDoc.createElement('DIV');
+ sideDivInner.appendChild(div);
if (lineOffsets[currentLine]) {
div.style.height = `${lineOffsets[currentLine]}px`;
div.style.lineHeight = `${lineHeights[currentLine]}px`;
}
- $(div).append($(`${String(lineNumbersShown)}`));
- sideDivInner.appendChild(div);
+ $(div).append($(`${sideDivInner.children.length}`));
currentLine++;
}
// Remove extra lines
- while (lineNumbersShown > newNumLines) {
+ while (sideDivInner.children.length > newNumLines) {
sideDivInner.removeChild(sideDivInner.lastChild);
- lineNumbersShown--;
}
}
};