Revert the time zone display name logic

This cl is a partial revert of ag/1490275, and only
reverts the method getTimeZoneOffsetAndName. Reverting
it because it fails the PTCRB test.

After this revert, it will consistently show the zone
long name in Date & time page (which is the behaviour
in N).

Bug: 62077986
Test: SettingsLibTests
Change-Id: I8174bd7a3de09e476bbffefa6e71d997340dc7d8
This commit is contained in:
jackqdyulei
2017-06-12 13:58:26 -07:00
parent c041c7a34e
commit 476a9ad871
2 changed files with 9 additions and 14 deletions

View File

@@ -88,21 +88,16 @@ public class ZoneGetter {
private static final String XMLTAG_TIMEZONE = "timezone";
public static CharSequence getTimeZoneOffsetAndName(Context context, TimeZone tz, Date now) {
final Locale locale = Locale.getDefault();
final CharSequence gmtText = getGmtOffsetText(context, locale, tz, now);
final TimeZoneNames timeZoneNames = TimeZoneNames.getInstance(locale);
final ZoneGetterData data = new ZoneGetterData(context);
final boolean useExemplarLocationForLocalNames =
shouldUseExemplarLocationForLocalNames(data, timeZoneNames);
final CharSequence zoneName = getTimeZoneDisplayName(data, timeZoneNames,
useExemplarLocationForLocalNames, tz, tz.getID());
if (zoneName == null) {
Locale locale = Locale.getDefault();
CharSequence gmtText = getGmtOffsetText(context, locale, tz, now);
TimeZoneNames timeZoneNames = TimeZoneNames.getInstance(locale);
String zoneNameString = getZoneLongName(timeZoneNames, tz, now);
if (zoneNameString == null) {
return gmtText;
}
// We don't use punctuation here to avoid having to worry about localizing that too!
return TextUtils.concat(gmtText, " ", zoneName);
return TextUtils.concat(gmtText, " ", zoneNameString);
}
public static List<Map<String, Object>> getZonesList(Context context) {

View File

@@ -47,9 +47,9 @@ public class ZoneGetterTest {
}
@Test
public void getTimeZoneOffsetAndName_setLondon_returnLondon() {
// Check it will ends with 'London', not 'British Summer Time' or sth else
testTimeZoneOffsetAndNameInner(TIME_ZONE_LONDON_ID, "London");
public void getTimeZoneOffsetAndName_setLondon_returnBritishSummerTime() {
// Check it will ends with 'British Summer Time', not 'London' or sth else
testTimeZoneOffsetAndNameInner(TIME_ZONE_LONDON_ID, "British Summer Time");
}
@Test