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
private boolean isSearchResultView(IWorkbenchPart part) {
		return SearchUtil.isSearchPlugInActivated() && (part instanceof ISearchResultView);
	}
	protected boolean needsToProcessSelectionChanged(IWorkbenchPart part, ISelection selection) {
		if (!fProcessSelectionEvents || part == this || isSearchResultView(part) || !(selection instanceof IStructuredSelection)){
			if (part == this)
				fPreviousSelectionProvider= part;
			return false;
		}
		return true;
	}
	
	public void selectionChanged(IWorkbenchPart part, ISelection selection) {
		if (!needsToProcessSelectionChanged(part, selection))
			return;
		
		
		Object selectedElement= getSingleElementFromSelection(selection);
		
		if (selectedElement != null && (part == null || part.equals(fPreviousSelectionProvider)) && selectedElement.equals(fPreviousSelectedElement))
			return;
		fPreviousSelectedElement= selectedElement;
		Object currentInput= getViewer().getInput();		
		if (selectedElement != null && selectedElement.equals(currentInput)) {
			IJavaElement elementToSelect= findElementToSelect(selectedElement);
			if (elementToSelect != null && getTypeComparator().compare(selectedElement, elementToSelect) < 0)
				setSelection(new StructuredSelection(elementToSelect), true);
			else if (elementToSelect == null && (this instanceof MembersView)) {
				setSelection(StructuredSelection.EMPTY, true);
				fPreviousSelectedElement= StructuredSelection.EMPTY;