Bug 22553 "Show in Types Hierarchy" selects the "wrong" class [type hierarchy]
My custom perspective has a Packages pane, Hierarchy pane and a code editor pane. My packages pane is really a pane with a Packages Tab and a Projects Tab. (1) I select one of my packages. (2) I choose Open in Types Hierarchy. (3) E opens by package in the Types Hierarchy but Selects the class Object! (4) This causes the Package pane to select the java.lang package! (5) I have "lost" my context and the UI looks "funny": I have the beautiful hierarchy view of my classes in my package but, Object is selected (which is not in my package obviously) and java.lang is selected. Suggestion: (a) Do NOT select any classes in the just opened package. (b) If you MUST select a class, select one in the package. Please. Thank you very much.
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/typehierarchy/TypeHierarchyViewPart.java
setOrientation(orientation);
		
		
		IActionBars actionBars= getViewSite().getActionBars();
		IMenuManager viewMenu= actionBars.getMenuManager();
		for (int i= 0; i < fToggleOrientationActions.length; i++) {
			viewMenu.add(fToggleOrientationActions[i]);
		}
		viewMenu.add(new Separator(IWorkbenchActionConstants.MB_ADDITIONS));
		
	
		
		ToolBarManager lowertbmanager= new ToolBarManager(methodViewerToolBar);
		lowertbmanager.add(fEnableMemberFilterAction);			
		lowertbmanager.add(new Separator());
		fMethodsViewer.contributeToToolBar(lowertbmanager);
		lowertbmanager.update(true);
							
		
		int nHierarchyViewers= fAllViewers.length; 
		Viewer[] trackedViewers= new Viewer[nHierarchyViewers + 1];
		for (int i= 0; i < nHierarchyViewers; i++) {
			trackedViewers[i]= fAllViewers[i];
		}
		trackedViewers[nHierarchyViewers]= fMethodsViewer;
		fSelectionProviderMediator= new SelectionProviderMediator(trackedViewers);
		IStatusLineManager slManager= getViewSite().getActionBars().getStatusLineManager();
		fSelectionProviderMediator.addSelectionChangedListener(new StatusBarUpdater(slManager));
		
		getSite().setSelectionProvider(fSelectionProviderMediator);