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:
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.

Submitted by Oskar van Rest on 23 May 2013 at 18:37

On 23 May 2013 at 20:04 Oskar van Rest commented:

duplicate


On 23 May 2013 at 20:04 Oskar van Rest closed this issue.

Log in to post comments