Graphical layout preservation fails during textual refactoring
Problem:
Textual refactorings happen on file level -> GMF’s resource change listener is notified and reloads the resource -> graphical layout may get lost since no proper merging takes place.Solutions:
Submitted by Oskar van Rest on 23 May 2013 at 18:37
1. Do not perform refactorings on file level when an editor for the file is open. However, this conflicts with the way refactorings are normally handled by Eclipse.
2. Deregister or change the behavior of GMF’s resource change listener. GMF/Eclipse may not provide access to this listener, in which case it will be impossible to achieve.
3. Perform a merge after refactoring, but before GMF is notified of the change. This will preserve graphical layout, but GMF will still reload both its resources and re-instantiate all the objects. Also, undoing any previously made changes will not be possible anymore.
Issue Log
duplicate
Log in to post comments