diff --git a/astrid/AndroidManifest.xml b/astrid/AndroidManifest.xml index ba316b115..33a6ab837 100644 --- a/astrid/AndroidManifest.xml +++ b/astrid/AndroidManifest.xml @@ -1,7 +1,7 @@ + android:versionName="2.14.4" android:versionCode="135"> diff --git a/astrid/res/values-ca/strings.xml b/astrid/res/values-ca/strings.xml index 273dbac23..0c599aed8 100644 --- a/astrid/res/values-ca/strings.xml +++ b/astrid/res/values-ca/strings.xml @@ -62,10 +62,6 @@ - - d MMM - - HH:mm dd/M D\ni\ne\ns H\no\nr\ne\ns diff --git a/astrid/res/values-cs/strings.xml b/astrid/res/values-cs/strings.xml index db235c915..746797ce8 100644 --- a/astrid/res/values-cs/strings.xml +++ b/astrid/res/values-cs/strings.xml @@ -62,10 +62,6 @@ - - d. MMM - - dd.M HH:mm D\na\ny\ns H\no\nu\nr\ns diff --git a/astrid/res/values-de/strings.xml b/astrid/res/values-de/strings.xml index d2ca0f16e..df5e461fb 100644 --- a/astrid/res/values-de/strings.xml +++ b/astrid/res/values-de/strings.xml @@ -62,10 +62,6 @@ - - d. MMM - - dd/M HH:mm T a diff --git a/astrid/res/values-es/strings.xml b/astrid/res/values-es/strings.xml index d5e139038..69ba5c76a 100644 --- a/astrid/res/values-es/strings.xml +++ b/astrid/res/values-es/strings.xml @@ -62,10 +62,6 @@ - - d MMM - - HH:mm dd/M D\ní\na\ns H\no\nr\na\ns diff --git a/astrid/res/values-fr/strings.xml b/astrid/res/values-fr/strings.xml index c007c66b5..16b9d9365 100644 --- a/astrid/res/values-fr/strings.xml +++ b/astrid/res/values-fr/strings.xml @@ -62,10 +62,6 @@ - - dd MMM - - dd/MM HH:mm j\no\nu\nr\ns h\ne\nu\nr\ne\ns diff --git a/astrid/res/values-id/strings.xml b/astrid/res/values-id/strings.xml index 2eabcb8e4..adfda4d94 100644 --- a/astrid/res/values-id/strings.xml +++ b/astrid/res/values-id/strings.xml @@ -62,10 +62,6 @@ - - MMM d - - M/dd HH:mm D\na\ny\ns H\no\nu\nr\ns diff --git a/astrid/res/values-it/strings.xml b/astrid/res/values-it/strings.xml index 024b5237b..1f62dc90a 100644 --- a/astrid/res/values-it/strings.xml +++ b/astrid/res/values-it/strings.xml @@ -62,10 +62,6 @@ - - d MMM - - dd/M HH:mm D\na\ny\ns H\no\nu\nr\ns diff --git a/astrid/res/values-ja/strings.xml b/astrid/res/values-ja/strings.xml index 0f4acb9b0..4ee3c16ff 100644 --- a/astrid/res/values-ja/strings.xml +++ b/astrid/res/values-ja/strings.xml @@ -62,10 +62,6 @@ - - MMM d - - M/dd HH:mm 時\n間 diff --git a/astrid/res/values-ko/strings.xml b/astrid/res/values-ko/strings.xml index bda0435d4..60682b4a6 100644 --- a/astrid/res/values-ko/strings.xml +++ b/astrid/res/values-ko/strings.xml @@ -62,10 +62,6 @@ - - MMM d - - M/dd HH:mm diff --git a/astrid/res/values-nb/strings.xml b/astrid/res/values-nb/strings.xml index 1421ddb19..2dcbfd7e7 100644 --- a/astrid/res/values-nb/strings.xml +++ b/astrid/res/values-nb/strings.xml @@ -62,10 +62,6 @@ - - d MMM - - dd/M HH:mm d\na\ng\ne\nr t\ni\nm\ne\nr @@ -493,4 +489,4 @@ Hvis du ikke ønsker å se den nye oppgaven rett etter at du fullfører den gaml Les Astrid-gjøremål - \ No newline at end of file + diff --git a/astrid/res/values-nl/strings.xml b/astrid/res/values-nl/strings.xml index 638535469..a325ae521 100644 --- a/astrid/res/values-nl/strings.xml +++ b/astrid/res/values-nl/strings.xml @@ -62,10 +62,6 @@ - - d MMM - - dd-M HH:mm D\na\ng\ne\nn U\nr\ne\nn diff --git a/astrid/res/values-pl/strings.xml b/astrid/res/values-pl/strings.xml index 31e8ed7ac..68d0ea945 100644 --- a/astrid/res/values-pl/strings.xml +++ b/astrid/res/values-pl/strings.xml @@ -62,10 +62,6 @@ - - d MMMM - - M/dd HH:mm D\na\ny\ns H\no\nu\nr\ns diff --git a/astrid/res/values-pt/strings.xml b/astrid/res/values-pt/strings.xml index e7ada0ffd..78799f1c4 100644 --- a/astrid/res/values-pt/strings.xml +++ b/astrid/res/values-pt/strings.xml @@ -62,10 +62,6 @@ - - MMM d - - M/dd HH:mm D\ni\na\ns H\no\nr\na\ns diff --git a/astrid/res/values-ru/strings.xml b/astrid/res/values-ru/strings.xml index f37465460..2463a3b40 100644 --- a/astrid/res/values-ru/strings.xml +++ b/astrid/res/values-ru/strings.xml @@ -62,10 +62,6 @@ - - d MMM - - dd/M HH:mm D\ny\na\ns H\no\nu\nr\ns diff --git a/astrid/res/values-sv/strings.xml b/astrid/res/values-sv/strings.xml index 12f2b8af6..0703a08c0 100644 --- a/astrid/res/values-sv/strings.xml +++ b/astrid/res/values-sv/strings.xml @@ -62,10 +62,6 @@ - - d MMM - - M/dd HH:mm D\na\ng\na\nr H\no\nu\nr\ns diff --git a/astrid/res/values-tr/strings.xml b/astrid/res/values-tr/strings.xml index ac4dd0599..f20b2da8a 100644 --- a/astrid/res/values-tr/strings.xml +++ b/astrid/res/values-tr/strings.xml @@ -62,10 +62,6 @@ - - d MMM - - dd-MM HH:mm D\na\ny\ns H\no\nu\nr\ns diff --git a/astrid/res/values-zh-rCN/strings.xml b/astrid/res/values-zh-rCN/strings.xml index 727d8c9aa..dbb9460e6 100644 --- a/astrid/res/values-zh-rCN/strings.xml +++ b/astrid/res/values-zh-rCN/strings.xml @@ -62,10 +62,6 @@ - - MMM d - - M/dd HH:mm 小\n时 diff --git a/astrid/res/values-zh-rTW/strings.xml b/astrid/res/values-zh-rTW/strings.xml index e132b1e67..8b9975b76 100644 --- a/astrid/res/values-zh-rTW/strings.xml +++ b/astrid/res/values-zh-rTW/strings.xml @@ -62,10 +62,6 @@ - - MMM d - - M/dd HH:mm 小\n時 diff --git a/astrid/res/values/strings.xml b/astrid/res/values/strings.xml index aefc1ade2..f5a2563fe 100644 --- a/astrid/res/values/strings.xml +++ b/astrid/res/values/strings.xml @@ -62,10 +62,6 @@ - - MMM d - - M/dd HH:mm D\na\ny\ns H\no\nu\nr\ns diff --git a/astrid/src-legacy/com/timsu/astrid/activities/TaskListAdapter.java b/astrid/src-legacy/com/timsu/astrid/activities/TaskListAdapter.java index 88dac582c..188f6773f 100644 --- a/astrid/src-legacy/com/timsu/astrid/activities/TaskListAdapter.java +++ b/astrid/src-legacy/com/timsu/astrid/activities/TaskListAdapter.java @@ -18,7 +18,6 @@ package com.timsu.astrid.activities; import java.text.Format; -import java.text.SimpleDateFormat; import java.util.Date; import java.util.List; @@ -333,7 +332,7 @@ public class TaskListAdapter extends ArrayAdapter { DateUtilities.getDurationString(r, Math.abs(secondsLeft), 1)); else - finishedTime = DateUtilities.getFormattedDate(r, + finishedTime = DateUtilities.getFormattedDate(activity, task.getCompletionDate()); label.append(r.getString(R.string.taskList_completedPrefix, finishedTime)); @@ -358,7 +357,7 @@ public class TaskListAdapter extends ArrayAdapter { label.append(DateUtilities.getDurationString(r, (int)Math.abs(timeLeft), 1, true)); else - label.append(DateUtilities.getFormattedDate(r, + label.append(DateUtilities.getFormattedDate(activity, task.getDefiniteDueDate())); } if(!taskOverdue && task.getPreferredDueDate() != null) { @@ -381,7 +380,7 @@ public class TaskListAdapter extends ArrayAdapter { label.append(DateUtilities.getDurationString(r, (int)Math.abs(timeLeft), 1, true)); else - label.append(DateUtilities.getFormattedDate(r, + label.append(DateUtilities.getFormattedDate(activity, task.getPreferredDueDate())); } } @@ -458,8 +457,7 @@ public class TaskListAdapter extends ArrayAdapter { if(label.length() > 0) label.append(". "); if(alarmFormat == null) - alarmFormat = new SimpleDateFormat( - r.getString(R.string.alarmDateFormatter)); + alarmFormat = Preferences.getDateWithTimeFormat(activity); String alarmString = alarmFormat.format(nextAlarm); label.append(r.getString(R.string.taskList_alarmPrefix) + " " + alarmString); diff --git a/astrid/src-legacy/com/timsu/astrid/utilities/BackupService.java b/astrid/src-legacy/com/timsu/astrid/utilities/BackupService.java index b7da29e8b..fa615910e 100644 --- a/astrid/src-legacy/com/timsu/astrid/utilities/BackupService.java +++ b/astrid/src-legacy/com/timsu/astrid/utilities/BackupService.java @@ -73,7 +73,7 @@ public class BackupService extends Service { exporter.exportTasks(backupDirectorySetting.getBackupDirectory()); Preferences.setBackupSummary(ctx, ctx.getString(R.string.prefs_backup_desc_success, - DateUtilities.getFormattedDate(ctx.getResources(), new Date()))); + DateUtilities.getFormattedDate(ctx, new Date()))); } catch (Exception e) { // unable to backup. if (e == null || e.getMessage() == null) { diff --git a/astrid/src-legacy/com/timsu/astrid/utilities/DateUtilities.java b/astrid/src-legacy/com/timsu/astrid/utilities/DateUtilities.java index 3886fefd0..06b1a3678 100644 --- a/astrid/src-legacy/com/timsu/astrid/utilities/DateUtilities.java +++ b/astrid/src-legacy/com/timsu/astrid/utilities/DateUtilities.java @@ -19,25 +19,27 @@ */ package com.timsu.astrid.utilities; -import android.content.res.Resources; -import android.util.Log; -import com.timsu.astrid.R; - import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; +import android.content.Context; +import android.content.res.Resources; +import android.util.Log; + +import com.timsu.astrid.R; + public class DateUtilities { private static SimpleDateFormat format = null; private static final String ISO_8601_FORMAT = "yyyy-MM-dd'T'HH:mm:ssz"; /** Format a time into a medium length absolute format */ - public static String getFormattedDate(Resources r, Date date) { + public static String getFormattedDate(Context context, Date date) { if(format == null) - format = new SimpleDateFormat(r.getString(R.string.dateFormatter)); + format = Preferences.getDateFormat(context); return format.format(date); } diff --git a/astrid/src-legacy/com/timsu/astrid/utilities/Preferences.java b/astrid/src-legacy/com/timsu/astrid/utilities/Preferences.java index d5abe456b..f7074184c 100644 --- a/astrid/src-legacy/com/timsu/astrid/utilities/Preferences.java +++ b/astrid/src-legacy/com/timsu/astrid/utilities/Preferences.java @@ -148,33 +148,84 @@ public class Preferences { editor.commit(); } + // --- date time strings and formatters + + @SuppressWarnings("nls") public static boolean is24HourFormat(Context context) { String value = android.provider.Settings.System.getString(context.getContentResolver(), - android.provider.Settings.System.TIME_12_24); + android.provider.Settings.System.TIME_12_24); boolean b24 = !(value == null || value.equals("12")); return b24; } + /** + * @return time format (hours and minutes) + */ public static SimpleDateFormat getTimeFormat(Context context) { + String value = getTimeFormatString(context); + return new SimpleDateFormat(value); + } + + /** + * @return string used for time formatting + */ + @SuppressWarnings("nls") + private static String getTimeFormatString(Context context) { String value; if (is24HourFormat(context)) { value = "H:mm"; } else { value = "h:mm a"; } + return value; + } - return new SimpleDateFormat(value); + /** + * @return string used for date formatting + */ + @SuppressWarnings("nls") + private static String getDateFormatString(Context context) { + String value = android.provider.Settings.System.getString(context.getContentResolver(), + android.provider.Settings.System.DATE_FORMAT); + if (value == null) { + // united states, you are special + if (Locale.US.equals(Locale.getDefault()) + || Locale.CANADA.equals(Locale.getDefault())) + value = "MMM d yyyy"; + else + value = "d MMM yyyy"; + } + return value; } + /** + * @return date format (month, day, year) + */ public static SimpleDateFormat getDateFormat(Context context) { - // united states, you are special - if(Locale.US.equals(Locale.getDefault()) || - Locale.CANADA.equals(Locale.getDefault())) - return new SimpleDateFormat("EEE, MMM d yyyy"); - else - return new SimpleDateFormat("EEE, d MMM yyyy"); + return new SimpleDateFormat(getDateFormatString(context)); + } + + /** + * @return date format as getDateFormat with weekday + */ + @SuppressWarnings("nls") + public static SimpleDateFormat getDateFormatWithWeekday(Context context) { + return new SimpleDateFormat("EEE, " + getDateFormatString(context)); + } + /** + * @return date with time at the end + */ + @SuppressWarnings("nls") + public static SimpleDateFormat getDateWithTimeFormat(Context context) { + return new SimpleDateFormat(getDateFormatString(context) + " " + + getTimeFormatString(context)); + + } + + + // --- notification settings /** returns hour at which quiet hours start, or null if not set */ diff --git a/astrid/src-legacy/com/timsu/astrid/widget/DateControlSet.java b/astrid/src-legacy/com/timsu/astrid/widget/DateControlSet.java index 4114ca781..aaa5b4d7d 100644 --- a/astrid/src-legacy/com/timsu/astrid/widget/DateControlSet.java +++ b/astrid/src-legacy/com/timsu/astrid/widget/DateControlSet.java @@ -47,7 +47,7 @@ public class DateControlSet implements OnTimeSetListener, protected DateControlSet(Activity activity) { this.activity = activity; - this.dateFormatter = Preferences.getDateFormat(this.activity); + this.dateFormatter = Preferences.getDateFormatWithWeekday(this.activity); this.timeFormatter = Preferences.getTimeFormat(this.activity); } diff --git a/tests/src/com/todoroo/astrid/test/AstridTranslationTests.java b/tests/src/com/todoroo/astrid/test/AstridTranslationTests.java index e4f73bc1f..c54a87de6 100644 --- a/tests/src/com/todoroo/astrid/test/AstridTranslationTests.java +++ b/tests/src/com/todoroo/astrid/test/AstridTranslationTests.java @@ -20,8 +20,7 @@ public class AstridTranslationTests extends TranslationTests { @Override public int[] getDateFormatStrings() { return new int[] { - R.string.dateFormatter, - R.string.alarmDateFormatter, + // }; }