From a79e19637f2c0da808f11d9d2ff9da45b27b11cc Mon Sep 17 00:00:00 2001 From: Arne Jans Date: Tue, 26 Jul 2011 02:12:25 +0200 Subject: [PATCH] Implemented snooze by x minutes and repeat interval also. --- api/src/com/todoroo/andlib/utility/DateUtilities.java | 3 +++ .../todoroo/astrid/reminders/NotificationActivity.java | 3 +++ .../com/todoroo/astrid/repeats/RepeatControlSet.java | 8 ++++++++ .../astrid/repeats/RepeatTaskCompleteListener.java | 9 +++++++++ astrid/res/values-ca/strings.xml | 3 ++- astrid/res/values-cs/strings.xml | 3 ++- astrid/res/values-da/strings.xml | 3 ++- astrid/res/values-de/strings.xml | 3 ++- astrid/res/values-es/strings.xml | 3 ++- astrid/res/values-fr/strings.xml | 3 ++- astrid/res/values-he/strings.xml | 3 ++- astrid/res/values-it/strings.xml | 3 ++- astrid/res/values-ja/strings.xml | 3 ++- astrid/res/values-ko/strings.xml | 3 ++- astrid/res/values-nb/strings.xml | 3 ++- astrid/res/values-nl/strings.xml | 3 ++- astrid/res/values-pl/strings.xml | 3 ++- astrid/res/values-pt/strings.xml | 3 ++- astrid/res/values-ru/strings.xml | 3 ++- astrid/res/values-sv/strings.xml | 3 ++- astrid/res/values-th/strings.xml | 3 ++- astrid/res/values-zh-rCN/strings.xml | 3 ++- astrid/res/values-zh-rTW/strings.xml | 3 ++- astrid/res/values/strings-repeat.xml | 3 ++- 24 files changed, 63 insertions(+), 20 deletions(-) diff --git a/api/src/com/todoroo/andlib/utility/DateUtilities.java b/api/src/com/todoroo/andlib/utility/DateUtilities.java index 16c5a9de3..3fedd12e6 100644 --- a/api/src/com/todoroo/andlib/utility/DateUtilities.java +++ b/api/src/com/todoroo/andlib/utility/DateUtilities.java @@ -58,6 +58,9 @@ public class DateUtilities { /** Represents a single week */ public static long ONE_WEEK = 7 * ONE_DAY; + /** Represents a single minute */ + public static long ONE_MINUTE = ONE_HOUR / 60; + /* ====================================================================== * =========================================================== formatters * ====================================================================== */ diff --git a/astrid/plugin-src/com/todoroo/astrid/reminders/NotificationActivity.java b/astrid/plugin-src/com/todoroo/astrid/reminders/NotificationActivity.java index 955a60c22..2490ea6ac 100644 --- a/astrid/plugin-src/com/todoroo/astrid/reminders/NotificationActivity.java +++ b/astrid/plugin-src/com/todoroo/astrid/reminders/NotificationActivity.java @@ -182,6 +182,9 @@ public class NotificationActivity extends TaskListActivity implements OnTimeSetL case RepeatControlSet.INTERVAL_HOURS: time += value * DateUtilities.ONE_HOUR; break; + case RepeatControlSet.INTERVAL_MINUTES: + time += value * DateUtilities.ONE_MINUTE; + break; case RepeatControlSet.INTERVAL_WEEKS: time += value * 7 * DateUtilities.ONE_DAY; break; diff --git a/astrid/plugin-src/com/todoroo/astrid/repeats/RepeatControlSet.java b/astrid/plugin-src/com/todoroo/astrid/repeats/RepeatControlSet.java index a6672ac94..c4393c2b5 100644 --- a/astrid/plugin-src/com/todoroo/astrid/repeats/RepeatControlSet.java +++ b/astrid/plugin-src/com/todoroo/astrid/repeats/RepeatControlSet.java @@ -49,6 +49,7 @@ public class RepeatControlSet implements TaskEditControlSet { public static final int INTERVAL_WEEKS = 1; public static final int INTERVAL_MONTHS = 2; public static final int INTERVAL_HOURS = 3; + public static final int INTERVAL_MINUTES = 4; private static final int TYPE_DUE_DATE = 0; private static final int TYPE_COMPLETION_DATE = 1; @@ -199,6 +200,9 @@ public class RepeatControlSet implements TaskEditControlSet { case HOURLY: interval.setSelection(INTERVAL_HOURS); break; + case MINUTELY: + interval.setSelection(INTERVAL_MINUTES); + break; default: // an unhandled recurrence exceptionService.reportError("repeat-unhandled-rule", //$NON-NLS-1$ @@ -265,6 +269,10 @@ public class RepeatControlSet implements TaskEditControlSet { break; case INTERVAL_HOURS: rrule.setFreq(Frequency.HOURLY); + break; + case INTERVAL_MINUTES: + rrule.setFreq(Frequency.MINUTELY); + break; } result = rrule.toIcal(); diff --git a/astrid/plugin-src/com/todoroo/astrid/repeats/RepeatTaskCompleteListener.java b/astrid/plugin-src/com/todoroo/astrid/repeats/RepeatTaskCompleteListener.java index ae20655e2..a55cbd265 100644 --- a/astrid/plugin-src/com/todoroo/astrid/repeats/RepeatTaskCompleteListener.java +++ b/astrid/plugin-src/com/todoroo/astrid/repeats/RepeatTaskCompleteListener.java @@ -97,6 +97,8 @@ public class RepeatTaskCompleteListener extends BroadcastReceiver { if(rrule.getFreq() == Frequency.HOURLY) return handleHourlyRepeat(original, rrule); + else if(rrule.getFreq() == Frequency.MINUTELY) + return handleMinutelyRepeat(original, rrule); else return invokeRecurrence(rrule, original, startDateAsDV); } @@ -199,4 +201,11 @@ public class RepeatTaskCompleteListener extends BroadcastReceiver { return newDueDate; } + private static long handleMinutelyRepeat(Date startDate, RRule rrule) { + long newDueDate; + newDueDate = Task.createDueDate(Task.URGENCY_SPECIFIC_DAY_TIME, + startDate.getTime() + DateUtilities.ONE_MINUTE * rrule.getInterval()); + return newDueDate; + } + } diff --git a/astrid/res/values-ca/strings.xml b/astrid/res/values-ca/strings.xml index eab6c955e..171e71a95 100644 --- a/astrid/res/values-ca/strings.xml +++ b/astrid/res/values-ca/strings.xml @@ -1750,11 +1750,12 @@ Astrid is open-source and proudly maintained by Todoroo, Inc. Interval de Repecitiò - + Dia/es Setmana/es Mes/os Hora/es + Minut/s diff --git a/astrid/res/values-cs/strings.xml b/astrid/res/values-cs/strings.xml index 10e789df3..bb7ce1304 100644 --- a/astrid/res/values-cs/strings.xml +++ b/astrid/res/values-cs/strings.xml @@ -1737,11 +1737,12 @@ Astrid is open-source and proudly maintained by Todoroo, Inc. Opakovací interval - + Dnů Týdnů Měsíců Hodin + Minut diff --git a/astrid/res/values-da/strings.xml b/astrid/res/values-da/strings.xml index 56a87ba96..1d8724dec 100644 --- a/astrid/res/values-da/strings.xml +++ b/astrid/res/values-da/strings.xml @@ -1733,11 +1733,12 @@ Astrid is open-source and proudly maintained by Todoroo, Inc. Repeat Interval - + Dag(e) Uge(r) Måned(er) Time(r) + Minut(er) diff --git a/astrid/res/values-de/strings.xml b/astrid/res/values-de/strings.xml index 033f3af90..9eb2ddba6 100644 --- a/astrid/res/values-de/strings.xml +++ b/astrid/res/values-de/strings.xml @@ -1730,11 +1730,12 @@ Achtung: diese Aufgaben sind unwiederbringlich verloren, wenn Sie kein Backup ge Wiederholungsintervall - + Tag(e) Woche(n) Monat(e) Stunde(n) + Minute(n) diff --git a/astrid/res/values-es/strings.xml b/astrid/res/values-es/strings.xml index e3d17fa85..3cf2198e7 100644 --- a/astrid/res/values-es/strings.xml +++ b/astrid/res/values-es/strings.xml @@ -1748,11 +1748,12 @@ Astrid is open-source and proudly maintained by Todoroo, Inc. Intervalo de repetición - + Día(s) Semana(s) Mes(es) Hora(s) + Minuto(s) diff --git a/astrid/res/values-fr/strings.xml b/astrid/res/values-fr/strings.xml index 0a3159c3f..2f4bcfc1e 100644 --- a/astrid/res/values-fr/strings.xml +++ b/astrid/res/values-fr/strings.xml @@ -1734,11 +1734,12 @@ Astrid is open-source and proudly maintained by Todoroo, Inc. Interval de répétition - + Jour(s) Semaine(s) Mois Heure(s) + Minute(s) diff --git a/astrid/res/values-he/strings.xml b/astrid/res/values-he/strings.xml index 2b34e005d..3b45f2d6f 100644 --- a/astrid/res/values-he/strings.xml +++ b/astrid/res/values-he/strings.xml @@ -1763,11 +1763,12 @@ you get stuff done. It features reminders, tags, sync, Locale plug-in, a widget Repeat Interval - + יום/ימים שבוע/(ות) חודש/ים שעה/ות + דקה/דקות diff --git a/astrid/res/values-it/strings.xml b/astrid/res/values-it/strings.xml index 82554bd83..5dd3c5fe5 100644 --- a/astrid/res/values-it/strings.xml +++ b/astrid/res/values-it/strings.xml @@ -1734,11 +1734,12 @@ Astrid is open-source and proudly maintained by Todoroo, Inc. Intervallo di ripetizione - + Giorno(i) Settimana(e) Mese(i) Ora(e) + Minuto(i) diff --git a/astrid/res/values-ja/strings.xml b/astrid/res/values-ja/strings.xml index f86460c93..f6e803de9 100644 --- a/astrid/res/values-ja/strings.xml +++ b/astrid/res/values-ja/strings.xml @@ -1738,11 +1738,12 @@ you get stuff done. It features reminders, tags, sync, Locale plug-in, a widget 繰り返し間隔 - + 日毎 週毎 か月毎 時間毎 + Minutes diff --git a/astrid/res/values-ko/strings.xml b/astrid/res/values-ko/strings.xml index 2ec7a30ab..2e7b8f109 100644 --- a/astrid/res/values-ko/strings.xml +++ b/astrid/res/values-ko/strings.xml @@ -1745,11 +1745,12 @@ Astrid is open-source and proudly maintained by Todoroo, Inc. 반복 주기 - + + Minutes diff --git a/astrid/res/values-nb/strings.xml b/astrid/res/values-nb/strings.xml index 66ea71cb3..e9a451574 100644 --- a/astrid/res/values-nb/strings.xml +++ b/astrid/res/values-nb/strings.xml @@ -1741,11 +1741,12 @@ Astrid is open-source and proudly maintained by Todoroo, Inc. Gjentakelsesintervall - + Dag(er) Uke(r) Måned(er) Time(r) + Minutt(er) diff --git a/astrid/res/values-nl/strings.xml b/astrid/res/values-nl/strings.xml index ce89a3560..dc95576be 100644 --- a/astrid/res/values-nl/strings.xml +++ b/astrid/res/values-nl/strings.xml @@ -1716,11 +1716,12 @@ Herhaal interval - + Dag(en) Week/Weken Maand(en) Uur/Uren + Minuut/Minuten diff --git a/astrid/res/values-pl/strings.xml b/astrid/res/values-pl/strings.xml index afa370a48..7f9333d05 100644 --- a/astrid/res/values-pl/strings.xml +++ b/astrid/res/values-pl/strings.xml @@ -1745,11 +1745,12 @@ Astrid is open-source and proudly maintained by Todoroo, Inc. Odstęp powtarzania - + Dzień/Dni Tydzień/Tygodni(e) Miesiąc/Miesiący(e) Godzinę(y)/Godzin + Minuta/Minut diff --git a/astrid/res/values-pt/strings.xml b/astrid/res/values-pt/strings.xml index 0592488d1..4fe9e3a44 100644 --- a/astrid/res/values-pt/strings.xml +++ b/astrid/res/values-pt/strings.xml @@ -1753,11 +1753,12 @@ Astrid might not let you know when your tasks are due.\n Repeat Interval - + Dia(s) Semana(s) Mês(es) Hora(s) + Minuto(s) diff --git a/astrid/res/values-ru/strings.xml b/astrid/res/values-ru/strings.xml index dfc7b9c7b..1eff9f0b6 100644 --- a/astrid/res/values-ru/strings.xml +++ b/astrid/res/values-ru/strings.xml @@ -1734,11 +1734,12 @@ Astrid is open-source and proudly maintained by Todoroo, Inc. Интервал повтора - + День(дней) Неделя(ль) Месяц(ев) Час(ов) + минут(а) diff --git a/astrid/res/values-sv/strings.xml b/astrid/res/values-sv/strings.xml index 3cbb3031f..eebbd916b 100644 --- a/astrid/res/values-sv/strings.xml +++ b/astrid/res/values-sv/strings.xml @@ -1733,11 +1733,12 @@ Astrid is open-source and proudly maintained by Todoroo, Inc. Upprepningsintervall - + Dag(ar) Vecka (veckor) Månad(er) Timme (timmar) + Minut(er) diff --git a/astrid/res/values-th/strings.xml b/astrid/res/values-th/strings.xml index 283cf070f..2e2b58751 100644 --- a/astrid/res/values-th/strings.xml +++ b/astrid/res/values-th/strings.xml @@ -1761,11 +1761,12 @@ you get stuff done. It features reminders, tags, sync, Locale plug-in, a widget Repeat Interval - + วัน สัปดาห์ เดือน ชั่วโมง + นาที diff --git a/astrid/res/values-zh-rCN/strings.xml b/astrid/res/values-zh-rCN/strings.xml index fdf166d45..a3744827e 100644 --- a/astrid/res/values-zh-rCN/strings.xml +++ b/astrid/res/values-zh-rCN/strings.xml @@ -1717,11 +1717,12 @@ 重复间隔 - + 小时 + Minutes diff --git a/astrid/res/values-zh-rTW/strings.xml b/astrid/res/values-zh-rTW/strings.xml index bfc84edef..cc7bd6470 100644 --- a/astrid/res/values-zh-rTW/strings.xml +++ b/astrid/res/values-zh-rTW/strings.xml @@ -1734,11 +1734,12 @@ Astrid is open-source and proudly maintained by Todoroo, Inc. 重複間隔 - + 小時 + Minutes diff --git a/astrid/res/values/strings-repeat.xml b/astrid/res/values/strings-repeat.xml index f0b09acef..7f8ee466e 100644 --- a/astrid/res/values/strings-repeat.xml +++ b/astrid/res/values/strings-repeat.xml @@ -20,11 +20,12 @@ Repeat Interval - + Day(s) Week(s) Month(s) Hour(s) + Minute(s)