Merge remote-tracking branch 'origin/master' into mb-ns-avoid-adding-non-existent-project-directories

This commit is contained in:
Max Brunsfeld
2016-09-19 12:31:38 -07:00
3 changed files with 31 additions and 11 deletions

View File

@@ -12,7 +12,7 @@
"url": "https://github.com/atom/atom/issues"
},
"license": "MIT",
"electronVersion": "1.3.5",
"electronVersion": "1.3.6",
"dependencies": {
"async": "0.2.6",
"atom-keymap": "6.3.2",
@@ -73,8 +73,8 @@
"base16-tomorrow-light-theme": "1.3.0",
"one-dark-ui": "1.6.1",
"one-light-ui": "1.6.1",
"one-dark-syntax": "1.3.1",
"one-light-syntax": "1.3.1",
"one-dark-syntax": "1.4.0",
"one-light-syntax": "1.4.0",
"solarized-dark-syntax": "1.0.2",
"solarized-light-syntax": "1.0.2",
"about": "1.7.0",
@@ -82,7 +82,7 @@
"autocomplete-atom-api": "0.10.0",
"autocomplete-css": "0.11.2",
"autocomplete-html": "0.7.2",
"autocomplete-plus": "2.31.2",
"autocomplete-plus": "2.31.3",
"autocomplete-snippets": "1.11.0",
"autoflow": "0.27.0",
"autosave": "0.23.1",
@@ -107,15 +107,15 @@
"markdown-preview": "0.158.7",
"metrics": "1.0.0",
"notifications": "0.65.1",
"open-on-github": "1.2.0",
"package-generator": "1.0.0",
"open-on-github": "1.2.1",
"package-generator": "1.0.1",
"settings-view": "0.242.3",
"snippets": "1.0.2",
"snippets": "1.0.3",
"spell-check": "0.68.2",
"status-bar": "1.4.1",
"styleguide": "0.47.2",
"symbols-view": "0.113.1",
"tabs": "0.101.0",
"tabs": "0.101.1",
"timecop": "0.33.2",
"tree-view": "0.209.3",
"update-package-dependencies": "0.10.0",

View File

@@ -255,7 +255,9 @@ describe "PaneContainer", ->
it "invokes the given callback when panes are destroyed", ->
container = new PaneContainer(params)
events = []
container.onDidDestroyPane (event) -> events.push(event)
container.onDidDestroyPane (event) ->
expect(event.pane in container.getPanes()).toBe false
events.push(event)
pane1 = container.getActivePane()
pane2 = pane1.splitRight()
@@ -266,6 +268,21 @@ describe "PaneContainer", ->
expect(events).toEqual [{pane: pane2}, {pane: pane3}]
it "invokes the given callback when the container is destroyed", ->
container = new PaneContainer(params)
events = []
container.onDidDestroyPane (event) ->
expect(event.pane in container.getPanes()).toBe false
events.push(event)
pane1 = container.getActivePane()
pane2 = pane1.splitRight()
pane3 = pane2.splitDown()
container.destroy()
expect(events).toEqual [{pane: pane1}, {pane: pane2}, {pane: pane3}]
describe "::onWillDestroyPaneItem() and ::onDidDestroyPaneItem", ->
it "invokes the given callbacks when an item will be destroyed on any pane", ->
container = new PaneContainer(params)

View File

@@ -102,7 +102,10 @@ class PaneContainer extends Model
@setRoot(newChild)
getPanes: ->
@getRoot().getPanes()
if @alive
@getRoot().getPanes()
else
[]
getPaneItems: ->
@getRoot().getItems()
@@ -195,7 +198,7 @@ class PaneContainer extends Model
# Called by Model superclass when destroyed
destroyed: ->
@cancelStoppedChangingActivePaneItemTimeout()
pane.destroy() for pane in @getPanes()
pane.destroy() for pane in @getRoot().getPanes()
@subscriptions.dispose()
@emitter.dispose()