|Migrating from 3.3 to 3.6 [message #548378]
||Wed, 21 July 2010 15:47
| Martin Kessler
Registered: July 2009
we are migrating our RCP application from Eclipse 3.3 to 3.6 and have observed some strange behaviour.
We have a typical master-detail layout with one ViewPart showing an overview table and another ViewPart showing the details of the selected record. We are listening to the IPartListener2.partVisible event so that we know if a view might have to refresh itself. When the overview refreshes, it also triggers the details view to update. If the details view is not visible, we bring it to front using window.getActivePage().showView(viewId). This causes some recalculation of the window bounds and the window position and eventually org.eclipse.swt.widgets.Control.WM_WINDOWPOSCHANGED is called. In 3.3, this method did nothing. In 3.6 it causes the OS to call org.eclipse.swt.widgets.Control.WM_SIZE which again fires a partVisible event for the overview ViewPart. It tries to initialize itself again which is interrupted by our framework; otherwise it would probably lead to an endless loop.
How can we avoid that partVisible is fired twice?
Thanks a lot in advance!
Powered by FUDForum
. Page generated in 0.01879 seconds