Bug 28082 creating a project in java perspective updates labels in browsing perspective
i created a project in the java perspective stuff in the browsign perspective was called as well there should be no reason for it here's what was called: at org.eclipse.jdt.ui.ProblemsLabelDecorator.getErrorTicksFromMarkers (ProblemsLabelDecorator.java:203) at org.eclipse.jdt.ui.ProblemsLabelDecorator.computeAdornmentFlags (ProblemsLabelDecorator.java:156) at org.eclipse.jdt.ui.ProblemsLabelDecorator.decorateImage (ProblemsLabelDecorator.java:139) at org.eclipse.jdt.internal.ui.viewsupport.JavaUILabelProvider.getImage (JavaUILabelProvider.java:108) at org.eclipse.jface.viewers.DecoratingLabelProvider.getImage (DecoratingLabelProvider.java:67) at org.eclipse.jface.viewers.TreeViewer.doUpdateItem(TreeViewer.java:83) at org.eclipse.jface.viewers.AbstractTreeViewer.doUpdateItem (AbstractTreeViewer.java:363) at org.eclipse.jface.viewers.StructuredViewer.updateItem (StructuredViewer.java:1132) at org.eclipse.jface.viewers.AbstractTreeViewer.createTreeItem (AbstractTreeViewer.java:267) at org.eclipse.jface.viewers.AbstractTreeViewer.add (AbstractTreeViewer.java:139) at org.eclipse.jdt.internal.ui.browsing.JavaBrowsingContentProvider$3.run (JavaBrowsingContentProvider.java:418) at org.eclipse.swt.widgets.Synchronizer.syncExec(Synchronizer.java:123) at org.eclipse.ui.internal.UISynchronizer.syncExec (UISynchronizer.java:18) at org.eclipse.swt.widgets.Display.syncExec(Display.java:1979) at org.eclipse.jdt.internal.ui.browsing.JavaBrowsingContentProvider.postRunnable (JavaBrowsingContentProvider.java:488) at org.eclipse.jdt.internal.ui.browsing.JavaBrowsingContentProvider.postAdd (JavaBrowsingContentProvider.java:405) at org.eclipse.jdt.internal.ui.browsing.JavaBrowsingContentProvider.postAdd (JavaBrowsingContentProvider.java:398) at org.eclipse.jdt.internal.ui.browsing.JavaBrowsingContentProvider.processDelta (JavaBrowsingContentProvider.java:305) at org.eclipse.jdt.internal.ui.browsing.JavaBrowsingContentProvider.processDelta (JavaBrowsingContentProvider.java:359) at org.eclipse.jdt.internal.ui.browsing.JavaBrowsingContentProvider.elementChanged (JavaBrowsingContentProvider.java:221) at org.eclipse.jdt.internal.core.JavaModelManager$3.run (JavaModelManager.java:718) at org.eclipse.core.internal.runtime.InternalPlatform.run (InternalPlatform.java:843) at org.eclipse.core.runtime.Platform.run(Platform.java:413)
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/browsing/JavaBrowsingPart.java
return;
		};
		
		IJavaElement je= (IJavaElement)o;
		IJavaElement elementToSelect= getSuitableJavaElement(findElementToSelect(je));
		IJavaElement newInput= findInputForJavaElement(je);
		if (elementToSelect == null && !isValidInput(newInput))
			
			setInput(null);
		else if (elementToSelect == null || getViewer().testFindItem(elementToSelect) == null) {
			
			setInput(newInput);
			
			elementToSelect= getSuitableJavaElement(elementToSelect);
		}
		
		if (elementToSelect != null && elementToSelect.exists())
			setSelection(new StructuredSelection(elementToSelect), true);
		else
			setSelection(StructuredSelection.EMPTY, true);
	}
	/**
	 * Finds the closest Java element which can be used as input for
	 * this part and has the given Java element as child
	 * 
	 * @param 	je 	the Java element for which to search the closest input
	 * @return	the closest Java element used as input for this part
	 */
	protected IJavaElement findInputForJavaElement(IJavaElement je) {
		if (je == null || !je.exists())