Make Gists a deferred package

This commit is contained in:
Kevin Sawicki
2013-01-25 10:08:00 -08:00
parent bdc85bec76
commit 4a89f4580b
5 changed files with 46 additions and 16 deletions

View File

@@ -1,4 +1,5 @@
AtomPackage = require 'atom-package'
_ = require 'underscore'
module.exports =
class DeferredAtomPackage extends AtomPackage
@@ -10,8 +11,13 @@ class DeferredAtomPackage extends AtomPackage
activate: (@rootView, @state) ->
@instance = null
for event in @loadEvents
@rootView.command event, (e) => @onLoadEvent(e, @getInstance())
onLoadEvent = (e) => @onLoadEvent(e, @getInstance())
if _.isArray(@loadEvents)
for event in @loadEvents
@rootView.command(event, onLoadEvent)
else
for event, selector of @loadEvents
@rootView.command(event, selector, onLoadEvent)
this
deactivate: -> @instance?.deactivate?()