diff --git a/src/googleplay/java/org/tasks/tasklist/GtasksListFragment.java b/src/googleplay/java/org/tasks/tasklist/GtasksListFragment.java index 1cd5a1b98..e516363f4 100644 --- a/src/googleplay/java/org/tasks/tasklist/GtasksListFragment.java +++ b/src/googleplay/java/org/tasks/tasklist/GtasksListFragment.java @@ -15,6 +15,7 @@ import com.todoroo.astrid.sync.SyncResultCallback; import org.tasks.R; import org.tasks.activities.GoogleTaskListSettingsActivity; +import org.tasks.analytics.Tracking; import org.tasks.injection.FragmentComponent; import javax.inject.Inject; @@ -56,9 +57,6 @@ public class GtasksListFragment extends TaskListFragment { @Override public boolean onMenuItemClick(MenuItem item) { switch(item.getItemId()) { - case R.id.menu_clear_completed: - clearCompletedTasks(); - return true; case R.id.menu_gtasks_list_settings: Intent intent = new Intent(getActivity(), GoogleTaskListSettingsActivity.class); intent.putExtra(GoogleTaskListSettingsActivity.EXTRA_STORE_DATA, list.getStoreObject()); @@ -87,7 +85,9 @@ public class GtasksListFragment extends TaskListFragment { } } - private void clearCompletedTasks() { + @Override + protected void clearCompleted() { + tracker.reportEvent(Tracking.Events.GTASK_CLEAR_COMPLETED); syncService.clearCompleted(list, new SyncResultCallback() { @Override public void started() { diff --git a/src/main/java/com/todoroo/astrid/activity/TaskListFragment.java b/src/main/java/com/todoroo/astrid/activity/TaskListFragment.java index 0815a639a..570c7ad02 100644 --- a/src/main/java/com/todoroo/astrid/activity/TaskListFragment.java +++ b/src/main/java/com/todoroo/astrid/activity/TaskListFragment.java @@ -52,6 +52,8 @@ import com.todoroo.astrid.voice.VoiceInputAssistant; import org.tasks.Broadcaster; import org.tasks.R; import org.tasks.activities.FilterSettingsActivity; +import org.tasks.analytics.Tracker; +import org.tasks.analytics.Tracking; import org.tasks.data.TaskListDataProvider; import org.tasks.dialogs.DialogBuilder; import org.tasks.dialogs.SortDialog; @@ -65,6 +67,7 @@ import org.tasks.tasklist.ViewHolder; import org.tasks.tasklist.ViewHolderFactory; import org.tasks.ui.CheckBoxes; import org.tasks.ui.MenuColorizer; +import org.tasks.ui.ProgressDialogAsyncTask; import javax.inject.Inject; @@ -120,6 +123,7 @@ public class TaskListFragment extends InjectingFragment implements @Inject TimerPlugin timerPlugin; @Inject TaskDao taskDao; @Inject ViewHolderFactory viewHolderFactory; + @Inject protected Tracker tracker; @BindView(R.id.swipe_layout) SwipeRefreshLayout swipeRefreshLayout; @BindView(R.id.swipe_layout_empty) SwipeRefreshLayout emptyRefreshLayout; @@ -304,11 +308,33 @@ public class TaskListFragment extends InjectingFragment implements Intent intent = new Intent(getActivity(), FilterSettingsActivity.class); intent.putExtra(FilterSettingsActivity.TOKEN_FILTER, filter); startActivityForResult(intent, REQUEST_EDIT_FILTER); + return true; + case R.id.menu_clear_completed: + dialogBuilder.newMessageDialog(R.string.clear_completed_tasks_confirmation) + .setPositiveButton(android.R.string.ok, (dialog, which) -> clearCompleted()) + .setNegativeButton(android.R.string.cancel, null) + .show(); + return true; default: return super.onOptionsItemSelected(item); } } + protected void clearCompleted() { + tracker.reportEvent(Tracking.Events.CLEAR_COMPLETED); + new ProgressDialogAsyncTask(getActivity(), dialogBuilder) { + @Override + protected Integer doInBackground(Void... params) { + return taskDeleter.clearCompleted(filter); + } + + @Override + protected int getResultResource() { + return R.string.EPr_manage_delete_completed_status; + } + }.execute(); + } + @OnClick(R.id.fab) void createNewTask() { Task task = addTask(""); diff --git a/src/main/java/com/todoroo/astrid/core/OldTaskPreferences.java b/src/main/java/com/todoroo/astrid/core/OldTaskPreferences.java index 8511a75a9..1b1dcd028 100644 --- a/src/main/java/com/todoroo/astrid/core/OldTaskPreferences.java +++ b/src/main/java/com/todoroo/astrid/core/OldTaskPreferences.java @@ -9,7 +9,6 @@ import android.os.Bundle; import com.todoroo.andlib.sql.Criterion; import com.todoroo.andlib.sql.Query; -import com.todoroo.andlib.utility.DateUtilities; import com.todoroo.astrid.dao.Database; import com.todoroo.astrid.dao.MetadataDao; import com.todoroo.astrid.dao.TaskDao; @@ -47,11 +46,6 @@ public class OldTaskPreferences extends InjectingPreferenceActivity { return false; }); - findPreference(getString(R.string.EPr_manage_delete_completed)).setOnPreferenceClickListener(preference -> { - deleteCompletedTasks(); - return false; - }); - findPreference(getString(R.string.EPr_manage_delete_completed_gcal)).setOnPreferenceClickListener(preference -> { deleteCompletedEvents(); return false; @@ -73,36 +67,13 @@ public class OldTaskPreferences extends InjectingPreferenceActivity { }); } - private void deleteCompletedTasks() { - dialogBuilder.newMessageDialog(R.string.EPr_manage_delete_completed_message) - .setPositiveButton(android.R.string.ok, (dialog, which) -> new ProgressDialogAsyncTask(OldTaskPreferences.this, dialogBuilder) { - @Override - protected Integer doInBackground(Void... params) { - Query query = Query.select(Task.ID, Task.CALENDAR_URI) - .where(Criterion.and(Task.COMPLETION_DATE.gt(0), Task.CALENDAR_URI.isNotNull())); - taskDao.forEach(query, calendarEventProvider::deleteEvent); - Task template = new Task(); - template.setDeletionDate(DateUtilities.now()); - template.setCalendarUri(""); - return taskDao.update(Task.COMPLETION_DATE.gt(0), template); - } - - @Override - protected int getResultResource() { - return R.string.EPr_manage_delete_completed_status; - } - }.execute()) - .setNegativeButton(android.R.string.cancel, null) - .show(); - } - private void purgeDeletedTasks() { dialogBuilder.newMessageDialog(R.string.EPr_manage_purge_deleted_message) .setPositiveButton(android.R.string.ok, (dialog, which) -> new ProgressDialogAsyncTask(OldTaskPreferences.this, dialogBuilder) { @Override protected Integer doInBackground(Void... params) { Query query = Query.select(Task.ID, Task.CALENDAR_URI) - .where(Criterion.and(Task.DELETION_DATE.gt(0), Task.CALENDAR_URI.isNotNull())); + .where(Criterion.and(Task.DELETION_DATE.gt(0))); taskDao.forEach(query, calendarEventProvider::deleteEvent); int result = taskDao.deleteWhere(Task.DELETION_DATE.gt(0)); metadataDao.removeDanglingMetadata(); diff --git a/src/main/java/com/todoroo/astrid/core/SortHelper.java b/src/main/java/com/todoroo/astrid/core/SortHelper.java index ecec74b15..b55830824 100644 --- a/src/main/java/com/todoroo/astrid/core/SortHelper.java +++ b/src/main/java/com/todoroo/astrid/core/SortHelper.java @@ -10,11 +10,12 @@ import com.todoroo.andlib.sql.Functions; import com.todoroo.andlib.sql.Order; import com.todoroo.andlib.utility.DateUtilities; import com.todoroo.astrid.data.Task; -import com.todoroo.astrid.data.TaskApiDao.TaskCriteria; import org.tasks.R; import org.tasks.preferences.Preferences; +import static com.todoroo.astrid.dao.TaskDao.TaskCriteria.isVisible; + /** * Helpers for sorting a list of tasks * @@ -56,7 +57,7 @@ public class SortHelper { Criterion.or(Task.COMPLETION_DATE.lte(0), Task.COMPLETION_DATE.gt(DateUtilities.now() - 60000)).toString()); } if (preferences.getBoolean(R.string.p_show_hidden_tasks, false)) { - originalSql = originalSql.replace(TaskCriteria.isVisible().toString(), + originalSql = originalSql.replace(isVisible().toString(), Criterion.all.toString()); } diff --git a/src/main/java/com/todoroo/astrid/dao/TaskDao.java b/src/main/java/com/todoroo/astrid/dao/TaskDao.java index 777e452f4..d5b990cfd 100644 --- a/src/main/java/com/todoroo/astrid/dao/TaskDao.java +++ b/src/main/java/com/todoroo/astrid/dao/TaskDao.java @@ -149,6 +149,10 @@ public class TaskDao { return Task.DELETION_DATE.eq(0); } + public static Criterion notCompleted() { + return Task.COMPLETION_DATE.eq(0); + } + /** @return tasks that have not yet been completed or deleted */ public static Criterion activeAndVisible() { return Criterion.and(Task.COMPLETION_DATE.eq(0), diff --git a/src/main/java/com/todoroo/astrid/data/TaskApiDao.java b/src/main/java/com/todoroo/astrid/data/TaskApiDao.java index df2940701..27e63373c 100644 --- a/src/main/java/com/todoroo/astrid/data/TaskApiDao.java +++ b/src/main/java/com/todoroo/astrid/data/TaskApiDao.java @@ -7,9 +7,6 @@ package com.todoroo.astrid.data; import android.content.ContentValues; -import com.todoroo.andlib.sql.Criterion; -import com.todoroo.andlib.sql.Functions; - /** * Data access object for accessing Astrid's {@link Task} table. If you * are looking to store extended information about a Task, you probably @@ -20,17 +17,6 @@ import com.todoroo.andlib.sql.Functions; */ public class TaskApiDao { - /** - * Generates SQL clauses - */ - public static class TaskCriteria { - - /** @return tasks that are not hidden at current time */ - public static Criterion isVisible() { - return Task.HIDE_UNTIL.lt(Functions.now()); - } - } - /** @return true if task change shouldn't be broadcast */ public static boolean insignificantChange(ContentValues values) { if(values == null || values.size() == 0) { diff --git a/src/main/java/com/todoroo/astrid/service/TaskDeleter.java b/src/main/java/com/todoroo/astrid/service/TaskDeleter.java index 4d8f33caf..06e346f78 100644 --- a/src/main/java/com/todoroo/astrid/service/TaskDeleter.java +++ b/src/main/java/com/todoroo/astrid/service/TaskDeleter.java @@ -2,28 +2,40 @@ package com.todoroo.astrid.service; import com.todoroo.andlib.sql.Query; import com.todoroo.andlib.utility.DateUtilities; +import com.todoroo.astrid.api.Filter; import com.todoroo.astrid.dao.TaskDao; import com.todoroo.astrid.data.Task; +import org.tasks.Broadcaster; import org.tasks.calendars.CalendarEventProvider; +import java.util.ArrayList; +import java.util.List; + import javax.inject.Inject; +import static com.google.common.collect.Iterables.transform; +import static com.todoroo.andlib.sql.Criterion.all; +import static com.todoroo.astrid.dao.TaskDao.TaskCriteria.isVisible; +import static com.todoroo.astrid.dao.TaskDao.TaskCriteria.notCompleted; + public class TaskDeleter { private final TaskDao taskDao; private final CalendarEventProvider calendarEventProvider; + private final Broadcaster broadcaster; @Inject - public TaskDeleter(TaskDao taskDao, CalendarEventProvider calendarEventProvider) { + public TaskDeleter(TaskDao taskDao, CalendarEventProvider calendarEventProvider, Broadcaster broadcaster) { this.taskDao = taskDao; this.calendarEventProvider = calendarEventProvider; + this.broadcaster = broadcaster; } /** * Clean up tasks. Typically called on startup */ - public void deleteTasksWithEmptyTitles(Long suppress) { + void deleteTasksWithEmptyTitles(Long suppress) { Query query = Query.select(Task.ID).where(TaskDao.TaskCriteria.hasNoTitle()); taskDao.forEach(query, task -> { long id = task.getId(); @@ -45,9 +57,31 @@ public class TaskDeleter { long id = item.getId(); item.clear(); item.setId(id); - calendarEventProvider.deleteEvent(item); item.setDeletionDate(DateUtilities.now()); taskDao.save(item); } } + + private int markDeleted(List tasks) { + Task template = new Task(); + template.setDeletionDate(DateUtilities.now()); + int count = taskDao.update(Task.ID.in(transform(tasks, Task::getId)), template); + if (count > 0) { + broadcaster.refresh(); + } + return count; + } + + public int clearCompleted(Filter filter) { + List completed = new ArrayList<>(); + String query = filter.getSqlQuery() + .replace(isVisible().toString(), all.toString()) + .replace(notCompleted().toString(), all.toString()); + taskDao.fetchFiltered(query, Task.ID, Task.COMPLETION_DATE).forEach(task -> { + if (task.isCompleted()) { + completed.add(task); + } + }); + return markDeleted(completed); + } } diff --git a/src/main/java/org/tasks/analytics/Tracking.java b/src/main/java/org/tasks/analytics/Tracking.java index 43e28d410..4cf03aefb 100644 --- a/src/main/java/org/tasks/analytics/Tracking.java +++ b/src/main/java/org/tasks/analytics/Tracking.java @@ -21,6 +21,8 @@ public class Tracking { GTASK_RENAME_LIST(R.string.tracking_category_google_tasks, R.string.tracking_action_rename_list), GTASK_DELETE_LIST(R.string.tracking_category_google_tasks, R.string.tracking_action_delete_list), GTASK_SET_COLOR(R.string.tracking_category_google_tasks, R.string.p_theme_color), + GTASK_CLEAR_COMPLETED(R.string.tracking_category_google_tasks, R.string.tracking_action_clear_completed), + CLEAR_COMPLETED(R.string.tracking_category_event, R.string.tracking_action_clear_completed), UPGRADE(R.string.tracking_category_event, R.string.tracking_event_upgrade), LEGACY_TASKER_TRIGGER(R.string.tracking_category_event, R.string.tracking_event_legacy_tasker_trigger), NIGHT_MODE_MISMATCH(R.string.tracking_category_event, R.string.tracking_event_night_mode_mismatch), diff --git a/src/main/res/menu/menu_gtasks_list_fragment.xml b/src/main/res/menu/menu_gtasks_list_fragment.xml index d758af992..291ec863c 100644 --- a/src/main/res/menu/menu_gtasks_list_fragment.xml +++ b/src/main/res/menu/menu_gtasks_list_fragment.xml @@ -1,10 +1,6 @@ - + \ No newline at end of file diff --git a/src/main/res/values-ar/strings.xml b/src/main/res/values-ar/strings.xml index 3b483f4e4..c90073c18 100644 --- a/src/main/res/values-ar/strings.xml +++ b/src/main/res/values-ar/strings.xml @@ -59,8 +59,6 @@ إظهار عنوان المهمه خيارات قائمة المهام إدارة المهام القديمة - حذف المهمه المٌتمَمه - هل فعلا تريد حذف كل المهام المُتَممه؟ حذف أحداث التقويم للمهام المُتَممه حذف جميع نشاطات التقويم للمهام هل فعلا تريد حذف جميع الأحداث للمهام ؟ diff --git a/src/main/res/values-bg-rBG/strings.xml b/src/main/res/values-bg-rBG/strings.xml index 89c14855e..5209d2431 100644 --- a/src/main/res/values-bg-rBG/strings.xml +++ b/src/main/res/values-bg-rBG/strings.xml @@ -109,8 +109,6 @@ Приключване на събития в календара на крайния срок Започване на събития в календара на крайния срок Управление на стари задачи - Изтрий приключени задачи - Наистина ли искате да изтриете всичките си приключени задачи? Изтрити %d задачи! Изчистване на изтритите задачи Наистина ли искате да изчистите всичките си приключени задачи?\n\nТези задачи ще изчезнат завинаги! diff --git a/src/main/res/values-ca/strings.xml b/src/main/res/values-ca/strings.xml index 1de15ecf3..29d168d48 100644 --- a/src/main/res/values-ca/strings.xml +++ b/src/main/res/values-ca/strings.xml @@ -66,7 +66,6 @@ Aparença Restableix els valors predeterminats Mostra el títol sencer de la tasca - Segur que voleu suprimir totes les tasques completades? S\'han suprimit %d tasques Segur que voleu suprimir els esdeveniments de calendari de les tasques completades? Demà passat diff --git a/src/main/res/values-cs/strings.xml b/src/main/res/values-cs/strings.xml index 477e9580f..e347301a6 100644 --- a/src/main/res/values-cs/strings.xml +++ b/src/main/res/values-cs/strings.xml @@ -100,8 +100,6 @@ Událost v kalendáři končí splněním úkolu Událost v kalendáři začíná splněním úkolu Spravovat staré úkoly - Odstranit dokončené úkoly - Opravdu chcete odstranit všechny dokončené úkoly? Odstraněno %d úkolů! Vymazat smazané úkoly Opravdu chcete vymazat vaše smazané úkoly?\n\nTyto úkoly budou vymazány navždy! diff --git a/src/main/res/values-de/strings.xml b/src/main/res/values-de/strings.xml index a113991fa..7bb111479 100644 --- a/src/main/res/values-de/strings.xml +++ b/src/main/res/values-de/strings.xml @@ -104,8 +104,6 @@ Kalendereintrag endet zur Fälligkeits-Uhrzeit Kalendereintrag Startet zur Fälligkeits-Uhrzeit Alte Aufgaben verwalten - Erledigte Aufgaben löschen - Willst du wirklich alle erledigten Aufgaben löschen? %d Aufgaben gelöscht Gelöschte Aufgaben endgültig löschen Willst du wirklich alle gelöschten Aufgaben bereinigen?\n\nDiese Aufgaben werden für immer gelöscht bleiben! diff --git a/src/main/res/values-el/strings.xml b/src/main/res/values-el/strings.xml index 25088d86e..933cdd33e 100644 --- a/src/main/res/values-el/strings.xml +++ b/src/main/res/values-el/strings.xml @@ -90,8 +90,6 @@ Τερματισμός γεγονότων ημερολογίου στην ώρα λήξης τους Εκκίνηση γεγονότων ημερολογίου στην ώρα λήξης τους Διαχείριση παλιών εργασιών - Διαγραφή ολοκληρωμένων εργασιών - Θέλετε στα αλήθεια την διαγραφή όλων των ολοκληρωμένων εργασιών σας; Διαγράφηκαν %d εργασίες! Εκκαθάριση διεγραμμένων εργασιών Θέλετε πραγματικά να καθαρίσετε όλες τις διαγραμμένες εργασίες;\n\nΑυτές οι εργασίες θα χαθούν για πάντα! diff --git a/src/main/res/values-es/strings.xml b/src/main/res/values-es/strings.xml index 1ea15dab6..6ae87b28e 100644 --- a/src/main/res/values-es/strings.xml +++ b/src/main/res/values-es/strings.xml @@ -105,8 +105,6 @@ Finalizar eventos del calendario al vencimiento Iniciar eventos del calendario al vencimiento Administrar tareas antiguas - Borrar tareas completadas - ¿Seguro que desea borrar todas las tareas completadas? ¡%d tareas borradas! Limpiar tareas eliminadas ¿Seguro que desea limpiar todas las tareas eliminadas?\n\n¡Estas tareas se perderán por siempre! diff --git a/src/main/res/values-fi/strings.xml b/src/main/res/values-fi/strings.xml index 7a96f1a60..c54480e2e 100644 --- a/src/main/res/values-fi/strings.xml +++ b/src/main/res/values-fi/strings.xml @@ -109,8 +109,6 @@ Lopeta kalenteritapahtuma määräaikana Aloita kalenteritapahtumat määräaikana Hallinnoi vanhoja tehtäviä - Poista valmiit tehtävät - Haluatko todella poistaa kaikki valmiit tehtävät Poistettu %d tehtävää Tyjennä poistetut tehtävät Haluatko todella tyhjentää kaikki poistetut tehtävät?\n\n Nämä tehtävät häviävät lopullisesti! diff --git a/src/main/res/values-fr/strings.xml b/src/main/res/values-fr/strings.xml index 62d7190b2..272b849f5 100644 --- a/src/main/res/values-fr/strings.xml +++ b/src/main/res/values-fr/strings.xml @@ -104,8 +104,6 @@ Terminer les événements dans le calendrier à l\'échéance Commencer les événements dans le calendrier à l\'échéance Gérer les anciennes tâches - Supprimer les tâches terminées - Voulez-vous vraiment la suppression de toutes les tâches terminées ? %d tâches supprimées ! Supprimer définitivement les tâches supprimées Voulez vous vraiment supprimer définitivement toutes les tâches supprimées ?\n\nCes tâches seront perdues à jamais ! diff --git a/src/main/res/values-hu/strings.xml b/src/main/res/values-hu/strings.xml index aa8413953..cb8995477 100644 --- a/src/main/res/values-hu/strings.xml +++ b/src/main/res/values-hu/strings.xml @@ -98,8 +98,6 @@ Naptáresemények befejezése határidőkor Naptáresemények kezdése határidőkor Régi feladatok kezelése - Elvégzett feladatok törlése - Biztosan törölni akarja az összes elvégzett feladatot? %d feladat törölve! Törölt feladatok elvetése Biztosan el akarja vetni az összes törölt feladatot?\n\nEzek a feladatok többé nem lesznek visszaállíthatóak! diff --git a/src/main/res/values-it/strings.xml b/src/main/res/values-it/strings.xml index ee37795c7..537b26507 100644 --- a/src/main/res/values-it/strings.xml +++ b/src/main/res/values-it/strings.xml @@ -106,8 +106,6 @@ Calendario eventi fino alla scadenza Calendario eventi dalla scadenza Gestisci compiti vecchi - Elimina i compiti completati - Vuoi davvero eliminare tutti i compiti completati? Eliminate %d attività! Elimina definitivamente i compiti eliminati Vuoi davvero eliminare definitivamente i compiti eliminati?\n\nQuesti compiti saranno persi per sempre! diff --git a/src/main/res/values-iw/strings.xml b/src/main/res/values-iw/strings.xml index 751ef314b..4e1d726aa 100644 --- a/src/main/res/values-iw/strings.xml +++ b/src/main/res/values-iw/strings.xml @@ -106,8 +106,6 @@ סיים את אירועי היומן במועד היעד? התחל את מאורעות היומן במועד היעד נהל משימות ישנות - מחק משימות שבוצעו - האם אתה בטוח שברצונך למחוק את כל המשימות שבוצעו? %d משימות נמחקו! מחק לצמיתות משימות שנמחקו האם אתה בטוח שברצונך למחוק לצמיתות את כל המשימות שנמחקו? diff --git a/src/main/res/values-ja/strings.xml b/src/main/res/values-ja/strings.xml index 17c1460e6..e93091ede 100644 --- a/src/main/res/values-ja/strings.xml +++ b/src/main/res/values-ja/strings.xml @@ -106,8 +106,6 @@ カレンダーイベント終了時間 カレンダーイベント開始時間 古いタスクを管理 - 完了したタスクを削除 - 完了したタスクをすべて削除してもよろしいですか? %d タスクが削除されました! 削除済のタスクを消去 削除済のタスクをすべて消去してもよろしいですか?\n\nこれらのタスクは永久になくなります! diff --git a/src/main/res/values-ko/strings.xml b/src/main/res/values-ko/strings.xml index 07acdb98e..7b5c13b6e 100644 --- a/src/main/res/values-ko/strings.xml +++ b/src/main/res/values-ko/strings.xml @@ -108,8 +108,6 @@ 설정한 시간에 달력 이벤트 종료 설정한 시간에 달력 이벤트 시작 오래된 일정 관리하기 - 완료한 일정 지우기 - 완료한 일정을 모두 삭제하시겠습니까? %d 일정을 삭제했습니다! 삭제한 일정을 비우기 삭제한 일정을 모두 비울까요?\n\n비운 일정은 다시 살릴 수 없습니다! diff --git a/src/main/res/values-nl/strings.xml b/src/main/res/values-nl/strings.xml index f007a1360..80a919d02 100644 --- a/src/main/res/values-nl/strings.xml +++ b/src/main/res/values-nl/strings.xml @@ -105,8 +105,6 @@ Agenda item op tijd afronden Agenda item op tijd starten Oude taken beheren - Voltooide taken verwijderen - Alle voltooide taken werkelijk verwijderen? %d taken verwijderd! Verwijderde taken opruimen Alle verwijderde taken werkelijk opschonen?\n\nDeze taken zijn dan definitief verwijderd! diff --git a/src/main/res/values-pl/strings.xml b/src/main/res/values-pl/strings.xml index ab5c82ce0..beb06c60b 100644 --- a/src/main/res/values-pl/strings.xml +++ b/src/main/res/values-pl/strings.xml @@ -106,8 +106,6 @@ Zakończ zadania kalendarza w ustalonym czasie Rozpocznij zadania kalendarza w ustalonym czasie Zarządzaj starymi zadaniami - Usuń zakończone zadania - Czy na pewno chcesz usunąć wszystkie zadania wykonane? Usunięto %d zadań! Skasuj usunięte zadania Czy na pewno chcesz, aby oczyścić wszystkie usunięte zadania?\n\n Te zadania znikną na zawsze! diff --git a/src/main/res/values-pt-rBR/strings.xml b/src/main/res/values-pt-rBR/strings.xml index 835bf02e7..e9b6f815e 100644 --- a/src/main/res/values-pt-rBR/strings.xml +++ b/src/main/res/values-pt-rBR/strings.xml @@ -96,8 +96,6 @@ Eventos da agenda terminou no devido tempo Eventos da agenda iniciaram no devido tempo Gerenciar tarefas antigas - Exclui as tarefas concluídas - Você realmente deseja excluir todas as tarefas concluídas? %d tarefas excluídas! Limpar tarefas excluídas Você realmente deseja limpar todas as suas tarefas excluídas?\n\nEstas tarefas irão desaparecer para sempre! diff --git a/src/main/res/values-pt/strings.xml b/src/main/res/values-pt/strings.xml index a2b794448..2e7ae6f5c 100644 --- a/src/main/res/values-pt/strings.xml +++ b/src/main/res/values-pt/strings.xml @@ -100,8 +100,6 @@ Terminar evento do calendário na hora limite Iniciar eventos de calendário na hora limite Gerir tarefas antigas - Eliminar tarefas terminadas - Quer mesmo eliminar todas as tarefas terminadas? %d tarefas eliminadas! Remover tarefas eliminadas Quer mesmo remover todas as tarefas eliminadas?\n\nNunca mais as conseguirá recuperar! diff --git a/src/main/res/values-ru/strings.xml b/src/main/res/values-ru/strings.xml index af2faa788..953b2a17e 100644 --- a/src/main/res/values-ru/strings.xml +++ b/src/main/res/values-ru/strings.xml @@ -106,8 +106,6 @@ Завершать события в календаре при наступлении срока Создавать события в календаре при наступлении срока Управление старыми задачами - Удалить завершенные задачи - Вы действительно хотите удалить все завершенные задачи? Удалено %d задач! Очистить удаленные задачи? Действительно хотите убрать все удалённые задачи?\n\nЭта операция необратима! diff --git a/src/main/res/values-sk/strings.xml b/src/main/res/values-sk/strings.xml index 96c75f2b9..bb4263951 100644 --- a/src/main/res/values-sk/strings.xml +++ b/src/main/res/values-sk/strings.xml @@ -98,8 +98,6 @@ Ukončiť udalosť kalendára v danom čase Začať kalendárne udalosti v danom čase Spravovať staré úlohy - Vymazať dokončené úlohy - Naozaj chceš vymazať všetky dokončené úlohy? Vymazané %d úlohy Zbaviť sa vymazaných úloh Naozaj chceš vyhodiť všetky tvoje vymazané úlohy?\n\nTieto budú vymazané navždy! diff --git a/src/main/res/values-sl-rSI/strings.xml b/src/main/res/values-sl-rSI/strings.xml index 95a86fd88..94f12e2de 100644 --- a/src/main/res/values-sl-rSI/strings.xml +++ b/src/main/res/values-sl-rSI/strings.xml @@ -93,8 +93,6 @@ Končaj dogodke na koledarju ob dospelosti Začni dogodke na koledarju ob dospelosti Upravljanje s preteklimi opravki - Zbriši dokončane opravke - Ste prepričani, da želite zbrisati vse dokončane opravke? Število zbrisanih opravkov: %d Popolnoma odstrani zbrisane opravke Ste prepričani, da želite popolnoma odstraniti vse zbrisane opravke?\n\nTega ukaza ne bo mogoče razveljaviti! diff --git a/src/main/res/values-sv/strings.xml b/src/main/res/values-sv/strings.xml index b382fbcf5..eca5a806d 100644 --- a/src/main/res/values-sv/strings.xml +++ b/src/main/res/values-sv/strings.xml @@ -106,8 +106,6 @@ Avsluta kalenderhändelser vid förfallotid Påbörja kalenderhändelser vid förfallotid Hantera gamla uppgifter - Radera färdiga uppgifter - Vill du verkligen radera alla dina färdiga uppgifter? %d uppgifter raderade! Rensa bort raderade uppgifter Vill du verkligen rensa bort alla dina raderade uppgifter?\n\nDe här uppgifterna kommer att tas bort för alltid! diff --git a/src/main/res/values-tr/strings.xml b/src/main/res/values-tr/strings.xml index 4a46cc91e..202854245 100644 --- a/src/main/res/values-tr/strings.xml +++ b/src/main/res/values-tr/strings.xml @@ -68,8 +68,6 @@ Varsayılanlara sıfırla Tüm görev başlığını göster Eski Görevleri Yönet - Tamamlanan Görevleri Sil - Gerçekten tüm tamamlanmış görevleri silmek istiyor musun? %d görev silindi! Silinen Görevleri Temizle Tüm silinen görevleri temizlemek istediğine emin misin?\n\nBu görevler tamamen silinecek! diff --git a/src/main/res/values-uk/strings.xml b/src/main/res/values-uk/strings.xml index 32ccf0e07..15ffa241c 100644 --- a/src/main/res/values-uk/strings.xml +++ b/src/main/res/values-uk/strings.xml @@ -109,8 +109,6 @@ Завершення календарної події при настанні терміну Початок календарної події при настанні терміну Управління старими завданнями - Видалити виконані завдання - Ви дійсно хочете видалити всі завершені завдання? Видалено %d завдань! Очистити видалені завдання Ви дійсно хочете очистити всі видалені завдання?\n\nЦя операція незворотна! diff --git a/src/main/res/values-zh-rCN/strings.xml b/src/main/res/values-zh-rCN/strings.xml index 5ad4fcc27..77fb1b4d7 100644 --- a/src/main/res/values-zh-rCN/strings.xml +++ b/src/main/res/values-zh-rCN/strings.xml @@ -80,8 +80,6 @@ 显示完整的任务标题 任务列表选项 管理旧任务 - 删除已完成任务 - 您真的要删除所有已完成任务吗? 删除了 %d 个任务! 清除已删除任务 您真的要清楚所有已删除任务吗? \n\n 这些任务将会被彻底永久删除! diff --git a/src/main/res/values-zh-rTW/strings.xml b/src/main/res/values-zh-rTW/strings.xml index 2df4e377e..ebe7950ba 100644 --- a/src/main/res/values-zh-rTW/strings.xml +++ b/src/main/res/values-zh-rTW/strings.xml @@ -79,8 +79,6 @@ 恢復默認值 顯示完整的任務工作標題 管理舊任務工作 - 刪除已完成任務工作 - 您真的要刪除所有已完成任務工作嗎? 刪除了 %d 個任務工作! 清除已刪除任務工作 您真的要清楚所有已刪除任務工作嗎? \n\n 這些任務工作將會被徹底永久刪除! diff --git a/src/main/res/values/keys.xml b/src/main/res/values/keys.xml index 8d78d02c6..295284583 100644 --- a/src/main/res/values/keys.xml +++ b/src/main/res/values/keys.xml @@ -292,6 +292,7 @@ On Off Clear + Clear completed Night Mismatch Play Services Error Upgrade diff --git a/src/main/res/values/strings.xml b/src/main/res/values/strings.xml index ce911efdb..8f1f1ca82 100644 --- a/src/main/res/values/strings.xml +++ b/src/main/res/values/strings.xml @@ -297,8 +297,6 @@ File %1$s contained %2$s.\n\n Manage old tasks - Delete completed tasks - Do you really want to delete all your completed tasks? Deleted %d tasks! Purge deleted tasks Do you really want to purge all your deleted tasks?\n\nThese tasks will be gone forever! @@ -828,5 +826,6 @@ File %1$s contained %2$s.\n\n Creating new list Deleting list Renaming list + Clear completed tasks? diff --git a/src/main/res/xml/preferences_oldtasks.xml b/src/main/res/xml/preferences_oldtasks.xml index a89159a29..b6d55e5af 100644 --- a/src/main/res/xml/preferences_oldtasks.xml +++ b/src/main/res/xml/preferences_oldtasks.xml @@ -6,10 +6,6 @@ - -