Bug 327765 EPartService will hide a part of another perspective
bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/ui/internal/workbench/PartActivationHistory.java
IEclipseContext context = part.getContext();
		if (activateBranch) {
			context.activateBranch();
		} else {
			IEclipseContext parent = context.getParent();
			do {
				context.activate();
				context = parent;
				parent = parent.getParent();
			} while (parent.get(MWindow.class) != null);
		}
		LinkedList<MPart> perspectiveActivationHistory = getPerspectiveActivationHistory(part);
		if (perspectiveActivationHistory != null) {
			perspectiveActivationHistory.remove(part);
			perspectiveActivationHistory.addFirst(part);
		}
		generalActivationHistory.remove(part);
		generalActivationHistory.addFirst(part);
	}
	/**
	 * Checks to see if this element and its parents are actually being rendered.
	 */
	private boolean isValid(MUIElement element) {
		if (element instanceof MApplication) {
			return true;
		}
		MElementContainer<MUIElement> parent = element.getParent();
		if (parent == null) {
			MPlaceholder placeholder = element.getCurSharedRef();
			if (placeholder == null) {