Bug 77649 'Refactor -> Undo' enabled after consecutive change
I200411022000 Having: package test2; public class A { public C c= new C(); public void foo() { } } package test2; public class B { public void bar() { new A().foo(); } } package test2; public class C { } and: - open all 3 CUs - move A#foo() to C - remove 'a' from 'new A().c.foo(a);' in B - save B - Refactor -> Undo -> lost parenthesis in B because undo did no longer match
org.eclipse.ltk.core.refactoring/src/org/eclipse/ltk/internal/core/refactoring/UndoManager.java
*/
	public void aboutToPerformChange(Change change) {
		if (fListeners == null)
			return;
		Object[] listeners= fListeners.getListeners();
		for (int i= 0; i < listeners.length; i++) {
			((IUndoManagerListener)listeners[i]).aboutToPerformChange(this, change);
		}
	}
	
	/**
	 * {@inheritDoc}
	 */
	public void changePerformed(Change change) {
		if (fListeners == null)
			return;
		Object[] listeners= fListeners.getListeners();
		for (int i= 0; i < listeners.length; i++) {
			((IUndoManagerListener)listeners[i]).changePerformed(this, change);
		}
	}
	/*
	 * (Non-Javadoc) Method declared in IUndoManager.
	 */
	public void aboutToPerformRefactoring() {
	}
	/*
	 * (Non-Javadoc) Method declared in IUndoManager.
	 */
	public void refactoringPerformed(boolean success) {