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.
tests/org.eclipse.e4.ui.tests/src/org/eclipse/e4/ui/tests/application/EPartServiceTest.java
public void testGetDirtyParts3_TrueFalse() {
		testGetDirtyParts3(true, false);
	}
	public void testGetDirtyParts3_FalseTrue() {
		testGetDirtyParts3(false, true);
	}
	public void testGetDirtyParts3_FalseFalse() {
		testGetDirtyParts3(false, false);
	}
	public void testEvent_PartActivated() {
		MApplication application = createApplication("partFront", "partBack");
		MWindow window = application.getChildren().get(0);
		MPartStack partStack = (MPartStack) window.getChildren().get(0);
		MPart partFront = (MPart) partStack.getChildren().get(0);
		MPart partBack = (MPart) partStack.getChildren().get(1);
		partStack.setSelectedElement(partFront);
		getEngine().createGui(window);
		EPartService partService = (EPartService) window.getContext().get(
				EPartService.class.getName());
		assertEquals(partFront, partService.getActivePart());
		PartListener partListener = new PartListener();
		partService.addPartListener(partListener);
		partService.activate(partBack);
		assertEquals(1, partListener.getActivated());
		assertEquals(partBack, partListener.getActivatedParts().get(0));
		assertTrue(partListener.isValid());
	}
	public void testEvent_PartActivated2() {
		MApplication application = ApplicationFactoryImpl.eINSTANCE
				.createApplication();