Index: src/org/eclipse/gef/ui/parts/TreeViewerTransferDropListener.java =================================================================== RCS file: /cvsroot/tools/org.eclipse.gef/src/org/eclipse/gef/ui/parts/TreeViewerTransferDropListener.java,v retrieving revision 1.10 diff -u -r1.10 TreeViewerTransferDropListener.java --- src/org/eclipse/gef/ui/parts/TreeViewerTransferDropListener.java 29 Mar 2005 23:57:35 -0000 1.10 +++ src/org/eclipse/gef/ui/parts/TreeViewerTransferDropListener.java 19 Sep 2006 18:46:40 -0000 @@ -49,21 +49,21 @@ Iterator iter = ((List)TreeViewerTransfer.getInstance().getObject()).iterator(); Request request = getTargetRequest(); - request.setType(isMove() ? RequestConstants.REQ_MOVE : RequestConstants.REQ_ORPHAN); - while (iter.hasNext()) { - EditPart editPart = (EditPart)iter.next(); - command.add(editPart.getCommand(request)); - } - - //If reparenting, add all editparts to target editpart. if (!isMove()) { - request.setType(RequestConstants.REQ_ADD); - if (getTargetEditPart() == null) - command.add(UnexecutableCommand.INSTANCE); - else - command.add(getTargetEditPart().getCommand(getTargetRequest())); + request.setType(RequestConstants.REQ_ORPHAN); + while (iter.hasNext()) { + EditPart editPart = (EditPart)iter.next(); + command.add(editPart.getCommand(request)); + } } + + request.setType(isMove() ? RequestConstants.REQ_MOVE_CHILDREN : RequestConstants.REQ_ADD); + if (getTargetEditPart() == null) + command.add(UnexecutableCommand.INSTANCE); + else + command.add(getTargetEditPart().getCommand(getTargetRequest())); + return command; }