🐛 Don't attempt to copy items that aren't copyable

This commit is contained in:
Jason Rudolph
2017-06-08 15:39:59 -04:00
parent de47d3d439
commit f62cb5d427
2 changed files with 18 additions and 3 deletions

View File

@@ -499,6 +499,21 @@ describe('WorkspaceElement', () => {
expect(workspace.paneForItem(item)).toBe(startingPane)
})
})
describe("when the item doesn't implement a `copy` function", () => {
it('does not copy the active item', function () {
const item = document.createElement('div')
const paneBelow = startingPane.splitDown()
expect(paneBelow.getItems().length).toEqual(0)
startingPane.activate()
startingPane.activateItem(item)
workspaceElement.focusPaneViewAbove()
workspaceElement.moveActiveItemToNearestPaneInDirection('below', {keepOriginal: true})
expect(workspace.paneForItem(item)).toBe(startingPane)
expect(paneBelow.getItems().length).toEqual(0)
})
})
})
})

View File

@@ -223,9 +223,9 @@ class PaneContainer {
copyActiveItemToPane (destPane) {
const item = this.activePane.copyActiveItem()
if (!destPane.isItemAllowed(item)) { return }
destPane.activateItem(item)
if (item && destPane.isItemAllowed(item)) {
destPane.activateItem(item)
}
}
destroyEmptyPanes () {