From 4ccdede3e3514d4ee6f723d8c644a17ab706b0c4 Mon Sep 17 00:00:00 2001 From: Julia Reynolds Date: Tue, 20 Mar 2018 09:02:17 -0400 Subject: [PATCH] Update duration text Change-Id: Ib390aaf1a82d28ab197628b09e80ca439c392eae Fixes: 72651488 Bug: 74318867 Test: make -j RunSettingsLibRoboTests --- packages/SettingsLib/res/values/strings.xml | 3 +++ .../android/settingslib/utils/StringUtil.java | 8 +++++--- .../settingslib/utils/StringUtilTest.java | 20 +++++++++---------- 3 files changed, 18 insertions(+), 13 deletions(-) diff --git a/packages/SettingsLib/res/values/strings.xml b/packages/SettingsLib/res/values/strings.xml index 589608a8caf86..98ef62ad71b15 100644 --- a/packages/SettingsLib/res/values/strings.xml +++ b/packages/SettingsLib/res/values/strings.xml @@ -1093,4 +1093,7 @@ Duration Ask every time + + + Just now diff --git a/packages/SettingsLib/src/com/android/settingslib/utils/StringUtil.java b/packages/SettingsLib/src/com/android/settingslib/utils/StringUtil.java index 68be2b4041b10..81a2d434a960a 100644 --- a/packages/SettingsLib/src/com/android/settingslib/utils/StringUtil.java +++ b/packages/SettingsLib/src/com/android/settingslib/utils/StringUtil.java @@ -27,6 +27,9 @@ import android.icu.util.ULocale; import android.text.SpannableStringBuilder; import android.text.Spanned; import android.text.style.TtsSpan; + +import com.android.settingslib.R; + import java.util.ArrayList; import java.util.Locale; @@ -121,8 +124,7 @@ public class StringUtil { final RelativeUnit unit; final int value; if (withSeconds && seconds < 2 * SECONDS_PER_MINUTE) { - unit = RelativeUnit.SECONDS; - value = seconds; + return context.getResources().getString(R.string.time_unit_just_now); } else if (seconds < 2 * SECONDS_PER_HOUR) { unit = RelativeUnit.MINUTES; value = (seconds + SECONDS_PER_MINUTE / 2) @@ -141,7 +143,7 @@ public class StringUtil { final RelativeDateTimeFormatter formatter = RelativeDateTimeFormatter.getInstance( ULocale.forLocale(locale), null /* default NumberFormat */, - RelativeDateTimeFormatter.Style.SHORT, + RelativeDateTimeFormatter.Style.LONG, android.icu.text.DisplayContext.CAPITALIZATION_FOR_MIDDLE_OF_SENTENCE); return formatter.format(value, RelativeDateTimeFormatter.Direction.LAST, unit); diff --git a/packages/SettingsLib/tests/robotests/src/com/android/settingslib/utils/StringUtilTest.java b/packages/SettingsLib/tests/robotests/src/com/android/settingslib/utils/StringUtilTest.java index 47dd02290ea18..532c755ef7b91 100644 --- a/packages/SettingsLib/tests/robotests/src/com/android/settingslib/utils/StringUtilTest.java +++ b/packages/SettingsLib/tests/robotests/src/com/android/settingslib/utils/StringUtilTest.java @@ -114,7 +114,7 @@ public class StringUtilTest { @Test public void testFormatRelativeTime_WithSeconds_ShowSeconds() { final double testMillis = 40 * DateUtils.SECOND_IN_MILLIS; - final String expectedTime = "40 sec. ago"; + final String expectedTime = "Just now"; assertThat(StringUtil.formatRelativeTime(mContext, testMillis, true).toString()).isEqualTo( expectedTime); @@ -123,7 +123,7 @@ public class StringUtilTest { @Test public void testFormatRelativeTime_NoSeconds_DoNotShowSeconds() { final double testMillis = 40 * DateUtils.SECOND_IN_MILLIS; - final String expectedTime = "1 min. ago"; + final String expectedTime = "1 minute ago"; assertThat(StringUtil.formatRelativeTime(mContext, testMillis, false).toString()).isEqualTo( expectedTime); @@ -132,7 +132,7 @@ public class StringUtilTest { @Test public void testFormatRelativeTime_LessThanTwoMinutes_withSeconds() { final double testMillis = 119 * DateUtils.SECOND_IN_MILLIS; - final String expectedTime = "119 sec. ago"; + final String expectedTime = "Just now"; assertThat(StringUtil.formatRelativeTime(mContext, testMillis, true).toString()).isEqualTo( expectedTime); @@ -141,7 +141,7 @@ public class StringUtilTest { @Test public void testFormatRelativeTime_LessThanTwoMinutes_NoSeconds() { final double testMillis = 119 * DateUtils.SECOND_IN_MILLIS; - final String expectedTime = "2 min. ago"; + final String expectedTime = "2 minutes ago"; assertThat(StringUtil.formatRelativeTime(mContext, testMillis, false).toString()).isEqualTo( expectedTime); @@ -150,7 +150,7 @@ public class StringUtilTest { @Test public void testFormatRelativeTime_TwoMinutes_withSeconds() { final double testMillis = 2 * DateUtils.MINUTE_IN_MILLIS; - final String expectedTime = "2 min. ago"; + final String expectedTime = "2 minutes ago"; assertThat(StringUtil.formatRelativeTime(mContext, testMillis, true).toString()).isEqualTo( expectedTime); @@ -159,7 +159,7 @@ public class StringUtilTest { @Test public void testFormatRelativeTime_LessThanTwoHours_withSeconds() { final double testMillis = 119 * DateUtils.MINUTE_IN_MILLIS; - final String expectedTime = "119 min. ago"; + final String expectedTime = "119 minutes ago"; assertThat(StringUtil.formatRelativeTime(mContext, testMillis, true).toString()).isEqualTo( expectedTime); @@ -168,7 +168,7 @@ public class StringUtilTest { @Test public void testFormatRelativeTime_TwoHours_withSeconds() { final double testMillis = 2 * DateUtils.HOUR_IN_MILLIS; - final String expectedTime = "2 hr. ago"; + final String expectedTime = "2 hours ago"; assertThat(StringUtil.formatRelativeTime(mContext, testMillis, true).toString()).isEqualTo( expectedTime); @@ -177,7 +177,7 @@ public class StringUtilTest { @Test public void testFormatRelativeTime_LessThanTwoDays_withSeconds() { final double testMillis = 47 * DateUtils.HOUR_IN_MILLIS; - final String expectedTime = "47 hr. ago"; + final String expectedTime = "47 hours ago"; assertThat(StringUtil.formatRelativeTime(mContext, testMillis, true).toString()).isEqualTo( expectedTime); @@ -195,7 +195,7 @@ public class StringUtilTest { @Test public void testFormatRelativeTime_FormatZero_WithSeconds() { final double testMillis = 0; - final String expectedTime = "0 sec. ago"; + final String expectedTime = "Just now"; assertThat(StringUtil.formatRelativeTime(mContext, testMillis, true).toString()).isEqualTo( expectedTime); @@ -204,7 +204,7 @@ public class StringUtilTest { @Test public void testFormatRelativeTime_FormatZero_NoSeconds() { final double testMillis = 0; - final String expectedTime = "0 min. ago"; + final String expectedTime = "0 minutes ago"; assertThat(StringUtil.formatRelativeTime(mContext, testMillis, false).toString()).isEqualTo( expectedTime);