Bug 185569 [CommonNavigator] CommonDragAdapter should provide ways for CommonDragAdapterAssistant to perform clean up after drag has finished
Build ID: M20070212-1330 Steps To Reproduce: I am not sure if this has been fixed in later releases (I am currently working with 3.2.0). The CommonDragAdapter class used by CommonNavigator does not allow CommonDragAdapterAssistant contributions to perform clean up after drag has finished. In my version of CommonDragAdapter, its dragFinished method contains comments saying // TODO Handle clean up if drop target was outside of workbench that's why I am not sure if later versions have already addressed this issue. More information:
bundles/org.eclipse.ui.navigator.resources/src/org/eclipse/ui/navigator/resources/ResourceDragAdapterAssistant.java
}
		return false;
	}
	private IResource[] getSelectedResources(IStructuredSelection aSelection) {
		Set resources = new LinkedHashSet();
		IResource resource = null;
		for (Iterator iter = aSelection.iterator(); iter.hasNext();) {
			Object selected = iter.next();
			resource = adaptToResource(selected);
			if (resource != null) {
				resources.add(resource);
		}
		}
		return (IResource[]) resources.toArray(new IResource[resources.size()]);
	}
	private IResource adaptToResource(Object selected) {
		IResource resource;
		if (selected instanceof IResource) {
			resource = (IResource) selected;
		} else if (selected instanceof IAdaptable) {
			resource = (IResource) ((IAdaptable) selected)
					.getAdapter(IRESOURCE_TYPE);
		} else {
			resource = (IResource) Platform.getAdapterManager().getAdapter(
					selected, IRESOURCE_TYPE);
		}
		return resource;
	}
}