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

Commit 874b35b8 authored by Adrian Roos's avatar Adrian Roos
Browse files

Round charging indication to nearest minute

Bug: 18177374
Change-Id: I4eb7fcac83398a4d8432bf092d8d91506646b5a1
parent 09035486
Loading
Loading
Loading
Loading
+21 −0
Original line number Diff line number Diff line
@@ -110,6 +110,7 @@ public final class Formatter {
    private static final int SECONDS_PER_MINUTE = 60;
    private static final int SECONDS_PER_HOUR = 60 * 60;
    private static final int SECONDS_PER_DAY = 24 * 60 * 60;
    private static final int MILLIS_PER_MINUTE = 1000 * 60;

    /**
     * Returns elapsed time for the given millis, in the following format:
@@ -171,4 +172,24 @@ public final class Formatter {
            return context.getString(com.android.internal.R.string.durationSeconds, seconds);
        }
    }

    /**
     * Returns elapsed time for the given millis, in the following format:
     * 1 day 5 hrs; will include at most two units, can go down to minutes precision.
     * @param context the application context
     * @param millis the elapsed time in milli seconds
     * @return the formatted elapsed time
     * @hide
     */
    public static String formatShortElapsedTimeRoundingUpToMinutes(Context context, long millis) {
        long minutesRoundedUp = (millis + MILLIS_PER_MINUTE - 1) / MILLIS_PER_MINUTE;

        if (minutesRoundedUp == 0) {
            return context.getString(com.android.internal.R.string.durationMinutes, 0);
        } else if (minutesRoundedUp == 1) {
            return context.getString(com.android.internal.R.string.durationMinute, 1);
        }

        return formatShortElapsedTime(context, minutesRoundedUp * MILLIS_PER_MINUTE);
    }
}
+3 −0
Original line number Diff line number Diff line
@@ -61,6 +61,9 @@
    <!-- [CHAR_LIMIT=10] Suffix added to signify duration in minutes -->
    <string name="durationMinutes"><xliff:g id="minutes">%1$d</xliff:g> mins</string>

    <!-- [CHAR_LIMIT=10] Suffix added to signify duration of one minute -->
    <string name="durationMinute"><xliff:g id="minutes">%1$d</xliff:g> min</string>

    <!-- [CHAR_LIMIT=10] Suffix added to signify duration of one minute with seconds -->
    <string name="durationMinuteSeconds"><xliff:g id="minutes">%1$d</xliff:g> min
            <xliff:g id="seconds">%2$d</xliff:g> secs</string>
+1 −0
Original line number Diff line number Diff line
@@ -574,6 +574,7 @@
  <java-symbol type="string" name="durationHourMinutes" />
  <java-symbol type="string" name="durationHourMinute" />
  <java-symbol type="string" name="durationMinutes" />
  <java-symbol type="string" name="durationMinute" />
  <java-symbol type="string" name="durationMinuteSeconds" />
  <java-symbol type="string" name="durationMinuteSecond" />
  <java-symbol type="string" name="durationSeconds" />
+2 −2
Original line number Diff line number Diff line
@@ -146,8 +146,8 @@ public class KeyguardIndicationController {
        try {
            long chargingTimeRemaining = mBatteryInfo.computeChargeTimeRemaining();
            if (chargingTimeRemaining > 0) {
                String chargingTimeFormatted =
                        Formatter.formatShortElapsedTime(mContext, chargingTimeRemaining);
                String chargingTimeFormatted = Formatter.formatShortElapsedTimeRoundingUpToMinutes(
                        mContext, chargingTimeRemaining);
                return mContext.getResources().getString(
                        R.string.keyguard_indication_charging_time, chargingTimeFormatted);
            }