     newRoot = @copyPaneAxis(root)
     root.destroy()
     for paneAxis in @getAllAxis(newRoot)
-      # unsubscribe before copy
-      paneAxis.unsubscribeFromChild(child) for child in paneAxis.getChildren()
-
       newPaneAxis = @copyPaneAxis paneAxis
       paneAxis.parent.replaceChild paneAxis, newPaneAxis
       paneAxis.destroy()


    container.setRoot(root) if root isnt paneInfo.root
    container.destroyEmptyPanes()
    # @reparentPaneAxis(axis) for axis in @getAllAxis(root)
    newPane.activateItemAtIndex index
    newPane.activate()


    @Pane      ?= thisPane.constructor
    @PaneAxis  ?= root.constructor

    # parent.removeChild(thisPane, true)
    if root.getOrientation() isnt orientation
      @debug "Different orientation"
      root = new @PaneAxis({container, orientation, children: [@copyRoot(root)]})
