From 5471e9bcccf959c03b9c3943c6fe794547fca69d Mon Sep 17 00:00:00 2001 From: Nathan Sobo Date: Thu, 28 Aug 2014 16:58:38 -0600 Subject: [PATCH] Add PaneContainer::onDidDestroyPaneItem --- src/pane-container.coffee | 7 +++++-- src/pane.coffee | 2 +- src/workspace.coffee | 3 ++- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/pane-container.coffee b/src/pane-container.coffee index 7b0ce7a61..37210cb7a 100644 --- a/src/pane-container.coffee +++ b/src/pane-container.coffee @@ -63,6 +63,9 @@ class PaneContainer extends Model fn(@getActivePaneItem()) @onDidChangeActivePaneItem(fn) + onDidDestroyPaneItem: (fn) -> + @emitter.on 'did-destroy-pane-item', fn + getRoot: -> @root setRoot: (@root) -> @@ -121,8 +124,8 @@ class PaneContainer extends Model destroyEmptyPanes: -> pane.destroy() for pane in @getPanes() when pane.items.length is 0 - itemDestroyed: (item) -> - @emit 'item-destroyed', item + paneItemDestroyed: (item) -> + @emitter.emit 'did-destroy-pane-item', item # Called by Model superclass when destroyed destroyed: -> diff --git a/src/pane.coffee b/src/pane.coffee index b95c72067..bbd1bc729 100644 --- a/src/pane.coffee +++ b/src/pane.coffee @@ -309,7 +309,7 @@ class Pane extends Model @items.splice(index, 1) @emit 'item-removed', item, index, destroyed @emitter.emit 'did-remove-item', {item, index, destroyed} - @container?.itemDestroyed(item) if destroyed + @container?.paneItemDestroyed(item) if destroyed @destroy() if @items.length is 0 and atom.config.get('core.destroyEmptyPanes') # Public: Move the given item to the given index. diff --git a/src/workspace.coffee b/src/workspace.coffee index bf35c9a82..198b74a19 100644 --- a/src/workspace.coffee +++ b/src/workspace.coffee @@ -46,7 +46,8 @@ class Workspace extends Model @openers = [] - @subscribe @paneContainer, 'item-destroyed', @onPaneItemDestroyed + @paneContainer.onDidDestroyPaneItem(@onPaneItemDestroyed) + @registerOpener (filePath) => switch filePath when 'atom://.atom/stylesheet'