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
private void doTypeHierarchyChangedOnViewers(IType[] changedTypes) {
		if (fHierarchyLifeCycle.getHierarchy() == null || !fHierarchyLifeCycle.getHierarchy().exists()) {
			clearInput();
		} else {
			if (changedTypes == null) {
				
				try {
					fHierarchyLifeCycle.ensureRefreshedTypeHierarchy(fInputElement, new BusyIndicatorRunnableContext());
				} catch (JavaModelException e) {
					JavaPlugin.log(e.getStatus());
					clearInput();
					return;
				}
				fMethodsViewer.refresh();
				updateHierarchyViewer();
			} else {
				
				fMethodsViewer.refresh();
				if (getCurrentViewer().isMethodFiltering()) {
					if (changedTypes.length == 1) {
						getCurrentViewer().refresh(changedTypes[0]);
					} else {
						updateHierarchyViewer();
					}
				} else {
					getCurrentViewer().update(changedTypes, new String[] { IBasicPropertyConstants.P_TEXT, IBasicPropertyConstants.P_IMAGE } );
				}
			}
		}