Bug 327044 EPartService's hidePart(*) should unset the part's parent element if the part is the selected element
It is not valid to have a selected element that's TBR flag is 'false'.
bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/ui/internal/workbench/PartServiceImpl.java
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();
			
			if (parent.getSelectedElement() == toBeRemoved) {
				for (MUIElement child : children) {
					if (child != toBeRemoved && child.isToBeRendered()) {
						parent.setSelectedElement(child);
						break;
					}
				}
			}
			if (sharedRef != null) {
				sharedRef.setToBeRendered(false);
			} else {
				part.setToBeRendered(false);
			}
			if (force || part.getTags().contains(REMOVE_ON_HIDE_TAG)) {