Implemented snooze by x minutes and repeat interval also.

pull/14/head
Arne Jans 13 years ago
parent 5bf9f8ed37
commit a79e19637f

@ -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
* ====================================================================== */

@ -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;

@ -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();

@ -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;
}
}

@ -1750,11 +1750,12 @@ Astrid is open-source and proudly maintained by Todoroo, Inc.</string>
<string name="repeat_interval_prompt">Interval de Repecitiò</string>
<string-array name="repeat_interval">
<!-- repeat interval (days,weeks,months,hours) -->
<!-- repeat interval (days,weeks,months,hours,minutes) -->
<item>Dia/es</item>
<item>Setmana/es</item>
<item>Mes/os</item>
<item>Hora/es</item>
<item>Minut/s</item>
</string-array>
<string-array name="repeat_type">

@ -1737,11 +1737,12 @@ Astrid is open-source and proudly maintained by Todoroo, Inc.</string>
<string name="repeat_interval_prompt">Opakovací interval</string>
<string-array name="repeat_interval">
<!-- repeat interval (days,weeks,months,hours) -->
<!-- repeat interval (days,weeks,months,hours,minutes) -->
<item>Dnů</item>
<item>Týdnů</item>
<item>Měsíců</item>
<item>Hodin</item>
<item>Minut</item>
</string-array>
<string-array name="repeat_type">

@ -1733,11 +1733,12 @@ Astrid is open-source and proudly maintained by Todoroo, Inc.</string>
<string name="repeat_interval_prompt">Repeat Interval</string>
<string-array name="repeat_interval">
<!-- repeat interval (days,weeks,months,hours) -->
<!-- repeat interval (days,weeks,months,hours,minutes) -->
<item>Dag(e)</item>
<item>Uge(r)</item>
<item>Måned(er)</item>
<item>Time(r)</item>
<item>Minut(er)</item>
</string-array>
<string-array name="repeat_type">

@ -1730,11 +1730,12 @@ Achtung: diese Aufgaben sind unwiederbringlich verloren, wenn Sie kein Backup ge
<string name="repeat_interval_prompt">Wiederholungsintervall</string>
<string-array name="repeat_interval">
<!-- repeat interval (days,weeks,months,hours) -->
<!-- repeat interval (days,weeks,months,hours,minutes) -->
<item>Tag(e)</item>
<item>Woche(n)</item>
<item>Monat(e)</item>
<item>Stunde(n)</item>
<item>Minute(n)</item>
</string-array>
<string-array name="repeat_type">

@ -1748,11 +1748,12 @@ Astrid is open-source and proudly maintained by Todoroo, Inc.</string>
<string name="repeat_interval_prompt">Intervalo de repetición</string>
<string-array name="repeat_interval">
<!-- repeat interval (days,weeks,months,hours) -->
<!-- repeat interval (days,weeks,months,hours,minutes) -->
<item>Día(s)</item>
<item>Semana(s)</item>
<item>Mes(es)</item>
<item>Hora(s)</item>
<item>Minuto(s)</item>
</string-array>
<string-array name="repeat_type">

@ -1734,11 +1734,12 @@ Astrid is open-source and proudly maintained by Todoroo, Inc.</string>
<string name="repeat_interval_prompt">Interval de répétition</string>
<string-array name="repeat_interval">
<!-- repeat interval (days,weeks,months,hours) -->
<!-- repeat interval (days,weeks,months,hours,minutes) -->
<item>Jour(s)</item>
<item>Semaine(s)</item>
<item>Mois</item>
<item>Heure(s)</item>
<item>Minute(s)</item>
</string-array>
<string-array name="repeat_type">

@ -1763,11 +1763,12 @@ you get stuff done. It features reminders, tags, sync, Locale plug-in, a widget
<string name="repeat_interval_prompt">Repeat Interval</string>
<string-array name="repeat_interval">
<!-- repeat interval (days,weeks,months,hours) -->
<!-- repeat interval (days,weeks,months,hours,minutes) -->
<item>יום/ימים</item>
<item>שבוע/(ות)</item>
<item>חודש/ים</item>
<item>שעה/ות</item>
<item>דקה/דקות</item>
</string-array>
<string-array name="repeat_type">

@ -1734,11 +1734,12 @@ Astrid is open-source and proudly maintained by Todoroo, Inc.</string>
<string name="repeat_interval_prompt">Intervallo di ripetizione</string>
<string-array name="repeat_interval">
<!-- repeat interval (days,weeks,months,hours) -->
<!-- repeat interval (days,weeks,months,hours,minutes) -->
<item>Giorno(i)</item>
<item>Settimana(e)</item>
<item>Mese(i)</item>
<item>Ora(e)</item>
<item>Minuto(i)</item>
</string-array>
<string-array name="repeat_type">

@ -1738,11 +1738,12 @@ you get stuff done. It features reminders, tags, sync, Locale plug-in, a widget
<string name="repeat_interval_prompt">繰り返し間隔</string>
<string-array name="repeat_interval">
<!-- repeat interval (days,weeks,months,hours) -->
<!-- repeat interval (days,weeks,months,hours,minutes) -->
<item>日毎</item>
<item>週毎</item>
<item>か月毎</item>
<item>時間毎</item>
<item>Minutes</item>
</string-array>
<string-array name="repeat_type">

@ -1745,11 +1745,12 @@ Astrid is open-source and proudly maintained by Todoroo, Inc.</string>
<string name="repeat_interval_prompt">반복 주기</string>
<string-array name="repeat_interval">
<!-- repeat interval (days,weeks,months,hours) -->
<!-- repeat interval (days,weeks,months,hours,minutes) -->
<item></item>
<item></item>
<item></item>
<item></item>
<item>Minutes</item>
</string-array>
<string-array name="repeat_type">

@ -1741,11 +1741,12 @@ Astrid is open-source and proudly maintained by Todoroo, Inc.</string>
<string name="repeat_interval_prompt">Gjentakelsesintervall</string>
<string-array name="repeat_interval">
<!-- repeat interval (days,weeks,months,hours) -->
<!-- repeat interval (days,weeks,months,hours,minutes) -->
<item>Dag(er)</item>
<item>Uke(r)</item>
<item>Måned(er)</item>
<item>Time(r)</item>
<item>Minutt(er)</item>
</string-array>
<string-array name="repeat_type">

@ -1716,11 +1716,12 @@
<string name="repeat_interval_prompt">Herhaal interval</string>
<string-array name="repeat_interval">
<!-- repeat interval (days,weeks,months,hours) -->
<!-- repeat interval (days,weeks,months,hours,minutes) -->
<item>Dag(en)</item>
<item>Week/Weken</item>
<item>Maand(en)</item>
<item>Uur/Uren</item>
<item>Minuut/Minuten</item>
</string-array>
<string-array name="repeat_type">

@ -1745,11 +1745,12 @@ Astrid is open-source and proudly maintained by Todoroo, Inc.</string>
<string name="repeat_interval_prompt">Odstęp powtarzania</string>
<string-array name="repeat_interval">
<!-- repeat interval (days,weeks,months,hours) -->
<!-- repeat interval (days,weeks,months,hours,minutes) -->
<item>Dzień/Dni</item>
<item>Tydzień/Tygodni(e)</item>
<item>Miesiąc/Miesiący(e)</item>
<item>Godzinę(y)/Godzin</item>
<item>Minuta/Minut</item>
</string-array>
<string-array name="repeat_type">

@ -1753,11 +1753,12 @@ Astrid might not let you know when your tasks are due.\n
<string name="repeat_interval_prompt">Repeat Interval</string>
<string-array name="repeat_interval">
<!-- repeat interval (days,weeks,months,hours) -->
<!-- repeat interval (days,weeks,months,hours,minutes) -->
<item>Dia(s)</item>
<item>Semana(s)</item>
<item>Mês(es)</item>
<item>Hora(s)</item>
<item>Minuto(s)</item>
</string-array>
<string-array name="repeat_type">

@ -1734,11 +1734,12 @@ Astrid is open-source and proudly maintained by Todoroo, Inc.</string>
<string name="repeat_interval_prompt">Интервал повтора</string>
<string-array name="repeat_interval">
<!-- repeat interval (days,weeks,months,hours) -->
<!-- repeat interval (days,weeks,months,hours,minutes) -->
<item>День(дней)</item>
<item>Неделя(ль)</item>
<item>Месяц(ев)</item>
<item>Час(ов)</item>
<item>минут(а)</item>
</string-array>
<string-array name="repeat_type">

@ -1733,11 +1733,12 @@ Astrid is open-source and proudly maintained by Todoroo, Inc.</string>
<string name="repeat_interval_prompt">Upprepningsintervall</string>
<string-array name="repeat_interval">
<!-- repeat interval (days,weeks,months,hours) -->
<!-- repeat interval (days,weeks,months,hours,minutes) -->
<item>Dag(ar)</item>
<item>Vecka (veckor)</item>
<item>Månad(er)</item>
<item>Timme (timmar)</item>
<item>Minut(er)</item>
</string-array>
<string-array name="repeat_type">

@ -1761,11 +1761,12 @@ you get stuff done. It features reminders, tags, sync, Locale plug-in, a widget
<string name="repeat_interval_prompt">Repeat Interval</string>
<string-array name="repeat_interval">
<!-- repeat interval (days,weeks,months,hours) -->
<!-- repeat interval (days,weeks,months,hours,minutes) -->
<item>วัน</item>
<item>สัปดาห์</item>
<item>เดือน</item>
<item>ชั่วโมง</item>
<item>นาที</item>
</string-array>
<string-array name="repeat_type">

@ -1717,11 +1717,12 @@
<string name="repeat_interval_prompt">重复间隔</string>
<string-array name="repeat_interval">
<!-- repeat interval (days,weeks,months,hours) -->
<!-- repeat interval (days,weeks,months,hours,minutes) -->
<item></item>
<item></item>
<item></item>
<item>小时</item>
<item>Minutes</item>
</string-array>
<string-array name="repeat_type">

@ -1734,11 +1734,12 @@ Astrid is open-source and proudly maintained by Todoroo, Inc.</string>
<string name="repeat_interval_prompt">重複間隔</string>
<string-array name="repeat_interval">
<!-- repeat interval (days,weeks,months,hours) -->
<!-- repeat interval (days,weeks,months,hours,minutes) -->
<item></item>
<item></item>
<item></item>
<item>小時</item>
<item>Minutes</item>
</string-array>
<string-array name="repeat_type">

@ -20,11 +20,12 @@
<string name="repeat_interval_prompt">Repeat Interval</string>
<string-array name="repeat_interval">
<!-- repeat interval (days,weeks,months,hours) -->
<!-- repeat interval (days,weeks,months,hours,minutes) -->
<item>Day(s)</item>
<item>Week(s)</item>
<item>Month(s)</item>
<item>Hour(s)</item>
<item>Minute(s)</item>
</string-array>
<string-array name="repeat_type">

Loading…
Cancel
Save