diff --git a/res/values/arrays.xml b/res/values/arrays.xml
index 0e35fed6a11..d5ba3d781ab 100644
--- a/res/values/arrays.xml
+++ b/res/values/arrays.xml
@@ -1517,4 +1517,8 @@
- 2
+
+
+
+
diff --git a/src/com/android/settings/spa/app/specialaccess/DisplayOverOtherApps.kt b/src/com/android/settings/spa/app/specialaccess/DisplayOverOtherApps.kt
index 904f0afd3d6..58695f700eb 100644
--- a/src/com/android/settings/spa/app/specialaccess/DisplayOverOtherApps.kt
+++ b/src/com/android/settings/spa/app/specialaccess/DisplayOverOtherApps.kt
@@ -44,6 +44,16 @@ class DisplayOverOtherAppsListModel(context: Context) : AppOpPermissionListModel
logPermissionChange(newAllowed)
}
+ // TODO(b/349195999)
+ override fun isChangeable(record: AppOpPermissionRecord): Boolean {
+ if (record.app.packageName in
+ context.resources.getStringArray(R.array.display_over_apps_permission_change_exempt)
+ && record.app.isSystemApp()) {
+ return false
+ }
+ return super.isChangeable(record)
+ }
+
private fun logPermissionChange(newAllowed: Boolean) {
val category = when {
newAllowed -> SettingsEnums.APP_SPECIAL_PERMISSION_APPDRAW_ALLOW