Serialize TextBuffer inside EditSession serialize

This commit is contained in:
Mutwin Kraus
2013-03-26 14:46:45 +01:00
committed by Nathan Sobo
parent 693d8258ad
commit cc87595e4e
5 changed files with 69 additions and 19 deletions

View File

@@ -15,11 +15,8 @@ class EditSession
registerDeserializer(this)
@deserialize: (state) ->
if fs.exists(state.buffer)
session = project.buildEditSession(state.buffer)
else if state.unsavedState
session = project.buildEditSessionFromState(state.unsavedState)
else
session = project.buildEditSessionForBuffer(Buffer.deserialize(state.buffer))
if !session?
console.warn "Could not build edit session for path '#{state.buffer}' because that file no longer exists" if state.buffer
session = project.buildEditSession(null)
session.setScrollTop(state.scrollTop)
@@ -90,11 +87,10 @@ class EditSession
serialize: ->
deserializer: 'EditSession'
buffer: @buffer.getPath()
buffer: @buffer.serialize()
scrollTop: @getScrollTop()
scrollLeft: @getScrollLeft()
cursorScreenPosition: @getCursorScreenPosition().serialize()
unsavedState: @buffer.getText() if !@buffer.fileExists()
copy: ->
EditSession.deserialize(@serialize(), @project)