Bug 328946 Part activation history may return incorrect candidate if no placeholders could be found in a perspective
1. Window > Open Perspective > Other... > CVS Repository Exploring 2. Hide the 'CVS Repositories' view. 3. The 'History' view should become active, it is not.
bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/ui/internal/workbench/PartActivationHistory.java
if (part != candidate && candidate.isToBeRendered() && candidate.isVisible()) {
				MPlaceholder placeholder = candidate.getCurSharedRef();
				if (placeholder != null) {
					
					if (!placeholder.isToBeRendered() || !placeholder.isVisible()) {
						continue;
					}
				}
				MElementContainer<MUIElement> parent = placeholder == null ? candidate.getParent()
						: placeholder.getParent();
				
				if (isValid(parent)) {
					
					
					if (parent instanceof MGenericStack<?>) {
						
						MUIElement element = parent.getSelectedElement();
						
						if (element instanceof MPlaceholder) {
							element = ((MPlaceholder) element).getRef();
						}
						
						if (element == part) {
							return candidate;
						}