Use screen rows for line highlight

This commit is contained in:
Kevin Sawicki
2012-09-28 18:39:30 -07:00
parent 2de14a701f
commit d69e08a858
2 changed files with 38 additions and 14 deletions

View File

@@ -36,7 +36,6 @@ class Editor extends View
charWidth: null
charHeight: null
cursorViews: null
cursorRow: -1
selectionViews: null
lineCache: null
isFocused: false
@@ -813,7 +812,7 @@ class Editor extends View
charHeight = @charHeight
lines = @activeEditSession.linesForScreenRows(startRow, endRow)
activeEditSession = @activeEditSession
cursorRow = @cursorRow
cursorScreenRow = @getCursorScreenPosition().row
buildLineHtml = (line) => @buildLineHtml(line)
$$ -> @raw(buildLineHtml(line)) for line in lines
@@ -941,15 +940,7 @@ class Editor extends View
highlightCursorLine: ->
return if @mini
newCursorRow = @getCursorBufferPosition().row
emptySelection = @getSelection().isEmpty()
if emptySelection
if @cursorRow isnt newCursorRow
@cursorRow = newCursorRow
screenRow = newCursorRow - @firstRenderedScreenRow
@find('.line.cursor-line').removeClass('cursor-line')
@find(".line:eq(#{screenRow})").addClass('cursor-line')
else if @cursorRow isnt -1
@find('.line.cursor-line').removeClass('cursor-line')
@cursorRow = -1 if !emptySelection
@cursorScreenRow = @getCursorScreenPosition().row
screenRow = @cursorScreenRow - @firstRenderedScreenRow
@find('.line.cursor-line').removeClass('cursor-line')
@find(".line:eq(#{screenRow})").addClass('cursor-line')