Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
View | Details | Raw Unified | Return to bug 139933 | Differences between
and this patch

Collapse All | Expand All

(-)ui/org/eclipse/jdt/internal/ui/navigator/JavaNavigatorContentProvider.java (-2 / +22 lines)
Lines 13-18 Link Here
13
import java.util.Arrays;
13
import java.util.Arrays;
14
import java.util.Iterator;
14
import java.util.Iterator;
15
import java.util.LinkedHashSet;
15
import java.util.LinkedHashSet;
16
import java.util.List;
16
import java.util.Set;
17
import java.util.Set;
17
18
18
import org.eclipse.core.resources.IContainer;
19
import org.eclipse.core.resources.IContainer;
Lines 55-60 Link Here
55
56
56
	private IExtensionStateModel fStateModel;
57
	private IExtensionStateModel fStateModel;
57
58
59
	private Object fRealInput;
60
58
	public void init(ICommonContentExtensionSite commonContentExtensionSite) {
61
	public void init(ICommonContentExtensionSite commonContentExtensionSite) {
59
		IExtensionStateModel stateModel = commonContentExtensionSite
62
		IExtensionStateModel stateModel = commonContentExtensionSite
60
				.getExtensionStateModel();
63
				.getExtensionStateModel();
Lines 81-94 Link Here
81
		setProvideMembers(showCUChildren);
84
		setProvideMembers(showCUChildren);
82
	}
85
	}
83
86
84
	public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
87
	public void inputChanged(Viewer viewer, Object oldInput, Object newInput) { 
88
		fRealInput = newInput;
85
		super.inputChanged(viewer, oldInput, findInputElement(newInput));
89
		super.inputChanged(viewer, oldInput, findInputElement(newInput));
86
	}
90
	}
87
	
91
	
88
	public Object getParent(Object element) {
92
	public Object getParent(Object element) {
89
		Object parent= super.getParent(element);
93
		Object parent= super.getParent(element);
90
		if (parent instanceof IJavaModel) {
94
		if (parent instanceof IJavaModel) {
91
			return getViewerInput() != null ? getViewerInput() : parent;
95
			return getViewerInput() != null ? fRealInput : parent;
92
		}
96
		}
93
		return parent;
97
		return parent;
94
	}
98
	}
Lines 216-220 Link Here
216
		else
220
		else
217
			super.postAdd(parent, element);
221
			super.postAdd(parent, element);
218
	}
222
	}
223
	
224
225
	protected void postRefresh(final List toRefresh, final boolean updateLabels) {
226
		for (Iterator iter = toRefresh.iterator(); iter.hasNext();) {
227
			Object element = iter.next();
228
			if(element instanceof IJavaModel) {
229
				iter.remove();
230
				toRefresh.add(fRealInput);
231
				super.postRefresh(toRefresh, updateLabels);
232
				return;
233
			}
234
		} 
235
		super.postRefresh(toRefresh, updateLabels);
236
		
237
	}
238
 
219
239
220
}
240
}

Return to bug 139933