Merge "Time for dark theme doesnt format 24 hr correctly" into rvc-d1-dev am: e899f749a1 am: 5f44b7cf54 am: 6430a4b88f

Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/12337522

Change-Id: Iac01c66216d6ab98654b97f33505d9f60714c78e
This commit is contained in:
Lucas Dupin
2020-08-12 22:24:45 +00:00
committed by Automerger Merge Worker

View File

@@ -18,26 +18,29 @@ package com.android.settings.display.darkmode;
import android.content.Context;
import java.time.LocalTime;
import java.time.format.DateTimeFormatter;
import java.util.Locale;
import java.util.Calendar;
import java.util.TimeZone;
/**
* Formats LocalTime to the locale time string format
*/
public class TimeFormatter {
private final Context mContext;
private final DateTimeFormatter mFormatter;
private final java.text.DateFormat mFormatter;
public TimeFormatter(Context context) {
mContext = context;
Locale locale = mContext.getResources().getConfiguration().locale;
if (locale == null) {
locale = Locale.getDefault();
}
mFormatter = DateTimeFormatter.ofPattern("hh:mm a", locale);
mFormatter = android.text.format.DateFormat.getTimeFormat(context);
mFormatter.setTimeZone(TimeZone.getTimeZone("UTC"));
}
public String of(LocalTime time) {
return mFormatter.format(time);
final Calendar c = Calendar.getInstance();
c.setTimeZone(mFormatter.getTimeZone());
c.set(Calendar.HOUR_OF_DAY, time.getHour());
c.set(Calendar.MINUTE, time.getMinute());
c.set(Calendar.SECOND, 0);
c.set(Calendar.MILLISECOND, 0);
return mFormatter.format(c.getTime());
}
public boolean is24HourFormat() {