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
* Contributors:
 *     IBM Corporation - initial API and implementation
 ******************************************************************************/
package org.eclipse.e4.ui.workbench.swt.internal;
import org.eclipse.core.databinding.observable.Realm;
import org.eclipse.core.runtime.Assert;
import org.eclipse.core.runtime.IProduct;
import org.eclipse.core.runtime.Platform;
import org.eclipse.core.runtime.RegistryFactory;
import org.eclipse.e4.core.services.context.EclipseContextFactory;
import org.eclipse.e4.core.services.context.IEclipseContext;
import org.eclipse.e4.core.services.context.spi.IContextConstants;
import org.eclipse.e4.ui.workbench.swt.Activator;
import org.eclipse.e4.workbench.ui.IResourceUtiltities;
import org.eclipse.e4.workbench.ui.internal.Workbench;
import org.eclipse.emf.common.util.URI;
import org.eclipse.equinox.app.IApplication;
import org.eclipse.equinox.app.IApplicationContext;
import org.eclipse.jface.databinding.swt.SWTObservables;
import org.eclipse.swt.widgets.Display;
/**
 *
 */
public class WorkbenchApplication implements IApplication {
	
	public static Workbench workbench;
	public Object start(IApplicationContext applicationContext)
			throws Exception {
		final Display display = new Display();
		String appURI = null;