Bug 282049 Pass old context value to ContextChangeEvent
We should provide the "old value" for add and remove context change events. Knowing the old value will help listeners make more informed update decisions (i.e., they can accurately determine if the change effects them or not).
bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/workbench/ui/internal/UISchedulerStrategy.java
/*******************************************************************************
 * Copyright (c) 2009 IBM Corporation and others.
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v1.0
 * which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/epl-v10.html
 *
 * Contributors:
 *     IBM Corporation - initial API and implementation
 *******************************************************************************/
package org.eclipse.e4.workbench.ui.internal;
import org.eclipse.core.databinding.observable.Realm;
import org.eclipse.e4.core.services.context.EclipseContextFactory;
import org.eclipse.e4.core.services.context.IEclipseContext;
import org.eclipse.e4.core.services.context.IRunAndTrack;
import org.eclipse.e4.core.services.context.spi.ISchedulerStrategy;
/**
 * A context scheduler strategy that uses the realm's async event queue for processing updates.
 */
public class UISchedulerStrategy implements ISchedulerStrategy {
	private static final ISchedulerStrategy instance = new UISchedulerStrategy();
	/**