Don’t use Serializable mixin in DisplayBuffer

This commit is contained in:
Nathan Sobo
2015-09-22 09:34:17 -06:00
parent 4a1d1fdffb
commit 69c4764b2f

View File

@@ -1,5 +1,4 @@
_ = require 'underscore-plus'
Serializable = require 'serializable'
{CompositeDisposable, Emitter} = require 'event-kit'
{Point, Range} = require 'text-buffer'
TokenizedBuffer = require './tokenized-buffer'
@@ -17,8 +16,6 @@ class BufferToScreenConversionError extends Error
module.exports =
class DisplayBuffer extends Model
Serializable.includeInto(this)
verticalScrollMargin: 2
horizontalScrollMargin: 6
scopedCharacterWidthsChangeCount: 0
@@ -35,6 +32,10 @@ class DisplayBuffer extends Model
verticalScrollbarWidth: 15
horizontalScrollbarHeight: 15
@deserialize: (state) ->
state.tokenizedBuffer = TokenizedBuffer.deserialize(state.tokenizedBuffer)
new this(state)
constructor: ({tabLength, @editorWidthInChars, @tokenizedBuffer, buffer, ignoreInvisibles, @largeFileMode}={}) ->
super
@@ -93,7 +94,8 @@ class DisplayBuffer extends Model
@updateWrappedScreenLines() if oldConfigSettings? and not _.isEqual(oldConfigSettings, @configSettings)
serializeParams: ->
serialize: ->
deserializer: 'DisplayBuffer'
id: @id
softWrapped: @isSoftWrapped()
editorWidthInChars: @editorWidthInChars
@@ -102,10 +104,6 @@ class DisplayBuffer extends Model
tokenizedBuffer: @tokenizedBuffer.serialize()
largeFileMode: @largeFileMode
deserializeParams: (params) ->
params.tokenizedBuffer = TokenizedBuffer.deserialize(params.tokenizedBuffer)
params
copy: ->
newDisplayBuffer = new DisplayBuffer({@buffer, tabLength: @getTabLength(), @largeFileMode})
newDisplayBuffer.setScrollTop(@getScrollTop())