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
* IDE-specific workbench action: Add task.
     * This action is a {@link RetargetAction} with 
     * id "addTask". This action maintains its enablement state.
     */
    public static final ActionFactory ADD_TASK = new ActionFactory("addTask") { 
        
        public IWorkbenchAction create(IWorkbenchWindow window) {
            if (window == null) {
                throw new IllegalArgumentException();
            }
            RetargetAction action = new RetargetAction(getId(), IDEWorkbenchMessages.Workbench_addTask);
            action.setToolTipText(IDEWorkbenchMessages.Workbench_addTaskToolTip);
            window.getPartService().addPartListener(action);
            action.setActionDefinitionId("org.eclipse.ui.edit.addTask"); 
            return action;
        }
    };
    /**
     * IDE-specific workbench action: Add bookmark.
     * This action is a {@link RetargetAction} with 
     * id "bookmark". This action maintains its enablement state.
     */
    public static final ActionFactory BOOKMARK = new ActionFactory("bookmark") { 
        
        public IWorkbenchAction create(IWorkbenchWindow window) {
            if (window == null) {
                throw new IllegalArgumentException();
            }
            RetargetAction action = new RetargetAction(getId(), IDEWorkbenchMessages.Workbench_addBookmark);
            action.setToolTipText(IDEWorkbenchMessages.Workbench_addBookmarkToolTip);