Condensed date/time format

This commit is contained in:
M66B 2023-12-02 20:47:38 +01:00
parent 73752804a3
commit 5eb1e7902c
2 changed files with 13 additions and 8 deletions

View File

@ -1462,8 +1462,11 @@ public class AdapterMessage extends RecyclerView.Adapter<AdapterMessage.ViewHold
message.totalSize != null && ("size".equals(sort) || "attachments".equals(sort))
? View.VISIBLE : View.GONE);
SpannableStringBuilder time;
if (date_time)
time = new SpannableStringBuilderEx(Helper.getRelativeDateTimeSpanString(context, message.received));
if (EntityMessage.PRIORITIY_HIGH.equals(message.importance) ||
EntityMessage.PRIORITIY_LOW.equals(message.importance))
time = new SpannableStringBuilderEx(Helper.getRelativeDateTimeSpanString(context, message.received, true));
else if (date_time)
time = new SpannableStringBuilderEx(Helper.getRelativeDateTimeSpanString(context, message.received, false));
else if (date_week)
time = new SpannableStringBuilderEx(Helper.getRelativeDateSpanString(context, message.received));
else

View File

@ -2256,18 +2256,18 @@ public class Helper {
}
static CharSequence getRelativeDateSpanString(Context context, long millis) {
return getRelativeTimeSpanString(context, millis, false, true);
return getRelativeTimeSpanString(context, millis, false, true, false);
}
static CharSequence getRelativeTimeSpanString(Context context, long millis) {
return getRelativeTimeSpanString(context, millis, true, false);
return getRelativeTimeSpanString(context, millis, true, false, false);
}
static CharSequence getRelativeDateTimeSpanString(Context context, long millis) {
return getRelativeTimeSpanString(context, millis, true, true);
static CharSequence getRelativeDateTimeSpanString(Context context, long millis, boolean condensed) {
return getRelativeTimeSpanString(context, millis, true, true, condensed);
}
private static CharSequence getRelativeTimeSpanString(Context context, long millis, boolean withTime, boolean withDate) {
private static CharSequence getRelativeTimeSpanString(Context context, long millis, boolean withTime, boolean withDate, boolean condensed) {
Calendar cal0 = Calendar.getInstance();
Calendar cal1 = Calendar.getInstance();
cal0.setTimeInMillis(millis);
@ -2277,7 +2277,9 @@ public class Helper {
boolean thisDay = (cal0.get(Calendar.DAY_OF_MONTH) == cal1.get(Calendar.DAY_OF_MONTH));
if (withDate) {
try {
String skeleton = (thisMonth && thisYear ? "MMM-d" : "yyyy-M-d");
if (condensed && thisYear && thisMonth && thisDay)
return getTimeInstance(context, SimpleDateFormat.SHORT).format(millis);
String skeleton = (thisYear ? "MMM-d" : "yyyy-M-d");
if (withTime) {
boolean is24Hour = android.text.format.DateFormat.is24HourFormat(context);
skeleton += (is24Hour ? " Hm" : " hm");