Invalidate empty lines proceeding a change event

The indent guide on empty lines will now be updated when
the non-empty line preceeding the empty lines is updated.
This commit is contained in:
Kevin Sawicki
2013-02-19 16:36:13 -08:00
parent 101b1aba12
commit 27f44fbfd7
2 changed files with 26 additions and 0 deletions

View File

@@ -1006,6 +1006,18 @@ class Editor extends View
return [] if !@firstRenderedScreenRow? and !@lastRenderedScreenRow?
intactRanges = [{start: @firstRenderedScreenRow, end: @lastRenderedScreenRow, domStart: 0}]
if @showIndentGuide
trailingEmptyLineChanges = []
for change in @pendingChanges
continue unless change.bufferDelta?
start = change.end + change.bufferDelta + 1
continue unless @lineForBufferRow(start) is ''
end = start
end++ while @lineForBufferRow(end + 1) is ''
trailingEmptyLineChanges.push({start, end, screenDelta: 0})
@pendingChanges.push(trailingEmptyLineChanges...)
for change in @pendingChanges
newIntactRanges = []
for range in intactRanges