View | Details | Raw Unified | Return to bug 260865 | Differences between
and this patch

Collapse All | Expand All

(-)ui/org/eclipse/jdt/internal/ui/compare/JavaStructureDiffViewer.java (-24 / +15 lines)
Lines 306-330 Link Here
306
		return (javaElement instanceof ICompilationUnit) && JavaModelUtil.isEditable((ICompilationUnit)javaElement);
306
		return (javaElement instanceof ICompilationUnit) && JavaModelUtil.isEditable((ICompilationUnit)javaElement);
307
	}
307
	}
308
308
309
	/*
309
	/**
310
	 * This is a copy of the internal JavaOutlinePage.ElementChangedListener#isPossibleStructuralChange method.
310
	 * This is a modified copy of the internal JavaOutlinePage.ElementChangedListener#findElement
311
	 * @see org.eclipse.jdt.internal.ui.javaeditor.JavaOutlinePage.ElementChangedListener#isPossibleStructuralChange(IJavaElementDelta)
311
	 * method.
312
	 * @since 3.5
312
	 * <p>
313
	 */
313
	 * When the given Java element equals the one from delta this method doesn't make an additional
314
	private boolean isPossibleStructuralChange(IJavaElementDelta cuDelta) {
314
	 * check if this is a potential structural change. Treats any change affecting the element as
315
		if (cuDelta.getKind() != IJavaElementDelta.CHANGED) {
315
	 * relevant and returns the delta right away.
316
			return true; // add or remove
316
	 * 
317
		}
317
	 * @param unit the element to test
318
		int flags= cuDelta.getFlags();
318
	 * @param delta the Java element delta
319
		if ((flags & IJavaElementDelta.F_CHILDREN) != 0) {
319
	 * @return the delta if the given element is affected by it or <code>null</code> otherwise
320
			return true;
320
	 * 
321
		}
321
	 * @see org.eclipse.jdt.internal.ui.javaeditor.JavaOutlinePage.ElementChangedListener#findElement(IJavaElement,
322
		return (flags & (IJavaElementDelta.F_CONTENT | IJavaElementDelta.F_FINE_GRAINED)) == IJavaElementDelta.F_CONTENT;
322
	 *      IJavaElementDelta)
323
	}
324
	
325
	/*
326
	 * This is a copy of the internal JavaOutlinePage.ElementChangedListener#findElement method.
327
	 * @see org.eclipse.jdt.internal.ui.javaeditor.JavaOutlinePage.ElementChangedListener#findElement(IJavaElement, IJavaElementDelta)
328
	 * @since 3.5
323
	 * @since 3.5
329
	 */
324
	 */
330
	protected IJavaElementDelta findJavaElementDelta(IJavaElement unit, IJavaElementDelta delta) {
325
	protected IJavaElementDelta findJavaElementDelta(IJavaElement unit, IJavaElementDelta delta) {
Lines 335-347 Link Here
335
		IJavaElement element= delta.getElement();
330
		IJavaElement element= delta.getElement();
336
331
337
		if (unit.equals(element)) {
332
		if (unit.equals(element)) {
338
			if (isPossibleStructuralChange(delta)) {
333
			return delta;
339
				return delta;
340
			}
341
			return null;
342
		}
334
		}
343
335
344
345
		if (element.getElementType() > IJavaElement.CLASS_FILE)
336
		if (element.getElementType() > IJavaElement.CLASS_FILE)
346
			return null;
337
			return null;
347
338

Return to bug 260865