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

Commit d4c3da1b authored by Taran Singh's avatar Taran Singh Committed by Android (Google) Code Review
Browse files

Revert "Ensure SystemUI gets restarted lazily."

This reverts commit e0d2a511.

Reason for revert: LockscreenShiftSecurity#testSecurityShiftsWhenTappingOnTheOtherSide test is broken
Bug: 259595527

Change-Id: I16bca337d77a9fa88a2d90881d7b6a34fca33b08
parent e0d2a511
Loading
Loading
Loading
Loading
+5 −3
Original line number Diff line number Diff line
@@ -86,7 +86,7 @@ public class FeatureFlagsDebug implements FeatureFlags {
            new ServerFlagReader.ChangeListener() {
                @Override
                public void onChange() {
                    mRestarter.restartSystemUI();
                    mRestarter.restart();
                }
            };

@@ -326,7 +326,9 @@ public class FeatureFlagsDebug implements FeatureFlags {
            Log.i(TAG, "SystemUI Restart Suppressed");
            return;
        }
        mRestarter.restartSystemUI();
        Log.i(TAG, "Restarting SystemUI");
        // SysUI starts back when up exited. Is there a better way to do this?
        System.exit(0);
    }

    private void restartAndroid(boolean requestSuppress) {
@@ -334,7 +336,7 @@ public class FeatureFlagsDebug implements FeatureFlags {
            Log.i(TAG, "Android Restart Suppressed");
            return;
        }
        mRestarter.restartAndroid();
        mRestarter.restart();
    }

    void setBooleanFlagInternal(Flag<?> flag, boolean value) {
+3 −19
Original line number Diff line number Diff line
@@ -28,8 +28,6 @@ constructor(
    private val systemExitRestarter: SystemExitRestarter,
) : Restarter {

    private var androidRestartRequested = false

    val observer =
        object : WakefulnessLifecycle.Observer {
            override fun onFinishedGoingToSleep() {
@@ -38,18 +36,8 @@ constructor(
            }
        }

    override fun restartSystemUI() {
        Log.d(FeatureFlagsDebug.TAG, "SystemUI Restart requested. Restarting on next screen off.")
        scheduleRestart()
    }

    override fun restartAndroid() {
        Log.d(FeatureFlagsDebug.TAG, "Android Restart requested. Restarting on next screen off.")
        androidRestartRequested = true
        scheduleRestart()
    }

    fun scheduleRestart() {
    override fun restart() {
        Log.d(FeatureFlagsDebug.TAG, "Restart requested. Restarting on next screen off.")
        if (wakefulnessLifecycle.wakefulness == WakefulnessLifecycle.WAKEFULNESS_ASLEEP) {
            restartNow()
        } else {
@@ -58,10 +46,6 @@ constructor(
    }

    private fun restartNow() {
        if (androidRestartRequested) {
            systemExitRestarter.restartAndroid()
        } else {
            systemExitRestarter.restartSystemUI()
        }
        systemExitRestarter.restart()
    }
}
+1 −1
Original line number Diff line number Diff line
@@ -61,7 +61,7 @@ public class FeatureFlagsRelease implements FeatureFlags {
            new ServerFlagReader.ChangeListener() {
                @Override
                public void onChange() {
                    mRestarter.restartSystemUI();
                    mRestarter.restart();
                }
            };

+13 −30
Original line number Diff line number Diff line
@@ -34,48 +34,35 @@ constructor(
    @Background private val bgExecutor: DelayableExecutor,
    private val systemExitRestarter: SystemExitRestarter
) : Restarter {
    var listenersAdded = false
    var shouldRestart = false
    var pendingRestart: Runnable? = null
    var androidRestartRequested = false

    val observer =
        object : WakefulnessLifecycle.Observer {
            override fun onFinishedGoingToSleep() {
                scheduleRestart()
                maybeScheduleRestart()
            }
        }

    val batteryCallback =
        object : BatteryController.BatteryStateChangeCallback {
            override fun onBatteryLevelChanged(level: Int, pluggedIn: Boolean, charging: Boolean) {
                scheduleRestart()
                maybeScheduleRestart()
            }
        }

    override fun restartSystemUI() {
        Log.d(
            FeatureFlagsDebug.TAG,
            "SystemUI Restart requested. Restarting when plugged in and idle."
        )
        scheduleRestart()
    }

    override fun restartAndroid() {
        Log.d(
            FeatureFlagsDebug.TAG,
            "Android Restart requested. Restarting when plugged in and idle."
        )
        androidRestartRequested = true
        scheduleRestart()
    }

    private fun scheduleRestart() {
        // Don't bother adding listeners twice.
        if (!listenersAdded) {
            listenersAdded = true
    override fun restart() {
        Log.d(FeatureFlagsDebug.TAG, "Restart requested. Restarting when plugged in and idle.")
        if (!shouldRestart) {
            // Don't bother scheduling twice.
            shouldRestart = true
            wakefulnessLifecycle.addObserver(observer)
            batteryController.addCallback(batteryCallback)
            maybeScheduleRestart()
        }
    }

    private fun maybeScheduleRestart() {
        if (
            wakefulnessLifecycle.wakefulness == WAKEFULNESS_ASLEEP && batteryController.isPluggedIn
        ) {
@@ -90,10 +77,6 @@ constructor(

    private fun restartNow() {
        Log.d(FeatureFlagsRelease.TAG, "Restarting due to systemui flag change")
        if (androidRestartRequested) {
            systemExitRestarter.restartAndroid()
        } else {
            systemExitRestarter.restartSystemUI()
        }
        systemExitRestarter.restart()
    }
}
+2 −4
Original line number Diff line number Diff line
@@ -16,7 +16,5 @@
package com.android.systemui.flags

interface Restarter {
    fun restartSystemUI()

    fun restartAndroid()
    fun restart()
}
 No newline at end of file
Loading