Merge "Fix to hide Display over other apps permission setting for the Scone application." into 24D1-dev

This commit is contained in:
David Lin
2024-07-03 00:53:42 +00:00
committed by Android (Google) Code Review
2 changed files with 14 additions and 0 deletions

View File

@@ -1517,4 +1517,8 @@
<item>2</item> <item>2</item>
</string-array> </string-array>
<!-- Packages that will not show Display over other apps permission -->
<string-array name="display_over_apps_permission_change_exempt" translatable="false">
</string-array>
</resources> </resources>

View File

@@ -44,6 +44,16 @@ class DisplayOverOtherAppsListModel(context: Context) : AppOpPermissionListModel
logPermissionChange(newAllowed) 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) { private fun logPermissionChange(newAllowed: Boolean) {
val category = when { val category = when {
newAllowed -> SettingsEnums.APP_SPECIAL_PERMISSION_APPDRAW_ALLOW newAllowed -> SettingsEnums.APP_SPECIAL_PERMISSION_APPDRAW_ALLOW