Bug 281040 [CSS] Workbench always overrides IStylingEngine app context
Since the Workbench is created AFTER the CSSStylingSupport is created (see org.eclipse.e4.ui.workbench.swt.internal.WorkbenchApplication), the Workbench always overrides the app context IStylingEngine with a Null Styling. Fix: Just change class org.eclipse.e4.workbench.ui.internal.Workbench: initializeNullStyling(mainContext) into if(appContext.get(IStylingEngine.class.getName()) == null) { initializeNullStyling(mainContext) }
bundles/org.eclipse.e4.ui.workbench.swt/src/org/eclipse/e4/ui/workbench/swt/internal/WorkbenchApplication.java
appContext.set(IResourceUtiltities.class.getName(),
							new ResourceUtility(Activator.getDefault()
									.getBundleAdmin()));
					if (cssURI != null) {
						CSSStylingSupport.initializeStyling(display,
								cssURI, cssResourcesURI, appContext);
					}
					Workbench wb = new Workbench(Activator.getDefault()
							.getInstanceLocation(), RegistryFactory
							.getRegistry(), Activator.getDefault()
							.getBundleAdmin(), appContext,
							new WorkbenchWindowHandler());
					wb.setWorkbenchModelURI(initialWorkbenchDefinitionInstance);
					wb.createUIFromModel();
					wb.run();
				} catch (ThreadDeath th) {
					throw th;
				} catch (Exception ex) {
					ex.printStackTrace();
				} catch (Error err) {
					err.printStackTrace();
				}
			}
		});
		return IApplication.EXIT_OK;
	}
	public void stop() {
	}
}