Bug 327765 EPartService will hide a part of another perspective
bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/ui/internal/workbench/PartServiceImpl.java
if (part == null) {
			return null;
		}
		return showPart(partState, part, part);
	}
	public MPart showPart(MPart part, PartState partState) {
		Assert.isNotNull(part);
		Assert.isNotNull(partState);
		MPart localPart = findPart(part.getElementId());
		if (localPart != null) {
			return showPart(partState, part, localPart);
		}
		return showPart(partState, part, part);
	}
	public void hidePart(MPart part) {
		hidePart(part, false);
	}
	public void hidePart(MPart part, boolean force) {
		if (isInContainer(part)) {
			MPlaceholder sharedRef = part.getCurSharedRef();
			MUIElement toBeRemoved = getRemoveTarget(part);
			MElementContainer<MUIElement> parent = getParent(toBeRemoved);
			List<MUIElement> children = parent.getChildren();
			IEclipseContext partContext = part.getContext();
			MPart activationCandidate = null;
			
			if (partContext != null && partContext.getParent().getActiveChild() == partContext) {
				
				activationCandidate = partActivationHistory.getNextActivationCandidate(part);
			}