Bug 5820 Close all editors brings up hierarchy of object
Build: 1107 1. Open a Java editor in the Java perspective 2. Select the project 3. Hit Ctrl-Shift-F4 The hierarchy for Object appears after ~30 seconds. This is very confusing.
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/packageview/PackageExplorerPart.java
public void dispose() {
	 	if (fViewer != null)
			JavaPlugin.getDefault().getProblemMarkerManager().removeListener(fViewer);
		if (fContextMenu != null && !fContextMenu.isDisposed())
			fContextMenu.dispose();
		getSite().getPage().removePartListener(fPartListener);
		JavaPlugin.getDefault().getPreferenceStore().removePropertyChangeListener(this);
		if (fViewer != null)
			fViewer.removeTreeListener(fExpansionListener);
		super.dispose();	
	}
	/**
	 * Implementation of IWorkbenchPart.createPartControl(Composite)
	 */
	public void createPartControl(Composite parent) {
		fViewer= new ProblemTreeViewer(parent, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL);
		
		boolean showCUChildren= JavaBasePreferencePage.showCompilationUnitChildren();
		fViewer.setContentProvider(new JavaElementContentProvider(showCUChildren, false));
		
		JavaPlugin.getDefault().getProblemMarkerManager().addListener(fViewer);		
		JavaPlugin.getDefault().getPreferenceStore().addPropertyChangeListener(this);
		
		JavaElementLabelProvider labelProvider= new JavaElementLabelProvider(getLabelProviderFlags());
		labelProvider.setErrorTickManager(new MarkerErrorTickProvider());
		fViewer.setLabelProvider(new DecoratingLabelProvider(labelProvider, null));
		fViewer.setSorter(new JavaElementSorter());
		fViewer.addFilter(new EmptyInnerPackageFilter());
		fViewer.setUseHashlookup(true);
		fViewer.addFilter(fPatternFilter);