Bug 55663 [Activities] IDEWorkbenchActivityHelper should crawl projects on startup to enable any existing natures.
200403230010 Currently the nature detection code only works on resource changes. This code needs to be activated on startup as well so that any existing projects natures will be detected prior to their changing.
bundles/org.eclipse.ui.ide/src/org/eclipse/ui/internal/ide/IDEWorkbenchActivityHelper.java
/**
     * Get the singleton instance of this class.
     * @return the singleton instance of this class.
     * @since 3.0
     */
    public static IDEWorkbenchActivityHelper getInstance() {
        if (singleton == null) {
            singleton = new IDEWorkbenchActivityHelper();            
        }
        return singleton;
    }
    
    /**
     * Create a new <code>IDEWorkbenchActivityHelper</code> which will listen 
     * for workspace changes and promote activities accordingly.
     */
    private IDEWorkbenchActivityHelper() {
        natureMap = new HashMap();
        
        Platform.getExtensionRegistry().addRegistryChangeListener(new IRegistryChangeListener() {
            public void registryChanged(IRegistryChangeEvent event) {
                if (event.getExtensionDeltas("org.eclipse.core.resources", "natures").length > 0) 
                    loadNatures();
            }}, "org.eclipse.core.resources"); 
        loadNatures();
        listener = getChangeListener();
        ResourcesPlugin.getWorkspace().addResourceChangeListener(listener);
   }