Bug 327925 Deprecate EPartService's deactivate(MPart) method
It has been marked as @noreference for some time. Now that part activation history has been implemented and the hidePart(*) methods have been altered to take care of this, the deactivate(MPart) method should be removed.
bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/ui/internal/workbench/PartServiceImpl.java
} else if (selectedElement instanceof MElementContainer<?>) {
				return getSubContext((MUIElement) selectedElement);
			}
		}
		return null;
	}
	private void internalFixContext(MPart part, MUIElement oldSelectedElement) {
		if (oldSelectedElement == null) {
			return;
		}
		MContext parentPart = getParentWithContext(oldSelectedElement);
		if (parentPart == null) {
			
			return;
		}
		IEclipseContext parentContext = parentPart.getContext();
		IEclipseContext oldContext = getSubContext(oldSelectedElement);
		Object child = parentContext.getActiveChild();
		if (child == null || oldContext == null || child == oldContext) {
			if (part == null) {
				
				IEclipseContext currentActive = parentContext.getActiveChild();
				if (currentActive != null)
					currentActive.deactivate();
			} else
				part.getContext().activate();
		}
	}
	public MPart findPart(String id) {
		MApplicationElement element = modelService.find(id, getContainer());