Bug 89625 [IDE] IDEWorkbenchWindowAdvisor refers to workbench internals for backdrop
3.1 M5 The code in IDEWorkbenchWindowAdvisor to provide the backdrop when all perspectives are closed refers to internal workbench classes: import org.eclipse.ui.internal.IWorkbenchGraphicConstants; import org.eclipse.ui.internal.WorkbenchImages; import org.eclipse.ui.internal.dialogs.SelectPerspectiveDialog; This should be done using only API.
bundles/org.eclipse.ui.ide/src/org/eclipse/ui/internal/ide/IDEWorkbenchWindowAdvisor.java
if (IDEWorkbenchPlugin.getDefault().getPreferenceStore().getBoolean(
                IDEInternalPreferences.WELCOME_DIALOG)) {
            
            IProduct product = Platform.getProduct();
            if (product == null)
                return;
            AboutInfo productInfo = new AboutInfo(product);
            URL url = productInfo.getWelcomePageURL();
            if (url == null)
                return;
            IDEWorkbenchPlugin.getDefault().getPreferenceStore().setValue(
                    IDEInternalPreferences.WELCOME_DIALOG, false);
            openWelcomeEditor(window, new WelcomeEditorInput(productInfo), null);
        } else {
            
            List welcomeFeatures = new ArrayList();
            for (Iterator it = wbAdvisor.getNewlyAddedBundleGroups().entrySet()
                    .iterator(); it.hasNext();) {
                Map.Entry entry = (Map.Entry) it.next();
                String versionedId = (String) entry.getKey();
                String featureId = versionedId.substring(0, versionedId
                        .indexOf(':'));
                AboutInfo info = (AboutInfo) entry.getValue();
                if (info != null && info.getWelcomePageURL() != null) {
                    welcomeFeatures.add(info);
                    
                    IPlatformConfiguration platformConfiguration = ConfiguratorUtils
                            .getCurrentPlatformConfiguration();
                    IPlatformConfiguration.IFeatureEntry feature = platformConfiguration
                            .findConfiguredFeatureEntry(featureId);