Bug 327964 EPartService's hidePart may fail when trying to hide a shared part that's in a shared container
The placeholder retrieval code in the EPartService implementation doesn't go far down deep enough and actually stops at the shared container level. This causes the placeholder of the shared part to not be found.
bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/ui/internal/workbench/PartServiceImpl.java
private IEventBroker eventBroker;
	private PartActivationHistory partActivationHistory;
	private MPart activePart;
	private MPart lastActivePart;
	private ListenerList listeners = new ListenerList();
	private boolean constructed = false;
	@Inject
	public PartServiceImpl(MApplication application, @Optional MWindow window) {
		
		this.application = application;
		workbenchWindow = window;
	}
	@Inject
	void setPart(@Optional @Named(IServiceConstants.ACTIVE_PART) MPart p) {
		if (activePart != p) {
			lastActivePart = activePart;
			activePart = p;
			
			if (constructed && !listeners.isEmpty()) {
				if (lastActivePart != null && lastActivePart != activePart) {
					firePartDeactivated(lastActivePart);
				}
				if (activePart != null) {
					firePartActivated(activePart);
				}
			}
		}
	}
	@PostConstruct
	void postConstruct() {