Bug 169591 [Common Navigator] Show In fails for editor inputs
The show(ShowInContext) method for CommonNavigator only considers the selection of the context. When Show In Project Explorer is performed from an editor, the selection is empty and the input is provided. Unfortunately, this is problematic, as the show-in target needs to adapt the input to an IFile so this will probably need to have some sort of extension so that the Project Explorer can plug-in the proper support.
bundles/org.eclipse.ui.navigator/src/org/eclipse/ui/internal/navigator/actions/LinkEditorAction.java
import org.eclipse.ui.IPartListener;
import org.eclipse.ui.IPropertyListener;
import org.eclipse.ui.IWorkbenchPage;
import org.eclipse.ui.IWorkbenchPart;
import org.eclipse.ui.internal.navigator.CommonNavigatorMessages;
import org.eclipse.ui.internal.navigator.NavigatorContentService;
import org.eclipse.ui.internal.navigator.NavigatorPlugin;
import org.eclipse.ui.internal.navigator.extensions.LinkHelperService;
import org.eclipse.ui.navigator.CommonNavigator;
import org.eclipse.ui.navigator.CommonViewer;
import org.eclipse.ui.navigator.ILinkHelper;
import org.eclipse.ui.navigator.INavigatorContentService;
import org.eclipse.ui.part.ISetSelectionTarget;
import org.eclipse.ui.progress.UIJob;
/**
 * This action links the activate editor with the Navigator selection.
 * 
 * @since 3.2
 */
public class LinkEditorAction extends Action implements
		ISelectionChangedListener, IAction, IPropertyListener {
	private static final long BRIEF_DELAY = 100;
	private IPartListener partListener;
	private final CommonNavigator commonNavigator;
	private final CommonViewer commonViewer;
	private final NavigatorContentService contentService;
	private final LinkHelperService linkService;
	private UIJob activateEditorJob = new UIJob(
			CommonNavigatorMessages.Link_With_Editor_Job_) {
		public IStatus runInUIThread(IProgressMonitor monitor) {