Bug 44393 [Viewers] + shown in front of methods even if local types filter is on (different behaviour in outliner, members view and package explorer)
Test pass M4 - load JUnit - add an anonymous type to Assert#Assert - enable local type filter in Outliner observe: there is a plus in front of Assert which goes away when clicking on it. This might be JFace related but I would prefer that the plus is removed when the filter is switched on. - close Outliner - open Outliner observe: there isn't any plus sign in front of Assert - open Java Browsing perspective - enable local type filter in members view - select Assert class in Types view observe: the constructor Assert has a plus sign in front which goes away when clicking on it. - switch to another class - switch back to Assert observe: the constructor again has a plus sign in front. This is really annoying. The members view should at least behave like the outliner. - switch to package explorer - expand Assert - toggle local type filter observe: plus sign is added and removed correctly.
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/JavaOutlinePage.java
/*
	 * @see Page#setFocus()
	 */
	public void setFocus() {
		if (fOutlineViewer != null)
			fOutlineViewer.getControl().setFocus();
	}
	
	/**
	 * Checks whether a given Java element is an inner type.
	 * 
	 * @param element the java element
	 * @return <code>true</code> iff the given element is an inner type
	 */
	private boolean isInnerType(IJavaElement element) {
		
		if (element != null && element.getElementType() == IJavaElement.TYPE) {
			IType type= (IType)element;
			try {
				return type.isMember();
			} catch (JavaModelException e) {
				IJavaElement parent= type.getParent();
				if (parent != null) {
					int parentElementType= parent.getElementType();
					return (parentElementType != IJavaElement.COMPILATION_UNIT && parentElementType != IJavaElement.CLASS_FILE);
				}
			}
		}