Bug 33300 Package Explorer->Refactor->Move does not allow non-Java projects as destination
Build id: 200302211557 Although you can see non-Java projects and resources on the Package Explorer view, when moving a resource (Refactor->Move), only Java projects are offered as options for destination. If I can use this option to move any resource (from the user perspective, it looks like the same move action - when working with non-Java resources - as offered by the Resource Navigator), I should be able to use it to move to any kind of project.
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/reorg/JdtMoveAction.java
import org.eclipse.jdt.ui.JavaElementLabelProvider;
import org.eclipse.jdt.ui.StandardJavaElementContentProvider;
import org.eclipse.jdt.internal.ui.IJavaHelpContextIds;
import org.eclipse.jdt.internal.ui.JavaPlugin;
import org.eclipse.jdt.internal.ui.preferences.JavaPreferencesSettings;
import org.eclipse.jdt.internal.ui.refactoring.QualifiedNameComponent;
import org.eclipse.jdt.internal.ui.refactoring.RefactoringMessages;
import org.eclipse.jdt.internal.ui.refactoring.RefactoringWizard;
import org.eclipse.jdt.internal.ui.refactoring.RefactoringWizardDialog;
import org.eclipse.jdt.internal.ui.refactoring.RefactoringWizardPage;
import org.eclipse.jdt.internal.ui.util.ExceptionHandler;
import org.eclipse.jdt.internal.corext.refactoring.reorg.IPackageFragmentRootManipulationQuery;
import org.eclipse.jdt.internal.corext.refactoring.reorg.MoveRefactoring;
import org.eclipse.jdt.internal.corext.refactoring.reorg.ReorgRefactoring;
import org.eclipse.jdt.internal.corext.refactoring.reorg.ReorgUtils;
public class JdtMoveAction extends ReorgDestinationAction {
	public static final int PREVIEW_ID= IDialogConstants.CLIENT_ID + 1;
	
	private boolean fShowPreview= false;
	public JdtMoveAction(IWorkbenchSite site) {
		super(site);
		setText(ReorgMessages.getString("moveAction.label"));
	}
	protected void run(IStructuredSelection selection) {
		if (ClipboardActionUtil.hasOnlyProjects(selection)){
			moveProject(selection);
		}	else {
			super.run(selection);
		}
	}