Save scroll positions in the model to serialize 'em

This commit is contained in:
Antonio Scandurra
2015-09-23 14:49:11 +02:00
parent 140624326a
commit fffcfb3405
3 changed files with 14 additions and 3 deletions

View File

@@ -98,8 +98,6 @@ class DisplayBuffer extends Model
copy: ->
newDisplayBuffer = new DisplayBuffer({@buffer, tabLength: @getTabLength(), @largeFileMode})
newDisplayBuffer.setScrollTop(@getScrollTop())
newDisplayBuffer.setScrollLeft(@getScrollLeft())
for marker in @findMarkers(displayBufferId: @id)
marker.copy(displayBufferId: newDisplayBuffer.id)
@@ -1178,6 +1176,17 @@ class DisplayBuffer extends Model
@emit 'marker-created', marker if Grim.includeDeprecatedAPIs
@emitter.emit 'did-create-marker', marker
# TODO: serialize state in TextEditorElement, rather than saving scroll
# positions here.
getScrollTop: -> @scrollTop
setScrollTop: (@scrollTop) ->
getScrollLeft: -> @scrollLeft
setScrollLeft: (@scrollLeft) ->
decorateFold: (fold) ->
@decorateMarker(fold.marker, type: 'line-number', class: 'folded')