Summary: | Tracing UI bundle declarative service causes the workspace prompt to not display | ||||||
---|---|---|---|---|---|---|---|
Product: | [Eclipse Project] PDE | Reporter: | Troy Bishop <tjbishop> | ||||
Component: | UI | Assignee: | Curtis Windatt <curtis.windatt.public> | ||||
Status: | RESOLVED FIXED | QA Contact: | |||||
Severity: | major | ||||||
Priority: | P3 | CC: | curtis.windatt.public, daniel_megert, pwebster | ||||
Version: | 4.2.1 | Keywords: | contributed | ||||
Target Milestone: | 4.3 M4 | ||||||
Hardware: | PC | ||||||
OS: | Windows 7 | ||||||
Whiteboard: | |||||||
Bug Depends on: | 369916 | ||||||
Bug Blocks: | 395767 | ||||||
Attachments: |
|
Description
Troy Bishop
2012-12-03 11:59:11 EST
If we can't find a better solution, we should be able to implement IStartup to load preference information after a workspace is selected. I would also like to request that a solution needs to be implemented in the 4.2.2 release. We can fall back to using Eclipse early start (IStartup), but Paul has suggested two possible alternatives. 1) Keep the DS in place When the bundle is activated, check that org.eclipse.core.runtime.Platform.getInstanceLocation().isSet() returns true If it is, access the preferences If not, register a StartupMonitor service which will be called during splash takedown (this is earlier than IStartup). When we get the call back, preferences will be available. 2) Have the DS depend on the IWorkbench service Implementing 2 is easier, but tracing would not be enabled until much later during startup. Created attachment 224277 [details]
Potential patch using the StartupMonitor suggestion
Fixed in master: http://git.eclipse.org/c/pde/eclipse.pde.ui.git/commit/?id=8d46594bf85c01f5e7f84c9f4485c4659cbf2fc5 The patch worked great, thanks Troy. Note for testing that you can get the workspace prompt to open when self hosting by deleting the workspace location in your launch configuration. I separated out the non-nls tag change into a separate commit to make it easier to cherry pick when backporting. I also changed the startup monitor to store its own service reference and unregister itself after initializing the preferences. I will clone this bug for 3.8.2/4.2.2. |