Merge "port system ui over to new ICU date formatting API."
This commit is contained in:
@@ -26,4 +26,8 @@
|
|||||||
<string name="lock_pattern_view_aspect">square</string>
|
<string name="lock_pattern_view_aspect">square</string>
|
||||||
<!-- @hide DO NOT TRANSLATE. Separator between the hour and minute elements in a TimePicker widget -->
|
<!-- @hide DO NOT TRANSLATE. Separator between the hour and minute elements in a TimePicker widget -->
|
||||||
<string name="time_picker_separator">:</string>
|
<string name="time_picker_separator">:</string>
|
||||||
|
<!-- @hide DO NOT TRANSLATE. ICU pattern for "Mon, 14 January" -->
|
||||||
|
<string name="icu_abbrev_wday_month_day_no_year">eeeMMMMd</string>
|
||||||
|
<!-- @hide DO NOT TRANSLATE. date formatting pattern for system ui.-->
|
||||||
|
<string name="system_ui_date_pattern">@string/icu_abbrev_wday_month_day_no_year</string>
|
||||||
</resources>
|
</resources>
|
||||||
|
|||||||
@@ -1374,6 +1374,7 @@
|
|||||||
<java-symbol type="layout" name="keyguard_transport_control_view" />
|
<java-symbol type="layout" name="keyguard_transport_control_view" />
|
||||||
<java-symbol type="layout" name="keyguard_status_view" />
|
<java-symbol type="layout" name="keyguard_status_view" />
|
||||||
<java-symbol type="string" name="abbrev_wday_month_day_no_year" />
|
<java-symbol type="string" name="abbrev_wday_month_day_no_year" />
|
||||||
|
<java-symbol type="string" name="system_ui_date_pattern" />
|
||||||
<java-symbol type="string" name="android_upgrading_title" />
|
<java-symbol type="string" name="android_upgrading_title" />
|
||||||
<java-symbol type="string" name="bugreport_title" />
|
<java-symbol type="string" name="bugreport_title" />
|
||||||
<java-symbol type="string" name="bugreport_message" />
|
<java-symbol type="string" name="bugreport_message" />
|
||||||
|
|||||||
@@ -18,6 +18,6 @@
|
|||||||
-->
|
-->
|
||||||
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
|
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
|
||||||
<!-- Date format for display: should match the lockscreen in /policy. -->
|
<!-- Date format for display: should match the lockscreen in /policy. -->
|
||||||
<string name="abbrev_wday_month_day_no_year">@*android:string/abbrev_wday_month_day_no_year</string>
|
<string name="system_ui_date_pattern">@*android:string/system_ui_date_pattern</string>
|
||||||
|
|
||||||
</resources>
|
</resources>
|
||||||
|
|||||||
@@ -20,7 +20,6 @@ import android.content.BroadcastReceiver;
|
|||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.content.Intent;
|
import android.content.Intent;
|
||||||
import android.content.IntentFilter;
|
import android.content.IntentFilter;
|
||||||
import android.text.format.DateFormat;
|
|
||||||
import android.util.AttributeSet;
|
import android.util.AttributeSet;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
import android.view.ViewParent;
|
import android.view.ViewParent;
|
||||||
@@ -28,7 +27,11 @@ import android.widget.TextView;
|
|||||||
|
|
||||||
import com.android.systemui.R;
|
import com.android.systemui.R;
|
||||||
|
|
||||||
|
import java.text.SimpleDateFormat;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
|
import java.util.Locale;
|
||||||
|
|
||||||
|
import libcore.icu.ICU;
|
||||||
|
|
||||||
public class DateView extends TextView {
|
public class DateView extends TextView {
|
||||||
private static final String TAG = "DateView";
|
private static final String TAG = "DateView";
|
||||||
@@ -87,8 +90,11 @@ public class DateView extends TextView {
|
|||||||
}
|
}
|
||||||
|
|
||||||
protected void updateClock() {
|
protected void updateClock() {
|
||||||
final String dateFormat = getContext().getString(R.string.abbrev_wday_month_day_no_year);
|
final String dateFormat = getContext().getString(R.string.system_ui_date_pattern);
|
||||||
setText(DateFormat.format(dateFormat, new Date()));
|
final Locale l = Locale.getDefault();
|
||||||
|
String fmt = ICU.getBestDateTimePattern(dateFormat, l.toString());
|
||||||
|
SimpleDateFormat sdf = new SimpleDateFormat(fmt, l);
|
||||||
|
setText(sdf.format(new Date()));
|
||||||
}
|
}
|
||||||
|
|
||||||
private boolean isVisible() {
|
private boolean isVisible() {
|
||||||
|
|||||||
@@ -20,7 +20,6 @@ import android.content.Context;
|
|||||||
import android.content.res.Resources;
|
import android.content.res.Resources;
|
||||||
import android.graphics.Typeface;
|
import android.graphics.Typeface;
|
||||||
import android.text.TextUtils;
|
import android.text.TextUtils;
|
||||||
import android.text.format.DateFormat;
|
|
||||||
import android.util.AttributeSet;
|
import android.util.AttributeSet;
|
||||||
import android.util.Slog;
|
import android.util.Slog;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
@@ -30,7 +29,11 @@ import android.widget.TextView;
|
|||||||
import com.android.internal.R;
|
import com.android.internal.R;
|
||||||
import com.android.internal.widget.LockPatternUtils;
|
import com.android.internal.widget.LockPatternUtils;
|
||||||
|
|
||||||
|
import java.text.SimpleDateFormat;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
|
import java.util.Locale;
|
||||||
|
|
||||||
|
import libcore.icu.ICU;
|
||||||
|
|
||||||
public class KeyguardStatusView extends GridLayout {
|
public class KeyguardStatusView extends GridLayout {
|
||||||
private static final boolean DEBUG = KeyguardViewMediator.DEBUG;
|
private static final boolean DEBUG = KeyguardViewMediator.DEBUG;
|
||||||
@@ -41,7 +44,7 @@ public class KeyguardStatusView extends GridLayout {
|
|||||||
public static final int CHARGING_ICON = 0; //R.drawable.ic_lock_idle_charging;
|
public static final int CHARGING_ICON = 0; //R.drawable.ic_lock_idle_charging;
|
||||||
public static final int BATTERY_LOW_ICON = 0; //R.drawable.ic_lock_idle_low_battery;
|
public static final int BATTERY_LOW_ICON = 0; //R.drawable.ic_lock_idle_low_battery;
|
||||||
|
|
||||||
private CharSequence mDateFormatString;
|
private SimpleDateFormat mDateFormat;
|
||||||
private LockPatternUtils mLockPatternUtils;
|
private LockPatternUtils mLockPatternUtils;
|
||||||
|
|
||||||
private TextView mDateView;
|
private TextView mDateView;
|
||||||
@@ -80,8 +83,11 @@ public class KeyguardStatusView extends GridLayout {
|
|||||||
protected void onFinishInflate() {
|
protected void onFinishInflate() {
|
||||||
super.onFinishInflate();
|
super.onFinishInflate();
|
||||||
Resources res = getContext().getResources();
|
Resources res = getContext().getResources();
|
||||||
mDateFormatString =
|
final Locale locale = Locale.getDefault();
|
||||||
res.getText(com.android.internal.R.string.abbrev_wday_month_day_no_year);
|
final String datePattern =
|
||||||
|
res.getString(com.android.internal.R.string.system_ui_date_pattern);
|
||||||
|
final String bestFormat = ICU.getBestDateTimePattern(datePattern, locale.toString());
|
||||||
|
mDateFormat = new SimpleDateFormat(bestFormat, locale);
|
||||||
mDateView = (TextView) findViewById(R.id.date);
|
mDateView = (TextView) findViewById(R.id.date);
|
||||||
mAlarmStatusView = (TextView) findViewById(R.id.alarm_status);
|
mAlarmStatusView = (TextView) findViewById(R.id.alarm_status);
|
||||||
mClockView = (ClockView) findViewById(R.id.clock_view);
|
mClockView = (ClockView) findViewById(R.id.clock_view);
|
||||||
@@ -121,7 +127,7 @@ public class KeyguardStatusView extends GridLayout {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void refreshDate() {
|
void refreshDate() {
|
||||||
maybeSetUpperCaseText(mDateView, DateFormat.format(mDateFormatString, new Date()));
|
maybeSetUpperCaseText(mDateView, mDateFormat.format(new Date()));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
Reference in New Issue
Block a user