 			return (node._alias) + "." + textProperty
 
 	_refreshItemDom: (itemDom, node, parentScope) ->
+		nodeScope = cola.util.userData(itemDom, "scope")
+		if nodeScope?.data.getTargetData() isnt node
+			collapsed = true
+
 		nodeScope = super(itemDom, node, parentScope)
 		node._scope = nodeScope
 


		@_currentNode = node

		if node
			itemDom = @_itemDomMap[node._id]
			if itemDom and @_highlightCurrentItem

		$fly(itemDom.firstChild).removeClass("expanded")
		$nodesWrapper = $fly(itemDom.lastChild)
		if $nodesWrapper.hasClass("child-nodes")
			if noAnimation
				$nodesWrapper.hide()
			else
				$nodesWrapper.slideUp(150)

		node._expanded = false
		return

	_refreshItems: () ->
		if @_currentNode
			itemDom = @_itemDomMap[@_currentNode._id]
			delete @_currentNode
			$fly(itemDom).removeClass("current") if itemDom
		return super()

	_onItemsRefresh: () ->
		@_refreshItems()
