Community
Participate
Working Groups
This is because: org.eclipse.e4.workbench.ui.internal.Workbench: public int run() { // ... // TODO get access to IApplicationContext to call applicationRunning() // Platform.endSplash(); I just report this so we don't forget :)
*** Bug 304259 has been marked as a duplicate of this bug. ***
Is this still an issue?
If not, please close as FIXED...
The splash screen of the contacts demo stays for the duration on the current build so yes, it is a problem.
I can take a stab at this.
There are two potential places to address this: 1) E4Workbench.createAndRunUI 2) PartRenderingEngine#run 2) has the correct behaviour from the end-user's perspective. The splash is torn down as soon as the UI window comes up. However, it requires the application lifecycle logic to be embedded in the presentation engine, which is wrong from an architectural point of view. This means each renderer would need to implement this same logic and the renderer needs to know about the equinox app lifecycle. 1) Is the best central place in the workbench, so that all workbench-based applications will get the splash taken down regardless of what presentation engine is plugged in. However the end user experience is bad. The splash comes down and there is a gap of potentially several seconds before the window comes up. This leaves the impression that the application has died. The problem here is that "create and run" are lumped into a single method in the presentation API. Ideally "create" and "run" would be split in two, and the framework (workbench) could handle and steps required in between UI creation and invocation of the event loop. I will attach a patch for solution 2) for 4.0, but this should be reconsidered post 4.0.
Created attachment 172366 [details] Fix
Eric or Oleg please review.
Fix released.