diff --git a/astrid/res/layout/sort_selection_dialog.xml b/astrid/res/layout/sort_selection_dialog.xml new file mode 100644 index 000000000..ace8e3cca --- /dev/null +++ b/astrid/res/layout/sort_selection_dialog.xml @@ -0,0 +1,77 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/astrid/res/values-ca/strings.xml b/astrid/res/values-ca/strings.xml index 71348978d..90c6ac386 100644 --- a/astrid/res/values-ca/strings.xml +++ b/astrid/res/values-ca/strings.xml @@ -624,25 +624,25 @@ to the plugin creator for fastest service. More... - Recently Modified + Recently Modified - Tasques Completades + Tasques Completades - Hidden Tasks + Hidden Tasks - By Title + By Title - By Due Date + By Due Date - By Importance + By Importance - Deleted Tasks + Deleted Tasks diff --git a/astrid/res/values-cs/strings.xml b/astrid/res/values-cs/strings.xml index 29cda16c5..dde7a8963 100644 --- a/astrid/res/values-cs/strings.xml +++ b/astrid/res/values-cs/strings.xml @@ -617,25 +617,25 @@ to the plugin creator for fastest service. Více... - Nedávno upravené + Nedávno upravené - Dokončené úkoly + Dokončené úkoly - Skryté úkoly + Skryté úkoly - Podle názvu + Podle názvu - Podle data ukončení + Podle data ukončení - Podle důležitosti + Podle důležitosti - Smazané úkoly + Smazané úkoly diff --git a/astrid/res/values-de/strings.xml b/astrid/res/values-de/strings.xml index 2c136c46e..1601acdc0 100644 --- a/astrid/res/values-de/strings.xml +++ b/astrid/res/values-de/strings.xml @@ -617,25 +617,25 @@ to the plugin creator for fastest service. Mehr... - Kürzlich bearbeitet + Kürzlich bearbeitet - Erledigte Aufgaben + Erledigte Aufgaben - Versteckte Aufgaben + Versteckte Aufgaben - Nach Titel + Nach Titel - Nach Fälligkeit + Nach Fälligkeit - Nach Wichtigkeit + Nach Wichtigkeit - Gelöschte Aufgaben + Gelöschte Aufgaben diff --git a/astrid/res/values-es/strings.xml b/astrid/res/values-es/strings.xml index 702569171..710a8e38c 100644 --- a/astrid/res/values-es/strings.xml +++ b/astrid/res/values-es/strings.xml @@ -618,25 +618,25 @@ Si puede añada Astrid a la lista de exclusión de modo que no sea matada. De ot Más… - Recientemente modificado + Recientemente modificado - Tareas Finalizadas + Tareas Finalizadas - Tareas ocultas + Tareas ocultas - Por título + Por título - Por fecha de vencimiento + Por fecha de vencimiento - Por importancia + Por importancia - Tareas eliminadas + Tareas eliminadas diff --git a/astrid/res/values-fr/strings.xml b/astrid/res/values-fr/strings.xml index 0cc65337e..b561a83f0 100644 --- a/astrid/res/values-fr/strings.xml +++ b/astrid/res/values-fr/strings.xml @@ -617,25 +617,25 @@ to the plugin creator for fastest service. Plus... - Récemment modifié + Récemment modifié - Tâches complétées + Tâches complétées - Tâches masquées + Tâches masquées - Par Titre + Par Titre - Par date d\'échéance + Par date d\'échéance - Par priorité + Par priorité - Tâches supprimées + Tâches supprimées diff --git a/astrid/res/values-id/strings.xml b/astrid/res/values-id/strings.xml index 060560d0e..18e7f872b 100644 --- a/astrid/res/values-id/strings.xml +++ b/astrid/res/values-id/strings.xml @@ -631,25 +631,25 @@ you get stuff done. It features reminders, tags, sync, a widget and more. More... - Recently Modified + Recently Modified - Tugas Selesai + Tugas Selesai - Hidden Tasks + Hidden Tasks - By Title + By Title - By Due Date + By Due Date - By Importance + By Importance - Deleted Tasks + Deleted Tasks diff --git a/astrid/res/values-it/strings.xml b/astrid/res/values-it/strings.xml index acfdd12a7..3c4316be0 100644 --- a/astrid/res/values-it/strings.xml +++ b/astrid/res/values-it/strings.xml @@ -620,25 +620,25 @@ you get stuff done. It features reminders, tags, sync, a widget and more. Altri... - Modificato di recente + Modificato di recente - Attività Completate + Attività Completate - Attività Nascoste + Attività Nascoste - Per Titotlo + Per Titotlo - Per scadenza + Per scadenza - Per Importanza + Per Importanza - Attività Eliminate + Attività Eliminate diff --git a/astrid/res/values-ja/strings.xml b/astrid/res/values-ja/strings.xml index ad0f3074f..d3b231671 100644 --- a/astrid/res/values-ja/strings.xml +++ b/astrid/res/values-ja/strings.xml @@ -622,25 +622,25 @@ you get stuff done. It features reminders, tags, sync, a widget and more. その他のフィルタ - 最近編集したタスク + 最近編集したタスク - 完了したタスク + 完了したタスク - 非表示のタスク + 非表示のタスク - タイトル順 + タイトル順 - 期限順 + 期限順 - 重要度順 + 重要度順 - 削除したタスク + 削除したタスク diff --git a/astrid/res/values-ko/strings.xml b/astrid/res/values-ko/strings.xml index 4ba826268..d2ef0d695 100644 --- a/astrid/res/values-ko/strings.xml +++ b/astrid/res/values-ko/strings.xml @@ -628,25 +628,25 @@ Astrid might not let you know when your tasks are due.\n More... - Recently Modified + Recently Modified - 완료된 할일 + 완료된 할일 - Hidden Tasks + Hidden Tasks - By Title + By Title - By Due Date + By Due Date - By Importance + By Importance - Deleted Tasks + Deleted Tasks diff --git a/astrid/res/values-nb/strings.xml b/astrid/res/values-nb/strings.xml index 1b0ce8f12..84f93483d 100644 --- a/astrid/res/values-nb/strings.xml +++ b/astrid/res/values-nb/strings.xml @@ -617,25 +617,25 @@ to the plugin creator for fastest service. Mer... - Nylig endret + Nylig endret - Fullførte oppgaver + Fullførte oppgaver - Skjulte oppgaver + Skjulte oppgaver - Etter tittel + Etter tittel - Etter forfallsdato + Etter forfallsdato - Etter viktighet + Etter viktighet - Slettede oppgaver + Slettede oppgaver diff --git a/astrid/res/values-nl/strings.xml b/astrid/res/values-nl/strings.xml index bc83bb88c..242a32ca4 100644 --- a/astrid/res/values-nl/strings.xml +++ b/astrid/res/values-nl/strings.xml @@ -631,25 +631,25 @@ you get stuff done. It features reminders, tags, sync, a widget and more. More... - Recently Modified + Recently Modified - Afgeronde taken + Afgeronde taken - Hidden Tasks + Hidden Tasks - By Title + By Title - By Due Date + By Due Date - By Importance + By Importance - Deleted Tasks + Deleted Tasks diff --git a/astrid/res/values-pl/strings.xml b/astrid/res/values-pl/strings.xml index c2e4e9b11..bfc4437d9 100644 --- a/astrid/res/values-pl/strings.xml +++ b/astrid/res/values-pl/strings.xml @@ -628,25 +628,25 @@ Astrid might not let you know when your tasks are due.\n More... - Recently Modified + Recently Modified - Zakończone zadania + Zakończone zadania - Hidden Tasks + Hidden Tasks - By Title + By Title - By Due Date + By Due Date - By Importance + By Importance - Deleted Tasks + Deleted Tasks diff --git a/astrid/res/values-pt/strings.xml b/astrid/res/values-pt/strings.xml index 7d2b92920..3b529c262 100644 --- a/astrid/res/values-pt/strings.xml +++ b/astrid/res/values-pt/strings.xml @@ -621,25 +621,25 @@ Astrid might not let you know when your tasks are due.\n Mais... - Recently Modified + Recently Modified - Tarefas Terminadas + Tarefas Terminadas - Hidden Tasks + Hidden Tasks - Por Título + Por Título - By Due Date + By Due Date - By Importance + By Importance - Deleted Tasks + Deleted Tasks diff --git a/astrid/res/values-ru/strings.xml b/astrid/res/values-ru/strings.xml index 4be750e73..24ee0b922 100644 --- a/astrid/res/values-ru/strings.xml +++ b/astrid/res/values-ru/strings.xml @@ -620,25 +620,25 @@ you get stuff done. It features reminders, tags, sync, a widget and more. Ещё... - Недавно изменённые + Недавно изменённые - Завершённые задачи + Завершённые задачи - Скрытые задачи + Скрытые задачи - По названию + По названию - По намеченному сроку + По намеченному сроку - По уровню важности + По уровню важности - Удалённые задачи + Удалённые задачи diff --git a/astrid/res/values-sv/strings.xml b/astrid/res/values-sv/strings.xml index bb5c42c59..c473ed31a 100644 --- a/astrid/res/values-sv/strings.xml +++ b/astrid/res/values-sv/strings.xml @@ -631,25 +631,25 @@ you get stuff done. It features reminders, tags, sync, a widget and more. More... - Recently Modified + Recently Modified - Färdiga uppgifter + Färdiga uppgifter - Hidden Tasks + Hidden Tasks - By Title + By Title - By Due Date + By Due Date - By Importance + By Importance - Deleted Tasks + Deleted Tasks diff --git a/astrid/res/values-tr/strings.xml b/astrid/res/values-tr/strings.xml index 51bb553cc..3cb861fa2 100644 --- a/astrid/res/values-tr/strings.xml +++ b/astrid/res/values-tr/strings.xml @@ -631,25 +631,25 @@ you get stuff done. It features reminders, tags, sync, a widget and more. More... - Recently Modified + Recently Modified - Tamamlanmış Görevler + Tamamlanmış Görevler - Hidden Tasks + Hidden Tasks - By Title + By Title - By Due Date + By Due Date - By Importance + By Importance - Deleted Tasks + Deleted Tasks diff --git a/astrid/res/values-zh-rCN/strings.xml b/astrid/res/values-zh-rCN/strings.xml index 255eb0d51..39212c76e 100644 --- a/astrid/res/values-zh-rCN/strings.xml +++ b/astrid/res/values-zh-rCN/strings.xml @@ -631,25 +631,25 @@ you get stuff done. It features reminders, tags, sync, a widget and more. More... - Recently Modified + Recently Modified - 已完成的任务 + 已完成的任务 - Hidden Tasks + Hidden Tasks - By Title + By Title - By Due Date + By Due Date - By Importance + By Importance - Deleted Tasks + Deleted Tasks diff --git a/astrid/res/values-zh-rTW/strings.xml b/astrid/res/values-zh-rTW/strings.xml index 15ed396b3..7c2dccc15 100644 --- a/astrid/res/values-zh-rTW/strings.xml +++ b/astrid/res/values-zh-rTW/strings.xml @@ -617,25 +617,25 @@ to the plugin creator for fastest service. 更多... - 最近修改過 + 最近修改過 - 已完成的工作 + 已完成的工作 - 隱藏的工作 + 隱藏的工作 - 依主旨 + 依主旨 - 依到期日 + 依到期日 - 依重要性 + 依重要性 - 刪除的工作 + 刪除的工作 diff --git a/astrid/res/values/strings-core.xml b/astrid/res/values/strings-core.xml index c96065851..7ac606884 100644 --- a/astrid/res/values/strings-core.xml +++ b/astrid/res/values/strings-core.xml @@ -156,6 +156,9 @@ Add-ons + + Sort & Hidden + Settings @@ -209,6 +212,47 @@ button: add task & go to the edit page. Undelete Task + + + + Sorting and Hidden Tasks + + + Show Completed Tasks + + + Show Hidden Tasks + + + Show Deleted Tasks + + + Sort Options + + + Astrid Smart Sort + + + By Title + + + By Due Date + + + By Importance + + + By Last Modified + + + Reverse Sort + + + Just Once + + + Always + diff --git a/astrid/src/com/todoroo/astrid/activity/SortSelectionActivity.java b/astrid/src/com/todoroo/astrid/activity/SortSelectionActivity.java new file mode 100644 index 000000000..9e2efa689 --- /dev/null +++ b/astrid/src/com/todoroo/astrid/activity/SortSelectionActivity.java @@ -0,0 +1,34 @@ +package com.todoroo.astrid.activity; + +import android.app.Activity; +import android.app.AlertDialog; +import android.view.View; + +import com.timsu.astrid.R; + +public class SortSelectionActivity { + + private SortSelectionActivity() { + // use the static method + } + + /** + * Create the dialog + * @param activity + * @return + */ + public static AlertDialog createDialog(Activity activity) { + View body = activity.getLayoutInflater().inflate(R.layout.sort_selection_dialog, null); + + AlertDialog dialog = new AlertDialog.Builder(activity). + setTitle(R.string.SSD_title). + setIcon(android.R.drawable.ic_menu_sort_by_size). + setView(body). + setPositiveButton(R.string.SSD_save_always, null). + setNegativeButton(R.string.SSD_save_temp, null). + create(); + dialog.setOwnerActivity(activity); + return dialog; + } + +} diff --git a/astrid/src/com/todoroo/astrid/activity/TaskListActivity.java b/astrid/src/com/todoroo/astrid/activity/TaskListActivity.java index 8977788ba..2913a9a1e 100644 --- a/astrid/src/com/todoroo/astrid/activity/TaskListActivity.java +++ b/astrid/src/com/todoroo/astrid/activity/TaskListActivity.java @@ -94,23 +94,25 @@ public class TaskListActivity extends ListActivity implements OnScrollListener, public static final int ACTIVITY_EDIT_TASK = 0; public static final int ACTIVITY_SETTINGS = 1; - public static final int ACTIVITY_ADDONS = 2; - public static final int ACTIVITY_MENU_EXTERNAL = 3; + public static final int ACTIVITY_SORT = 2; + public static final int ACTIVITY_ADDONS = 3; + public static final int ACTIVITY_MENU_EXTERNAL = 4; // --- menu codes private static final int MENU_ADDONS_ID = Menu.FIRST + 1; private static final int MENU_SETTINGS_ID = Menu.FIRST + 2; - private static final int MENU_HELP_ID = Menu.FIRST + 3; - private static final int MENU_ADDON_INTENT_ID = Menu.FIRST + 4; + private static final int MENU_SORT_ID = Menu.FIRST + 3; + private static final int MENU_HELP_ID = Menu.FIRST + 4; + private static final int MENU_ADDON_INTENT_ID = Menu.FIRST + 5; - private static final int CONTEXT_MENU_EDIT_TASK_ID = Menu.FIRST + 5; - private static final int CONTEXT_MENU_DELETE_TASK_ID = Menu.FIRST + 6; - private static final int CONTEXT_MENU_UNDELETE_TASK_ID = Menu.FIRST + 7; - private static final int CONTEXT_MENU_ADDON_INTENT_ID = Menu.FIRST + 8; + 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; /** menu code indicating the end of the context menu */ - private static final int CONTEXT_MENU_DEBUG = Menu.FIRST + 9; + private static final int CONTEXT_MENU_DEBUG = Menu.FIRST + 10; // --- constants @@ -213,6 +215,10 @@ public class TaskListActivity extends ListActivity implements OnScrollListener, R.string.TLA_menu_settings); item.setIcon(android.R.drawable.ic_menu_preferences); + item = menu.add(Menu.NONE, MENU_SORT_ID, Menu.NONE, + R.string.TLA_menu_sort); + item.setIcon(android.R.drawable.ic_menu_sort_by_size); + item = menu.add(Menu.NONE, MENU_HELP_ID, Menu.NONE, R.string.TLA_menu_help); item.setIcon(android.R.drawable.ic_menu_help); @@ -717,6 +723,10 @@ public class TaskListActivity extends ListActivity implements OnScrollListener, intent = new Intent(this, EditPreferences.class); startActivityForResult(intent, ACTIVITY_SETTINGS); return true; + case MENU_SORT_ID: + AlertDialog dialog = SortSelectionActivity.createDialog(this); + dialog.show(); + return true; case MENU_HELP_ID: intent = new Intent(Intent.ACTION_VIEW, Uri.parse("http://weloveastrid.com/help-user-guide-astrid-v3/active-tasks/")); //$NON-NLS-1$ @@ -727,8 +737,8 @@ public class TaskListActivity extends ListActivity implements OnScrollListener, AndroidUtilities.startExternalIntent(this, intent, ACTIVITY_MENU_EXTERNAL); return true; + // --- context menu items - // context menu items case CONTEXT_MENU_ADDON_INTENT_ID: { intent = item.getIntent(); AndroidUtilities.startExternalIntent(this, intent, ACTIVITY_MENU_EXTERNAL);