Move setImmediate into requestUpdate; Batch updates

This commit is contained in:
Ben Ogle 2014-06-09 14:40:59 -07:00
parent e59f242f19
commit ad522e6ab1
2 changed files with 8 additions and 7 deletions

View File

@ -177,7 +177,9 @@ EditorComponent = React.createClass
if @batchingUpdates
@updateRequested = true
else
@forceUpdate()
@willUpdate ?= setImmediate =>
@forceUpdate()
@willUpdate = null
getRenderedRowRange: ->
{editor, lineOverdrawMargin} = @props
@ -526,10 +528,7 @@ EditorComponent = React.createClass
@cursorsMoved = true
onDecorationChanged: ->
return if @decorationChangedImmediate?
@decorationChangedImmediate = setImmediate =>
@requestUpdate()
@decorationChangedImmediate = null
@requestUpdate()
selectToMousePositionUntilMouseUp: (event) ->
{editor} = @props

View File

@ -1126,7 +1126,8 @@ class Editor extends Model
#
# Returns nothing
addDecorationToBufferRowRange: (startBufferRow, endBufferRow, decoration) ->
@displayBuffer.addDecorationToBufferRowRange(startBufferRow, endBufferRow, decoration)
@batchUpdates =>
@displayBuffer.addDecorationToBufferRowRange(startBufferRow, endBufferRow, decoration)
# Public: Removes a decoration from line numbers in a buffer row range
#
@ -1136,7 +1137,8 @@ class Editor extends Model
#
# Returns nothing
removeDecorationFromBufferRowRange: (startBufferRow, endBufferRow, decoration) ->
@displayBuffer.removeDecorationFromBufferRowRange(startBufferRow, endBufferRow, decoration)
@batchUpdates =>
@displayBuffer.removeDecorationFromBufferRowRange(startBufferRow, endBufferRow, decoration)
# Public: Adds a decoration that tracks a {Marker}. When the marker moves,
# is invalidated, or is destroyed, the decoration will be updated to reflect the marker's state.