Make class open for inherit
As discussed with Cassie, I'm cherry picking this CL in master to tm-qpr-dev to mitigate a merge conflicts in a CL of mine and also to prevent the two branches from diverging.
Bug: 261483935
Test: Manual
Change-Id: Ia29ad9684e5128c715b6e7948b7edec64d95f575
(cherry picked from commit f944cef613)
Merged-In: Ia29ad9684e5128c715b6e7948b7edec64d95f575
This commit is contained in:
committed by
Johannes Gallmann
parent
7b0b64a527
commit
7d4384eb3f
@@ -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
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user