From 04cdad680b2916f517b80ab02c163aa597a290dd Mon Sep 17 00:00:00 2001 From: Ben Ogle Date: Thu, 3 Oct 2013 14:27:07 -0700 Subject: [PATCH] Remove ability to pass clearDirtyRanges and fillDirtyRanges extra vars We don't need them anymore in the gutter. --- src/editor.coffee | 30 ++++++++++-------------------- src/gutter.coffee | 6 +++--- 2 files changed, 13 insertions(+), 23 deletions(-) diff --git a/src/editor.coffee b/src/editor.coffee index 5d9c40cea..0fd1bb85e 100644 --- a/src/editor.coffee +++ b/src/editor.coffee @@ -1270,7 +1270,7 @@ class Editor extends View changes = @pendingChanges intactRanges = @computeIntactRanges(renderFrom, renderTo) - @gutter.updateLineNumbers(changes, intactRanges, renderFrom, renderTo) + @gutter.updateLineNumbers(changes, renderFrom, renderTo) @clearDirtyRanges(intactRanges) @fillDirtyRanges(intactRanges, renderFrom, renderTo) @@ -1353,40 +1353,30 @@ class Editor extends View i++ intactRanges.sort (a, b) -> a.domStart - b.domStart - # renderedLines - optional - # clearLine - optional - clearDirtyRanges: (intactRanges, renderedLines, clearLine) -> - renderedLines ?= @renderedLines[0] - clearLine ?= @clearLine - + clearDirtyRanges: (intactRanges) -> if intactRanges.length == 0 - renderedLines.innerHTML = '' - else if currentLine = renderedLines.firstChild + @renderedLines[0].innerHTML = '' + else if currentLine = @renderedLines[0].firstChild domPosition = 0 for intactRange in intactRanges while intactRange.domStart > domPosition - currentLine = clearLine(currentLine) + currentLine = @clearLine(currentLine) domPosition++ for i in [intactRange.start..intactRange.end] currentLine = currentLine.nextSibling domPosition++ while currentLine - currentLine = clearLine(currentLine) + currentLine = @clearLine(currentLine) clearLine: (lineElement) => next = lineElement.nextSibling @renderedLines[0].removeChild(lineElement) next - # renderedLines - optional - # buildLineElements - optional - fillDirtyRanges: (intactRanges, renderFrom, renderTo, renderedLines, buildLineElements) -> - renderedLines ?= @renderedLines[0] - buildLineElements ?= @buildLineElementsForScreenRows - + fillDirtyRanges: (intactRanges, renderFrom, renderTo) -> i = 0 nextIntact = intactRanges[i] - currentLine = renderedLines.firstChild + currentLine = @renderedLines[0].firstChild row = renderFrom while row <= renderTo @@ -1399,8 +1389,8 @@ class Editor extends View else dirtyRangeEnd = renderTo - for lineElement in buildLineElements(row, dirtyRangeEnd) - renderedLines.insertBefore(lineElement, currentLine) + for lineElement in @buildLineElementsForScreenRows(row, dirtyRangeEnd) + @renderedLines[0].insertBefore(lineElement, currentLine) row++ else currentLine = currentLine.nextSibling diff --git a/src/gutter.coffee b/src/gutter.coffee index 6db451d25..0fb2ae9a3 100644 --- a/src/gutter.coffee +++ b/src/gutter.coffee @@ -64,7 +64,7 @@ class Gutter extends View ### Internal ### - updateLineNumbers: (changes, intactRanges, renderFrom, renderTo) -> + updateLineNumbers: (changes, renderFrom, renderTo) -> if renderFrom < @firstScreenRow or renderTo > @lastScreenRow performUpdate = true else if @getEditor().getLastScreenRow() < @lastScreenRow @@ -75,9 +75,9 @@ class Gutter extends View performUpdate = true break - @renderLineNumbers(intactRanges, renderFrom, renderTo) if performUpdate + @renderLineNumbers(renderFrom, renderTo) if performUpdate - renderLineNumbers: (intactRanges, startScreenRow, endScreenRow) -> + renderLineNumbers: (startScreenRow, endScreenRow) -> @lineNumbers[0].innerHTML = @buildLineElementsHtml(startScreenRow, endScreenRow) @firstScreenRow = startScreenRow @lastScreenRow = endScreenRow