Serialize in saveStateSync. Separate deserialization from deactivation.

This commit is contained in:
Katrina Uychaco
2016-01-26 22:52:30 -07:00
parent a8692f1984
commit 82d584bac6

View File

@@ -636,16 +636,19 @@ class AtomEnvironment extends Model
@openInitialEmptyEditorIfNecessary()
serialize: ->
@state.project = @project.serialize()
@state.workspace = @workspace.serialize()
@state.packageStates = @packages.serialize()
@state.grammars = {grammarOverridesByPath: @grammars.grammarOverridesByPath}
@state.fullScreen = @isFullScreen()
unloadEditorWindow: ->
return if not @project
@storeWindowBackground()
@state.grammars = {grammarOverridesByPath: @grammars.grammarOverridesByPath}
@state.project = @project.serialize()
@state.workspace = @workspace.serialize()
@serialize()
@packages.deactivatePackages()
@state.packageStates = @packages.packageStates
@state.fullScreen = @isFullScreen()
@saveStateSync()
@saveBlobStoreSync()
@@ -782,6 +785,7 @@ class AtomEnvironment extends Model
saveStateSync: ->
return unless @enablePersistence
@serialize()
if storageKey = @getStateKey(@project?.getPaths())
@getStorageFolder().store(storageKey, @state)