Bug 326175 WBWRenderer arbitrarily modifies the window's parent's active context chain
The window's parent's context arbitrarily changes its active child to the window being rendered in createWidget(*).
bundles/org.eclipse.e4.ui.workbench.renderers.swt/src/org/eclipse/e4/ui/workbench/renderers/swt/WBWRenderer.java
activePart.getTags().add("active"); 
			MUIElement parent = activePart.getParent();
			if (parent == null && activePart.getCurSharedRef() != null) {
				MPlaceholder ph = activePart.getCurSharedRef();
				parent = ph.getParent();
			}
			if (parent instanceof MPartStack && parent.getWidget() != null) {
				parent.getTags().add("active"); 
				setCSSInfo(parent, parent.getWidget());
			} else if (activePart.getWidget() != null) {
				setCSSInfo(activePart, activePart.getWidget());
			}
		}
	}
	private void closeDetachedWindow(MWindow window) {
		EPartService partService = (EPartService) window.getContext().get(
				EPartService.class.getName());
		List<MPart> parts = modelService.findElements(window, null,
				MPart.class, null);
		
		
		for (MPart part : parts) {
			if (!partService.savePart(part, true)) {
				return;
			}
		}
		
		for (MPart part : parts) {
			partService.hidePart(part);
		}