From 930be1f2492597694a5bff4ac1d01436e1d2b4c7 Mon Sep 17 00:00:00 2001 From: Alex Baker Date: Fri, 16 Oct 2020 13:26:46 -0500 Subject: [PATCH] Full date updates * Move preference to 'Date and time' screen * Show full dates in widget * Show full dates in deadline control set --- app/src/main/java/org/tasks/tasklist/HeaderViewHolder.kt | 2 +- app/src/main/java/org/tasks/ui/DeadlineControlSet.kt | 9 ++++++++- .../main/java/org/tasks/widget/ScrollableViewsFactory.kt | 8 +++++--- .../main/java/org/tasks/widget/WidgetPreferences.java | 4 ++-- app/src/main/res/xml/preferences_date_and_time.xml | 5 +++++ app/src/main/res/xml/preferences_look_and_feel.xml | 5 ----- 6 files changed, 21 insertions(+), 12 deletions(-) diff --git a/app/src/main/java/org/tasks/tasklist/HeaderViewHolder.kt b/app/src/main/java/org/tasks/tasklist/HeaderViewHolder.kt index 167922dc1..d146bd0b1 100644 --- a/app/src/main/java/org/tasks/tasklist/HeaderViewHolder.kt +++ b/app/src/main/java/org/tasks/tasklist/HeaderViewHolder.kt @@ -50,7 +50,7 @@ class HeaderViewHolder( context.getString(R.string.sort_created_group, getDateString(group, alwaysDisplayFullDate)) sortMode == SortHelper.SORT_MODIFIED -> context.getString(R.string.sort_modified_group, getDateString(group, alwaysDisplayFullDate)) - else -> getDateString(group, alwaysDisplayFullDate) + else -> getDateString(group, alwaysDisplayFullDate, false) } } diff --git a/app/src/main/java/org/tasks/ui/DeadlineControlSet.kt b/app/src/main/java/org/tasks/ui/DeadlineControlSet.kt index 6972dcd1b..d5b0c1db2 100644 --- a/app/src/main/java/org/tasks/ui/DeadlineControlSet.kt +++ b/app/src/main/java/org/tasks/ui/DeadlineControlSet.kt @@ -75,7 +75,14 @@ class DeadlineControlSet : TaskEditControlFragment() { dueDate.text = "" setTextColor(false) } else { - dueDate.text = DateUtilities.getRelativeDateTime(activity, date, locale.locale, FormatStyle.FULL) + dueDate.text = DateUtilities.getRelativeDateTime( + activity, + date, + locale.locale, + FormatStyle.FULL, + preferences.alwaysDisplayFullDate, + false + ) setTextColor(if (hasDueTime(date)) { DateTimeUtils.newDateTime(date).isBeforeNow } else { diff --git a/app/src/main/java/org/tasks/widget/ScrollableViewsFactory.kt b/app/src/main/java/org/tasks/widget/ScrollableViewsFactory.kt index 2ab173d51..6216d2a09 100644 --- a/app/src/main/java/org/tasks/widget/ScrollableViewsFactory.kt +++ b/app/src/main/java/org/tasks/widget/ScrollableViewsFactory.kt @@ -73,6 +73,7 @@ internal class ScrollableViewsFactory( private var tasks = SectionedDataSource(emptyList(), false, 0, collapsed) private val widgetPreferences = WidgetPreferences(context, preferences, widgetId) private var isDark = checkIfDark + private var showFullDate = false private val checkIfDark: Boolean get() = when (widgetPreferences.themeIndex) { @@ -192,8 +193,8 @@ internal class ScrollableViewsFactory( } } - private fun getDateString(value: Long, lowercase: Boolean = true, alwaysDisplayFullDate: Boolean = false) = - DateUtilities.getRelativeDay(context, value, locale.locale, FormatStyle.MEDIUM, alwaysDisplayFullDate, lowercase) + private fun getDateString(value: Long, lowercase: Boolean = true) = + DateUtilities.getRelativeDay(context, value, locale.locale, FormatStyle.MEDIUM, showFullDate, lowercase) @StringRes private fun priorityToString(priority: Int) = when (priority) { @@ -334,7 +335,7 @@ internal class ScrollableViewsFactory( } } else { DateUtilities.getRelativeDateTime( - context, task.dueDate, locale.locale, FormatStyle.MEDIUM) + context, task.dueDate, locale.locale, FormatStyle.MEDIUM, showFullDate, false) } row.setTextViewText(dueDateRes, text) row.setTextColor( @@ -381,6 +382,7 @@ internal class ScrollableViewsFactory( showSubtasks = widgetPreferences.showSubtasks() showLists = widgetPreferences.showLists() showTags = widgetPreferences.showTags() + showFullDate = widgetPreferences.alwaysDisplayFullDate widgetPreferences.sortMode.takeIf { it != sortMode } ?.let { if (sortMode >= 0) { diff --git a/app/src/main/java/org/tasks/widget/WidgetPreferences.java b/app/src/main/java/org/tasks/widget/WidgetPreferences.java index 8c13c35f3..6662ae960 100644 --- a/app/src/main/java/org/tasks/widget/WidgetPreferences.java +++ b/app/src/main/java/org/tasks/widget/WidgetPreferences.java @@ -267,7 +267,7 @@ public class WidgetPreferences implements QueryPreferences { } @Override - public boolean getAlwaysDisplayFullDate() { return getBoolean(R.string.p_always_display_full_date, false); } + public boolean getAlwaysDisplayFullDate() { return preferences.getAlwaysDisplayFullDate(); } @Override public boolean usePagedQueries() { @@ -296,6 +296,6 @@ public class WidgetPreferences implements QueryPreferences { @Override public void setAlwaysDisplayFullDate(boolean noWeekday) { - setBoolean(R.string.p_always_display_full_date, noWeekday); + preferences.setAlwaysDisplayFullDate(noWeekday); } } diff --git a/app/src/main/res/xml/preferences_date_and_time.xml b/app/src/main/res/xml/preferences_date_and_time.xml index d024d8aea..e675c60b3 100644 --- a/app/src/main/res/xml/preferences_date_and_time.xml +++ b/app/src/main/res/xml/preferences_date_and_time.xml @@ -8,6 +8,11 @@ android:key="@string/p_start_of_week" android:title="@string/start_of_week" /> + + - -