From f8b405462a7465622d7be81d37568ad8e634566d Mon Sep 17 00:00:00 2001 From: Jay Thomas Sullivan Date: Thu, 21 Mar 2024 20:24:29 -0700 Subject: [PATCH] [ECM] Legacy code: treat DEFAULT as ALLOWED (st) This modifies pre-flag behavior so that MODE_DEFAULT (of OP_ACCESS_RESTRICTED_SETTINGS) is treated the same as MODE_ALLOWED. The reason is that we've change the default op mode (of OP_ACCESS_RESTRICTED_SETTINGS) to MODE_DEFAULT. Since legacy code doesn't understand what MODE_DEFAULT means, we need to mitigate the impact of reverted flags. Bug: 329488185 Test: atest SpaPrivilegedLibTests Test: atest com.android.settings.applications.specialaccess.notificationaccess Test: atest com.android.settings.datausage Test: atest PremiumSmsAccessTest Test: atest RestrictedPreferenceHelperTest Test: atest CtsPermissionUiTestCases:android.permissionui.cts.EnhancedConfirmationManagerTest Change-Id: I957c75870018a9d4d2d2e122ee3bb2252b338cb2 --- .../settings/accessibility/RestrictedPreferenceHelper.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/com/android/settings/accessibility/RestrictedPreferenceHelper.java b/src/com/android/settings/accessibility/RestrictedPreferenceHelper.java index 03bf142f9a2..c806c0bc5a8 100644 --- a/src/com/android/settings/accessibility/RestrictedPreferenceHelper.java +++ b/src/com/android/settings/accessibility/RestrictedPreferenceHelper.java @@ -267,7 +267,8 @@ public class RestrictedPreferenceHelper { preference.getUid(), preference.getPackageName()); final boolean ecmEnabled = mContext.getResources().getBoolean( com.android.internal.R.bool.config_enhancedConfirmationModeEnabled); - appOpsAllowed = !ecmEnabled || mode == AppOpsManager.MODE_ALLOWED; + appOpsAllowed = !ecmEnabled || mode == AppOpsManager.MODE_ALLOWED + || mode == AppOpsManager.MODE_DEFAULT; serviceAllowed = appOpsAllowed; } catch (Exception e) { // Allow service in case if app ops is not available in testing.