diff --git a/astrid/res/values/strings-core.xml b/astrid/res/values/strings-core.xml index 9dcf07f73..321558cbe 100644 --- a/astrid/res/values/strings-core.xml +++ b/astrid/res/values/strings-core.xml @@ -214,6 +214,9 @@ button: add task & go to the edit page. Undelete Task + + + Purge Task diff --git a/astrid/src/com/todoroo/astrid/activity/TaskListActivity.java b/astrid/src/com/todoroo/astrid/activity/TaskListActivity.java index 50c8a6e1b..b5d2ee2c5 100644 --- a/astrid/src/com/todoroo/astrid/activity/TaskListActivity.java +++ b/astrid/src/com/todoroo/astrid/activity/TaskListActivity.java @@ -116,7 +116,8 @@ public class TaskListActivity extends ListActivity implements OnScrollListener, private static final int CONTEXT_MENU_EDIT_TASK_ID = Menu.FIRST + 6; private static final int CONTEXT_MENU_DELETE_TASK_ID = Menu.FIRST + 7; private static final int CONTEXT_MENU_UNDELETE_TASK_ID = Menu.FIRST + 8; - private static final int CONTEXT_MENU_ADDON_INTENT_ID = Menu.FIRST + 9; + private static final int CONTEXT_MENU_PURGE_TASK_ID = Menu.FIRST + 9; + private static final int CONTEXT_MENU_ADDON_INTENT_ID = Menu.FIRST + 10; /** menu code indicating the end of the context menu */ private static final int CONTEXT_MENU_DEBUG = Menu.FIRST + 10; @@ -732,6 +733,9 @@ public class TaskListActivity extends ListActivity implements OnScrollListener, if(task.isDeleted()) { menu.add(id, CONTEXT_MENU_UNDELETE_TASK_ID, Menu.NONE, R.string.TAd_contextUndeleteTask); + + menu.add(id, CONTEXT_MENU_PURGE_TASK_ID, Menu.NONE, + R.string.TAd_contextPurgeTask); } else { menu.add(id, CONTEXT_MENU_EDIT_TASK_ID, Menu.NONE, R.string.TAd_contextEditTask); @@ -841,6 +845,15 @@ public class TaskListActivity extends ListActivity implements OnScrollListener, return true; } + case CONTEXT_MENU_PURGE_TASK_ID: { + itemId = item.getGroupId(); + Task task = new Task(); + task.setId(itemId); + taskService.delete(task); + loadTaskListContent(true); + return true; + } + // --- debug case CONTEXT_MENU_DEBUG: {