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

Commit 67f41602 authored by Johannes Gallmann's avatar Johannes Gallmann Committed by Automerger Merge Worker
Browse files

Merge "Make class open for inherit" into tm-qpr-dev am: 468352a8

parents 266e39c1 468352a8
Loading
Loading
Loading
Loading
+9 −5
Original line number Diff line number Diff line
@@ -54,7 +54,7 @@ import javax.inject.Inject
 * their respective views based on the progress of the animator. Interpolation differences TBD
 */
@SysUISingleton
class SystemStatusAnimationScheduler @Inject constructor(
open class SystemStatusAnimationScheduler @Inject constructor(
    private val coordinator: SystemEventCoordinator,
    private val chipAnimationController: SystemEventChipAnimationController,
    private val statusBarWindowController: StatusBarWindowController,
@@ -66,7 +66,7 @@ class SystemStatusAnimationScheduler @Inject constructor(
    companion object {
        private const val PROPERTY_ENABLE_IMMERSIVE_INDICATOR = "enable_immersive_indicator"
    }
    private fun isImmersiveIndicatorEnabled(): Boolean {
    public fun isImmersiveIndicatorEnabled(): Boolean {
        return DeviceConfig.getBoolean(DeviceConfig.NAMESPACE_PRIVACY,
                PROPERTY_ENABLE_IMMERSIVE_INDICATOR, true)
    }
@@ -76,18 +76,22 @@ class SystemStatusAnimationScheduler @Inject constructor(

    /** True if the persistent privacy dot should be active */
    var hasPersistentDot = false
        private set
        protected set

    private var scheduledEvent: StatusEvent? = null
    private var cancelExecutionRunnable: Runnable? = null
    private val listeners = mutableSetOf<SystemStatusAnimationCallback>()

    fun getListeners(): MutableSet<SystemStatusAnimationCallback> {
        return listeners
    }

    init {
        coordinator.attachScheduler(this)
        dumpManager.registerDumpable(TAG, this)
    }

    fun onStatusEvent(event: StatusEvent) {
    open fun onStatusEvent(event: StatusEvent) {
        // Ignore any updates until the system is up and running
        if (isTooEarly() || !isImmersiveIndicatorEnabled()) {
            return
@@ -139,7 +143,7 @@ class SystemStatusAnimationScheduler @Inject constructor(
        }
    }

    private fun isTooEarly(): Boolean {
    public fun isTooEarly(): Boolean {
        return systemClock.uptimeMillis() - Process.getStartUptimeMillis() < MIN_UPTIME
    }