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

Commit c541a116 authored by Sherry Huang's avatar Sherry Huang Committed by android-build-merger
Browse files

Merge "Only show the thermal shutdown warning when thermal reboot" into qt-r1-dev

am: 553b8bf2

Change-Id: Ic7816de9decde9d86f340362b185716e3c193c84
parents 1f24aac7 553b8bf2
Loading
Loading
Loading
Loading
+20 −5
Original line number Diff line number Diff line
@@ -64,6 +64,8 @@ public class PowerUI extends SystemUI {
    private static final int CHARGE_CYCLE_PERCENT_RESET = 45;
    private static final long SIX_HOURS_MILLIS = Duration.ofHours(6).toMillis();
    public static final int NO_ESTIMATE_AVAILABLE = -1;
    private static final String BOOT_COUNT_KEY = "boot_count";
    private static final String PREFS = "powerui_prefs";

    private final Handler mHandler = new Handler();
    @VisibleForTesting
@@ -118,7 +120,7 @@ public class PowerUI extends SystemUI {

        // Check to see if we need to let the user know that the phone previously shut down due
        // to the temperature being too high.
        showThermalShutdownDialog();
        showWarnOnThermalShutdown();

        // Register an observer to configure mEnableSkinTemperatureWarning and perform the
        // registration of skin thermal event listener upon Settings change.
@@ -542,12 +544,25 @@ public class PowerUI extends SystemUI {
        }
    }

    private void showThermalShutdownDialog() {
    private void showWarnOnThermalShutdown() {
        int bootCount = -1;
        int lastReboot = mContext.getSharedPreferences(PREFS, 0).getInt(BOOT_COUNT_KEY, -1);
        try {
            bootCount = Settings.Global.getInt(mContext.getContentResolver(),
                    Settings.Global.BOOT_COUNT);
        } catch (Settings.SettingNotFoundException e) {
            Slog.e(TAG, "Failed to read system boot count from Settings.Global.BOOT_COUNT");
        }
        // Only show the thermal shutdown warning when there is a thermal reboot.
        if (bootCount > lastReboot) {
            mContext.getSharedPreferences(PREFS, 0).edit().putInt(BOOT_COUNT_KEY,
                    bootCount).apply();
            if (mPowerManager.getLastShutdownReason()
                    == PowerManager.SHUTDOWN_REASON_THERMAL_SHUTDOWN) {
                mWarnings.showThermalShutdownWarning();
            }
        }
    }

    public void dump(FileDescriptor fd, PrintWriter pw, String[] args) {
        pw.print("mLowBatteryAlertCloseLevel=");