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

Commit d7ccc04b authored by Tiffany Nguyen's avatar Tiffany Nguyen
Browse files

Log the battery saver changed atom on initialization.

In order for the predicate to be read from the beginning, we need to
ensure the value has some initial state after device reboot
and after logging service starts up.

Bug: 175040249

Test: Manual
Change-Id: Id42f655f3fb42ef3e1ea0cf7bc7b2e536417de7d
parent 24681237
Loading
Loading
Loading
Loading
+17 −0
Original line number Diff line number Diff line
@@ -5067,6 +5067,23 @@ public class BatteryStatsImpl extends BatteryStats {
        notePowerSaveModeLocked(enabled, mClocks.elapsedRealtime(), mClocks.uptimeMillis());
    }
    /**
     * Toggles the power save mode state.
     */
    public void notePowerSaveModeLockedInit(boolean enabled, long elapsedRealtimeMs,
            long uptimeMs) {
        if (mPowerSaveModeEnabled != enabled) {
            notePowerSaveModeLocked(enabled, elapsedRealtimeMs, uptimeMs);
        } else {
            // Log an initial value for BATTERY_SAVER_MODE_STATE_CHANGED in order to
            // allow the atom to read all future state changes.
            FrameworkStatsLog.write(FrameworkStatsLog.BATTERY_SAVER_MODE_STATE_CHANGED,
                    enabled
                        ? FrameworkStatsLog.BATTERY_SAVER_MODE_STATE_CHANGED__STATE__ON
                        : FrameworkStatsLog.BATTERY_SAVER_MODE_STATE_CHANGED__STATE__OFF);
        }
    }
    public void notePowerSaveModeLocked(boolean enabled, long elapsedRealtimeMs, long uptimeMs) {
        if (mPowerSaveModeEnabled != enabled) {
            int stepState = enabled ? STEP_LEVEL_MODE_POWER_SAVE : 0;
+1 −1
Original line number Diff line number Diff line
@@ -466,7 +466,7 @@ public final class BatteryStatsService extends IBatteryStats.Stub
        final PowerManagerInternal powerMgr = LocalServices.getService(PowerManagerInternal.class);
        powerMgr.registerLowPowerModeObserver(this);
        synchronized (mStats) {
            mStats.notePowerSaveModeLocked(
            mStats.notePowerSaveModeLockedInit(
                    powerMgr.getLowPowerState(ServiceType.BATTERY_STATS).batterySaverEnabled,
                    SystemClock.elapsedRealtime(), SystemClock.uptimeMillis());
        }