     @project.deserialize(@state.project, @deserializers) if @state.project?
     @deserializeTimings.project = Date.now() - startTime
 
+    startTime = Date.now()
+    @workspace.deserialize(@state.workspace, @deserializers) if @state.workspace?
+    @deserializeTimings.workspace = Date.now() - startTime
+
   getStateKey: (paths) ->
     if paths?.length > 0
       sha1 = crypto.createHash('sha1').update(paths.slice().sort().join("\n")).digest('hex')

      try
        require(userInitScriptPath) if fs.isFileSync(userInitScriptPath)
      catch error
        atom.notifications.addError "Failed to load `#{userInitScriptPath}`",
          detail: error.message
          dismissable: true


    @windowEventHandler = new WindowEventHandler(this)

    @packages.loadPackages()

    workspaceElement = @views.getView(@workspace)
    @keymaps.defaultTarget = workspaceElement
    document.querySelector(@workspaceParentSelectorctor).appendChild(workspaceElement)

    @watchProjectPath()

