ActionGroup (final List<TaskListItem> tasks, final Project project, final Ref<Boolean> shiftPressed) { DefaultActionGroup group = new DefaultActionGroup(); final TaskManager manager = TaskManager.getManager(project); final LocalTask task = tasks.get(0).getTask(); if (tasks.size() == 1 && task != null) { group.add(new DumbAwareAction(TaskBundle.message("action.switch.to.text")) { @Override public void actionPerformed(@NotNull AnActionEvent e) { manager.activateTask(task, !shiftPressed.get()); } }); group.add(new DumbAwareAction(TaskBundle.message("action.edit.text.with.mnemonic")) { @Override public void actionPerformed(@NotNull AnActionEvent e) { EditTaskDialog.editTask((LocalTaskImpl)task, project); } }); } final AnAction remove = new DumbAwareAction(TaskBundle.message("action.remove.text")) { @Override public void actionPerformed(@NotNull AnActionEvent e) { for (TaskListItem item : tasks) { LocalTask itemTask = item.getTask(); if (itemTask != null) { removeTask(project, itemTask, manager); } } } }; remove.registerCustomShortcutSet(new CustomShortcutSet(KeyStroke.getKeyStroke(KeyEvent.VK_DELETE, 0)), null); group.add(remove); return group; }