Bug 319583 Parts misbehaving after a perspective switch
1. Launch your inner. 2. Make a new Java project. Make a class. Add a hello world print statement. 3. Ctrl+Shift+B for a breakpoint. Right-click > Debug As > Java Application 4. When prompted, confirm to switch perspectives. 5. The 'Debug' view's content will flash for a second before going empty. F8 to let the application run to completion. 6. The 'Debug', 'Variables', and 'Console' view's stacks will all not activate. You can only activate the editor area and the 'Outline' view's stack. Closing views will not save you. 7. Window > Open Perspective > Java 8. Magically, the 'Variables', 'Debug', and 'Breakpoints' view are now appearing in the bottom stack.
bundles/org.eclipse.e4.ui.workbench.renderers.swt/src/org/eclipse/e4/ui/workbench/renderers/swt/PerspectiveStackRenderer.java
/*******************************************************************************
 * Copyright (c) 2009 IBM Corporation and others.
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v1.0
 * which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/epl-v10.html
 *
 * Contributors:
 *     IBM Corporation - initial API and implementation
 ******************************************************************************/
package org.eclipse.e4.ui.workbench.renderers.swt;
import javax.annotation.PostConstruct;
import javax.inject.Inject;
import org.eclipse.e4.core.contexts.IContextConstants;
import org.eclipse.e4.core.contexts.IEclipseContext;
import org.eclipse.e4.core.services.events.IEventBroker;
import org.eclipse.e4.ui.model.application.ui.MUIElement;
import org.eclipse.e4.ui.model.application.ui.advanced.MPerspective;
import org.eclipse.e4.ui.model.application.ui.advanced.MPerspectiveStack;
import org.eclipse.e4.ui.services.IStylingEngine;
import org.eclipse.e4.ui.workbench.IPresentationEngine;
import org.eclipse.swt.SWT;
import org.eclipse.swt.custom.StackLayout;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
/**
 *
 */
public class PerspectiveStackRenderer extends LazyStackRenderer {