Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 59f733ac authored by Chris Wren's avatar Chris Wren Committed by Android (Google) Code Review
Browse files

Merge "port system ui over to new ICU date formatting API."

parents 2f8b097e 56018e57
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -26,4 +26,8 @@
    <string name="lock_pattern_view_aspect">square</string>
    <!-- @hide DO NOT TRANSLATE. Separator between the hour and minute elements in a TimePicker widget -->
    <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>
+1 −0
Original line number Diff line number Diff line
@@ -1374,6 +1374,7 @@
  <java-symbol type="layout" name="keyguard_transport_control_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="system_ui_date_pattern" />
  <java-symbol type="string" name="android_upgrading_title" />
  <java-symbol type="string" name="bugreport_title" />
  <java-symbol type="string" name="bugreport_message" />
+1 −1
Original line number Diff line number Diff line
@@ -18,6 +18,6 @@
-->
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
    <!-- 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>
+9 −3
Original line number Diff line number Diff line
@@ -20,7 +20,6 @@ import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.text.format.DateFormat;
import android.util.AttributeSet;
import android.view.View;
import android.view.ViewParent;
@@ -28,7 +27,11 @@ import android.widget.TextView;

import com.android.systemui.R;

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;

import libcore.icu.ICU;

public class DateView extends TextView {
    private static final String TAG = "DateView";
@@ -87,8 +90,11 @@ public class DateView extends TextView {
    }

    protected void updateClock() {
        final String dateFormat = getContext().getString(R.string.abbrev_wday_month_day_no_year);
        setText(DateFormat.format(dateFormat, new Date()));
        final String dateFormat = getContext().getString(R.string.system_ui_date_pattern);
        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() {
+11 −5
Original line number Diff line number Diff line
@@ -20,7 +20,6 @@ import android.content.Context;
import android.content.res.Resources;
import android.graphics.Typeface;
import android.text.TextUtils;
import android.text.format.DateFormat;
import android.util.AttributeSet;
import android.util.Slog;
import android.view.View;
@@ -30,7 +29,11 @@ import android.widget.TextView;
import com.android.internal.R;
import com.android.internal.widget.LockPatternUtils;

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;

import libcore.icu.ICU;

public class KeyguardStatusView extends GridLayout {
    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 BATTERY_LOW_ICON = 0; //R.drawable.ic_lock_idle_low_battery;

    private CharSequence mDateFormatString;
    private SimpleDateFormat mDateFormat;
    private LockPatternUtils mLockPatternUtils;

    private TextView mDateView;
@@ -80,8 +83,11 @@ public class KeyguardStatusView extends GridLayout {
    protected void onFinishInflate() {
        super.onFinishInflate();
        Resources res = getContext().getResources();
        mDateFormatString =
                res.getText(com.android.internal.R.string.abbrev_wday_month_day_no_year);
        final Locale locale = Locale.getDefault();
        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);
        mAlarmStatusView = (TextView) findViewById(R.id.alarm_status);
        mClockView = (ClockView) findViewById(R.id.clock_view);
@@ -121,7 +127,7 @@ public class KeyguardStatusView extends GridLayout {
    }

    void refreshDate() {
        maybeSetUpperCaseText(mDateView, DateFormat.format(mDateFormatString, new Date()));
        maybeSetUpperCaseText(mDateView, mDateFormat.format(new Date()));
    }

    @Override