Community
Participate
Working Groups
Editor that worked fine in Eclipse 4.4, throws exceptions on change selection in Eclipse 4.5M5a. See https://issues.jboss.org/browse/JBIDE-19270 .
This is an Eclipse platform bug. *** This bug has been marked as a duplicate of bug 459388 ***
In JBossTools this problem is critical. We have chosen Sapphire to implement new XML editors instead of extending JBoss Tools XML Editor. However, now all extensions to JBoss Tools XML Editor work with Eclipse 4.5M5a fine, and newly developed editors using Sapphire are so much affected by this issue, that it is impossible to continue the development/testing process and we started to fall behind our time table. Could it be that the issue with Eclipse itself may be workarounded in Sapphire? I have such a use case with Sapphire editor that is not observed with other editors. 1. Open editor - exception happens at org.eclipse.ui.forms.widgets.Section.onPaint(Section.java:344) because getClientArea() does no return at this moment valid size. Could Sapphire change algorithm of control initialization to prevent paint listener to be processing this invalid case? 2. With this first exception the editor is still functional. I can select nodes in tree of editor and see form with field editors for each node. 3. Select a node in Package Explorer. That seems may not have anything to do with Sapphire editor, and indeed, nothing bad happens. 4. Now, again, select a node in the tree of Sapphire editor. It may seem as innocent as step (3), but actually it makes all the difference. Exceptions happen at org.eclipse.sapphire.ui.forms.swt.MasterDetailsEditorPage$DetailsSection.refreshSections(MasterDetailsEditorPage.java:2188) called through org.eclipse.sapphire.ui.forms.swt.MasterDetailsEditorPage$10.selectionChanged(MasterDetailsEditorPage.java:1031), on each selection change, form is not replaced, the editor is dead. At that moment it affects also paintng in other views of Eclipse, but as soon as Sapphire editor is closed, Package Explorer is returning to its normal work. Could you please check if the usage of selection listeners in Sapphire might be improved? How could DetailsSection come into an illegal state just because I selected once a node in the Package Explorer? For complete stacktraces please look at https://issues.jboss.org/browse/JBIDE-19270 . Do you have an idea what is wrong in Eclipse itself? I have checked classes that are in exception's stacktrace, they *are not changed* since a version of Eclipse with which Sapphire worked fine. Probably something is changed in firing events, but I still cannot get to the root of the problem. If you see a solution, could you please help Eclipse team with a patch?
This might be a Linux-specific issue. I've tested on Windows and don't see these exceptions.
New Gerrit change created: https://git.eclipse.org/r/44405
This issue is similar to the issue described in https://bugs.eclipse.org/bugs/show_bug.cgi?id=427843 It is caused by the order "draw" events are sent in GTK3. The issue is different from the issue described in bug 459388. https://git.eclipse.org/r/44405 fixes it.
Gerrit change https://git.eclipse.org/r/44405 was merged to [master]. Commit: http://git.eclipse.org/c/platform/eclipse.platform.ui.git/commit/?id=078230be14e5d8d2357b82ebaafef786a565655d
Thanks Snjezana.
*** Bug 309443 has been marked as a duplicate of this bug. ***
Snjezana can you verify this bug is fixed?
(In reply to Brian de Alwis from comment #9) > Snjezana can you verify this bug is fixed? I have verified the issue in N20150408-2000.
*** Bug 460936 has been marked as a duplicate of this bug. ***