Bug 153315 [Contributions] The ToggleAutoBuildAction lacks an action definition id
Because the ToggleAutoBuildAction lacks an action definition id we can not use activities to hide this from the project menu. We found that adding one fixes this problem: public ToggleAutoBuildAction(IWorkbenchWindow window) { super(IDEWorkbenchMessages.Workbench_buildAutomatically); this.window = window; setChecked(ResourcesPlugin.getWorkspace().isAutoBuilding()); setActionDefinitionId("org.eclipse.ui.project.buildAutomatically"); //$NON-NLS-1$ }
bundles/org.eclipse.ui.ide/src/org/eclipse/ui/ide/IDEActionFactory.java
window.getPartService().addPartListener(action);
            action.setActionDefinitionId("org.eclipse.ui.edit.addBookmark"); 
            return action;
        }
    };
    /**
     * IDE-specific workbench action: Incremental build.
     * This action maintains its enablement state.
     */
    public static final ActionFactory BUILD = new ActionFactory("build") { 
        
        public IWorkbenchAction create(IWorkbenchWindow window) {
            if (window == null) {
                throw new IllegalArgumentException();
            }
            return new GlobalBuildAction(window,
                    IncrementalProjectBuilder.INCREMENTAL_BUILD);
        }
    };
    /**
     * IDE-specific workbench action: Build clean
     * This action maintains its enablement state.
     * @since 3.0
     */
    public static final ActionFactory BUILD_CLEAN = new ActionFactory(
            "buildClean") { 
        
        public IWorkbenchAction create(IWorkbenchWindow window) {
            if (window == null) {
                throw new IllegalArgumentException();