[automerge] Update task manager ui information on dialog opening 2p: 6336ca4738

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/17667592

Change-Id: Idd9e33614977ef9a305e292e8c24739269382f58
This commit is contained in:
Evan Severson
2022-04-08 22:50:57 +00:00
committed by Presubmit Automerger Backend

View File

@@ -228,6 +228,10 @@ class FgsManagerController @Inject constructor(
synchronized(lock) {
if (dialog == null) {
runningServiceTokens.keys.forEach {
it.updateUiControl()
}
val dialog = SystemUIDialog(context)
dialog.setTitle(R.string.fgs_manager_dialog_title)
@@ -396,10 +400,20 @@ class FgsManagerController @Inject constructor(
val userId: Int,
val packageName: String
) {
val uiControl: UIControl by lazy {
val uid = packageManager.getPackageUidAsUser(packageName, userId)
val uid by lazy { packageManager.getPackageUidAsUser(packageName, userId) }
when (activityManager.getBackgroundRestrictionExemptionReason(uid)) {
private var uiControlInitialized = false
var uiControl: UIControl = UIControl.NORMAL
get() {
if (!uiControlInitialized) {
updateUiControl()
}
return field
}
private set
fun updateUiControl() {
uiControl = when (activityManager.getBackgroundRestrictionExemptionReason(uid)) {
PowerExemptionManager.REASON_SYSTEM_UID,
PowerExemptionManager.REASON_DEVICE_DEMO_MODE -> UIControl.HIDE_ENTRY
@@ -412,6 +426,7 @@ class FgsManagerController @Inject constructor(
PowerExemptionManager.REASON_SYSTEM_MODULE -> UIControl.HIDE_BUTTON
else -> UIControl.NORMAL
}
uiControlInitialized = true
}
override fun equals(other: Any?): Boolean {