Loading src/com/android/settings/applications/AppStatePowerBridge.java +7 −7 Original line number Diff line number Diff line Loading @@ -21,20 +21,20 @@ import com.android.settingslib.applications.ApplicationsState; import com.android.settingslib.applications.ApplicationsState.AppEntry; import com.android.settingslib.applications.ApplicationsState.AppFilter; import com.android.settingslib.applications.ApplicationsState.CompoundFilter; import com.android.settingslib.fuelgauge.PowerWhitelistBackend; import com.android.settingslib.fuelgauge.PowerAllowlistBackend; import java.util.ArrayList; /** * Connects data from the PowerWhitelistBackend to ApplicationsState. * Connects data from the PowerAllowlistBackend to ApplicationsState. */ public class AppStatePowerBridge extends AppStateBaseBridge { private final PowerWhitelistBackend mBackend; private final PowerAllowlistBackend mBackend; public AppStatePowerBridge(Context context, ApplicationsState appState, Callback callback) { super(appState, callback); mBackend = PowerWhitelistBackend.getInstance(context); mBackend = PowerAllowlistBackend.getInstance(context); } @Override Loading @@ -43,17 +43,17 @@ public class AppStatePowerBridge extends AppStateBaseBridge { final int N = apps.size(); for (int i = 0; i < N; i++) { AppEntry app = apps.get(i); app.extraInfo = mBackend.isWhitelisted(app.info.packageName) app.extraInfo = mBackend.isAllowlisted(app.info.packageName) ? Boolean.TRUE : Boolean.FALSE; } } @Override protected void updateExtraInfo(AppEntry app, String pkg, int uid) { app.extraInfo = mBackend.isWhitelisted(pkg) ? Boolean.TRUE : Boolean.FALSE; app.extraInfo = mBackend.isAllowlisted(pkg) ? Boolean.TRUE : Boolean.FALSE; } public static final AppFilter FILTER_POWER_WHITELISTED = new CompoundFilter( public static final AppFilter FILTER_POWER_ALLOWLISTED = new CompoundFilter( ApplicationsState.FILTER_WITHOUT_DISABLED_UNTIL_USED, new AppFilter() { @Override public void init() { Loading src/com/android/settings/applications/manageapplications/AppFilterRegistry.java +11 −11 Original line number Diff line number Diff line Loading @@ -35,8 +35,8 @@ import com.android.settingslib.applications.ApplicationsState; public class AppFilterRegistry { @IntDef(value = { FILTER_APPS_POWER_WHITELIST, FILTER_APPS_POWER_WHITELIST_ALL, FILTER_APPS_POWER_ALLOWLIST, FILTER_APPS_POWER_ALLOWLIST_ALL, FILTER_APPS_ALL, FILTER_APPS_ENABLED, FILTER_APPS_INSTANT, Loading @@ -56,8 +56,8 @@ public class AppFilterRegistry { // Filter options used for displayed list of applications // Filters will appear sorted based on their value defined here. public static final int FILTER_APPS_POWER_WHITELIST = 0; public static final int FILTER_APPS_POWER_WHITELIST_ALL = 1; public static final int FILTER_APPS_POWER_ALLOWLIST = 0; public static final int FILTER_APPS_POWER_ALLOWLIST_ALL = 1; public static final int FILTER_APPS_RECENT = 2; public static final int FILTER_APPS_FREQUENT = 3; public static final int FILTER_APPS_ALL = 4; Loading @@ -82,20 +82,20 @@ public class AppFilterRegistry { private AppFilterRegistry() { mFilters = new AppFilterItem[18]; // High power whitelist, on mFilters[FILTER_APPS_POWER_WHITELIST] = new AppFilterItem( // High power allowlist, on mFilters[FILTER_APPS_POWER_ALLOWLIST] = new AppFilterItem( new ApplicationsState.CompoundFilter( AppStatePowerBridge.FILTER_POWER_WHITELISTED, AppStatePowerBridge.FILTER_POWER_ALLOWLISTED, ApplicationsState.FILTER_ALL_ENABLED), FILTER_APPS_POWER_WHITELIST, FILTER_APPS_POWER_ALLOWLIST, R.string.high_power_filter_on); // Without disabled until used mFilters[FILTER_APPS_POWER_WHITELIST_ALL] = new AppFilterItem( mFilters[FILTER_APPS_POWER_ALLOWLIST_ALL] = new AppFilterItem( new ApplicationsState.CompoundFilter( ApplicationsState.FILTER_WITHOUT_DISABLED_UNTIL_USED, ApplicationsState.FILTER_ALL_ENABLED), FILTER_APPS_POWER_WHITELIST_ALL, FILTER_APPS_POWER_ALLOWLIST_ALL, R.string.filter_all_apps); // All apps Loading Loading @@ -200,7 +200,7 @@ public class AppFilterRegistry { case ManageApplications.LIST_TYPE_USAGE_ACCESS: return FILTER_APPS_USAGE_ACCESS; case ManageApplications.LIST_TYPE_HIGH_POWER: return FILTER_APPS_POWER_WHITELIST; return FILTER_APPS_POWER_ALLOWLIST; case ManageApplications.LIST_TYPE_OVERLAY: return FILTER_APPS_WITH_OVERLAY; case ManageApplications.LIST_TYPE_WRITE_SETTINGS: Loading src/com/android/settings/applications/manageapplications/ManageApplications.java +9 −9 Original line number Diff line number Diff line Loading @@ -25,8 +25,8 @@ import static com.android.settings.applications.manageapplications.AppFilterRegi import static com.android.settings.applications.manageapplications.AppFilterRegistry.FILTER_APPS_FREQUENT; import static com.android.settings.applications.manageapplications.AppFilterRegistry.FILTER_APPS_INSTANT; import static com.android.settings.applications.manageapplications.AppFilterRegistry.FILTER_APPS_PERSONAL; import static com.android.settings.applications.manageapplications.AppFilterRegistry.FILTER_APPS_POWER_WHITELIST; import static com.android.settings.applications.manageapplications.AppFilterRegistry.FILTER_APPS_POWER_WHITELIST_ALL; import static com.android.settings.applications.manageapplications.AppFilterRegistry.FILTER_APPS_POWER_ALLOWLIST; import static com.android.settings.applications.manageapplications.AppFilterRegistry.FILTER_APPS_POWER_ALLOWLIST_ALL; import static com.android.settings.applications.manageapplications.AppFilterRegistry.FILTER_APPS_RECENT; import static com.android.settings.applications.manageapplications.AppFilterRegistry.FILTER_APPS_WORK; import static com.android.settings.search.actionbar.SearchMenuController.MENU_SEARCH; Loading Loading @@ -125,7 +125,7 @@ import com.android.settingslib.applications.ApplicationsState.AppFilter; import com.android.settingslib.applications.ApplicationsState.CompoundFilter; import com.android.settingslib.applications.ApplicationsState.VolumeFilter; import com.android.settingslib.applications.StorageStatsSource; import com.android.settingslib.fuelgauge.PowerWhitelistBackend; import com.android.settingslib.fuelgauge.PowerAllowlistBackend; import com.android.settingslib.utils.ThreadUtils; import com.android.settingslib.widget.settingsspinner.SettingsSpinnerAdapter; Loading Loading @@ -479,7 +479,7 @@ public class ManageApplications extends InstrumentedFragment mFilterAdapter.enableFilter(FILTER_APPS_ALL); } if (mListType == LIST_TYPE_HIGH_POWER) { mFilterAdapter.enableFilter(FILTER_APPS_POWER_WHITELIST_ALL); mFilterAdapter.enableFilter(FILTER_APPS_POWER_ALLOWLIST_ALL); } setCompositeFilter(); Loading Loading @@ -1011,7 +1011,7 @@ public class ManageApplications extends InstrumentedFragment private boolean mHasReceivedBridgeCallback; private FileViewHolderController mExtraViewController; private SearchFilter mSearchFilter; private PowerWhitelistBackend mBackend; private PowerAllowlistBackend mBackend; // This is to remember and restore the last scroll position when this // fragment is paused. We need this special handling because app entries are added gradually Loading @@ -1036,7 +1036,7 @@ public class ManageApplications extends InstrumentedFragment mContext = manageApplications.getActivity(); mIconDrawableFactory = IconDrawableFactory.newInstance(mContext); mAppFilter = appFilter; mBackend = PowerWhitelistBackend.getInstance(mContext); mBackend = PowerAllowlistBackend.getInstance(mContext); if (mManageApplications.mListType == LIST_TYPE_NOTIFICATION) { mExtraInfoBridge = new AppStateNotificationBridge(mContext, mState, this, manageApplications.mUsageStatsManager, Loading Loading @@ -1292,8 +1292,8 @@ public class ManageApplications extends InstrumentedFragment Log.d(TAG, "onRebuildComplete size=" + entries.size()); } final int filterType = mAppFilter.getFilterType(); if (filterType == FILTER_APPS_POWER_WHITELIST || filterType == FILTER_APPS_POWER_WHITELIST_ALL) { if (filterType == FILTER_APPS_POWER_ALLOWLIST || filterType == FILTER_APPS_POWER_ALLOWLIST_ALL) { entries = removeDuplicateIgnoringUser(entries); } mEntries = entries; Loading Loading @@ -1451,7 +1451,7 @@ public class ManageApplications extends InstrumentedFragment } ApplicationsState.AppEntry entry = mEntries.get(position); return !mBackend.isSysWhitelisted(entry.info.packageName) return !mBackend.isSysAllowlisted(entry.info.packageName) && !mBackend.isDefaultActiveApp(entry.info.packageName); } Loading src/com/android/settings/fuelgauge/BackgroundActivityPreferenceController.java +8 −8 Original line number Diff line number Diff line Loading @@ -33,7 +33,7 @@ import com.android.settings.fuelgauge.batterytip.tips.RestrictAppTip; import com.android.settings.fuelgauge.batterytip.tips.UnrestrictAppTip; import com.android.settingslib.RestrictedPreference; import com.android.settingslib.core.AbstractPreferenceController; import com.android.settingslib.fuelgauge.PowerWhitelistBackend; import com.android.settingslib.fuelgauge.PowerAllowlistBackend; /** * Controller to control whether an app can run in the background Loading @@ -54,18 +54,18 @@ public class BackgroundActivityPreferenceController extends AbstractPreferenceCo BatteryUtils mBatteryUtils; private InstrumentedPreferenceFragment mFragment; private String mTargetPackage; private PowerWhitelistBackend mPowerWhitelistBackend; private PowerAllowlistBackend mPowerAllowlistBackend; public BackgroundActivityPreferenceController(Context context, InstrumentedPreferenceFragment fragment, int uid, String packageName) { this(context, fragment, uid, packageName, PowerWhitelistBackend.getInstance(context)); this(context, fragment, uid, packageName, PowerAllowlistBackend.getInstance(context)); } @VisibleForTesting BackgroundActivityPreferenceController(Context context, InstrumentedPreferenceFragment fragment, int uid, String packageName, PowerWhitelistBackend backend) { int uid, String packageName, PowerAllowlistBackend backend) { super(context); mPowerWhitelistBackend = backend; mPowerAllowlistBackend = backend; mUserManager = (UserManager) context.getSystemService(Context.USER_SERVICE); mDpm = (DevicePolicyManager) context.getSystemService(Context.DEVICE_POLICY_SERVICE); mAppOpsManager = (AppOpsManager) context.getSystemService(Context.APP_OPS_SERVICE); Loading @@ -84,8 +84,8 @@ public class BackgroundActivityPreferenceController extends AbstractPreferenceCo } final int mode = mAppOpsManager .checkOpNoThrow(AppOpsManager.OP_RUN_ANY_IN_BACKGROUND, mUid, mTargetPackage); final boolean whitelisted = mPowerWhitelistBackend.isWhitelisted(mTargetPackage); if (whitelisted || mode == AppOpsManager.MODE_ERRORED final boolean allowlisted = mPowerAllowlistBackend.isAllowlisted(mTargetPackage); if (allowlisted || mode == AppOpsManager.MODE_ERRORED || Utils.isProfileOrDeviceOwner(mUserManager, mDpm, mTargetPackage)) { preference.setEnabled(false); } else { Loading Loading @@ -117,7 +117,7 @@ public class BackgroundActivityPreferenceController extends AbstractPreferenceCo } public void updateSummary(Preference preference) { if (mPowerWhitelistBackend.isWhitelisted(mTargetPackage)) { if (mPowerAllowlistBackend.isAllowlisted(mTargetPackage)) { preference.setSummary(R.string.background_activity_summary_whitelisted); return; } Loading src/com/android/settings/fuelgauge/BatteryOptimizationPreferenceController.java +6 −6 Original line number Diff line number Diff line Loading @@ -27,7 +27,7 @@ import com.android.settings.core.PreferenceControllerMixin; import com.android.settings.core.SubSettingLauncher; import com.android.settings.dashboard.DashboardFragment; import com.android.settingslib.core.AbstractPreferenceController; import com.android.settingslib.fuelgauge.PowerWhitelistBackend; import com.android.settingslib.fuelgauge.PowerAllowlistBackend; /** * Controller that jumps to high power optimization fragment Loading @@ -38,7 +38,7 @@ public class BatteryOptimizationPreferenceController extends AbstractPreferenceC private static final String KEY_BACKGROUND_ACTIVITY = "battery_optimization"; private PowerWhitelistBackend mBackend; private PowerAllowlistBackend mBackend; private DashboardFragment mFragment; private SettingsActivity mSettingsActivity; private String mPackageName; Loading @@ -49,12 +49,12 @@ public class BatteryOptimizationPreferenceController extends AbstractPreferenceC mFragment = fragment; mSettingsActivity = settingsActivity; mPackageName = packageName; mBackend = PowerWhitelistBackend.getInstance(mSettingsActivity); mBackend = PowerAllowlistBackend.getInstance(mSettingsActivity); } @VisibleForTesting BatteryOptimizationPreferenceController(SettingsActivity settingsActivity, DashboardFragment fragment, String packageName, PowerWhitelistBackend backend) { DashboardFragment fragment, String packageName, PowerAllowlistBackend backend) { super(settingsActivity); mFragment = fragment; mSettingsActivity = settingsActivity; Loading @@ -69,8 +69,8 @@ public class BatteryOptimizationPreferenceController extends AbstractPreferenceC @Override public void updateState(Preference preference) { final boolean isWhitelisted = mBackend.isWhitelisted(mPackageName); preference.setSummary(isWhitelisted ? R.string.high_power_on : R.string.high_power_off); final boolean isAllowlisted = mBackend.isAllowlisted(mPackageName); preference.setSummary(isAllowlisted ? R.string.high_power_on : R.string.high_power_off); } @Override Loading Loading
src/com/android/settings/applications/AppStatePowerBridge.java +7 −7 Original line number Diff line number Diff line Loading @@ -21,20 +21,20 @@ import com.android.settingslib.applications.ApplicationsState; import com.android.settingslib.applications.ApplicationsState.AppEntry; import com.android.settingslib.applications.ApplicationsState.AppFilter; import com.android.settingslib.applications.ApplicationsState.CompoundFilter; import com.android.settingslib.fuelgauge.PowerWhitelistBackend; import com.android.settingslib.fuelgauge.PowerAllowlistBackend; import java.util.ArrayList; /** * Connects data from the PowerWhitelistBackend to ApplicationsState. * Connects data from the PowerAllowlistBackend to ApplicationsState. */ public class AppStatePowerBridge extends AppStateBaseBridge { private final PowerWhitelistBackend mBackend; private final PowerAllowlistBackend mBackend; public AppStatePowerBridge(Context context, ApplicationsState appState, Callback callback) { super(appState, callback); mBackend = PowerWhitelistBackend.getInstance(context); mBackend = PowerAllowlistBackend.getInstance(context); } @Override Loading @@ -43,17 +43,17 @@ public class AppStatePowerBridge extends AppStateBaseBridge { final int N = apps.size(); for (int i = 0; i < N; i++) { AppEntry app = apps.get(i); app.extraInfo = mBackend.isWhitelisted(app.info.packageName) app.extraInfo = mBackend.isAllowlisted(app.info.packageName) ? Boolean.TRUE : Boolean.FALSE; } } @Override protected void updateExtraInfo(AppEntry app, String pkg, int uid) { app.extraInfo = mBackend.isWhitelisted(pkg) ? Boolean.TRUE : Boolean.FALSE; app.extraInfo = mBackend.isAllowlisted(pkg) ? Boolean.TRUE : Boolean.FALSE; } public static final AppFilter FILTER_POWER_WHITELISTED = new CompoundFilter( public static final AppFilter FILTER_POWER_ALLOWLISTED = new CompoundFilter( ApplicationsState.FILTER_WITHOUT_DISABLED_UNTIL_USED, new AppFilter() { @Override public void init() { Loading
src/com/android/settings/applications/manageapplications/AppFilterRegistry.java +11 −11 Original line number Diff line number Diff line Loading @@ -35,8 +35,8 @@ import com.android.settingslib.applications.ApplicationsState; public class AppFilterRegistry { @IntDef(value = { FILTER_APPS_POWER_WHITELIST, FILTER_APPS_POWER_WHITELIST_ALL, FILTER_APPS_POWER_ALLOWLIST, FILTER_APPS_POWER_ALLOWLIST_ALL, FILTER_APPS_ALL, FILTER_APPS_ENABLED, FILTER_APPS_INSTANT, Loading @@ -56,8 +56,8 @@ public class AppFilterRegistry { // Filter options used for displayed list of applications // Filters will appear sorted based on their value defined here. public static final int FILTER_APPS_POWER_WHITELIST = 0; public static final int FILTER_APPS_POWER_WHITELIST_ALL = 1; public static final int FILTER_APPS_POWER_ALLOWLIST = 0; public static final int FILTER_APPS_POWER_ALLOWLIST_ALL = 1; public static final int FILTER_APPS_RECENT = 2; public static final int FILTER_APPS_FREQUENT = 3; public static final int FILTER_APPS_ALL = 4; Loading @@ -82,20 +82,20 @@ public class AppFilterRegistry { private AppFilterRegistry() { mFilters = new AppFilterItem[18]; // High power whitelist, on mFilters[FILTER_APPS_POWER_WHITELIST] = new AppFilterItem( // High power allowlist, on mFilters[FILTER_APPS_POWER_ALLOWLIST] = new AppFilterItem( new ApplicationsState.CompoundFilter( AppStatePowerBridge.FILTER_POWER_WHITELISTED, AppStatePowerBridge.FILTER_POWER_ALLOWLISTED, ApplicationsState.FILTER_ALL_ENABLED), FILTER_APPS_POWER_WHITELIST, FILTER_APPS_POWER_ALLOWLIST, R.string.high_power_filter_on); // Without disabled until used mFilters[FILTER_APPS_POWER_WHITELIST_ALL] = new AppFilterItem( mFilters[FILTER_APPS_POWER_ALLOWLIST_ALL] = new AppFilterItem( new ApplicationsState.CompoundFilter( ApplicationsState.FILTER_WITHOUT_DISABLED_UNTIL_USED, ApplicationsState.FILTER_ALL_ENABLED), FILTER_APPS_POWER_WHITELIST_ALL, FILTER_APPS_POWER_ALLOWLIST_ALL, R.string.filter_all_apps); // All apps Loading Loading @@ -200,7 +200,7 @@ public class AppFilterRegistry { case ManageApplications.LIST_TYPE_USAGE_ACCESS: return FILTER_APPS_USAGE_ACCESS; case ManageApplications.LIST_TYPE_HIGH_POWER: return FILTER_APPS_POWER_WHITELIST; return FILTER_APPS_POWER_ALLOWLIST; case ManageApplications.LIST_TYPE_OVERLAY: return FILTER_APPS_WITH_OVERLAY; case ManageApplications.LIST_TYPE_WRITE_SETTINGS: Loading
src/com/android/settings/applications/manageapplications/ManageApplications.java +9 −9 Original line number Diff line number Diff line Loading @@ -25,8 +25,8 @@ import static com.android.settings.applications.manageapplications.AppFilterRegi import static com.android.settings.applications.manageapplications.AppFilterRegistry.FILTER_APPS_FREQUENT; import static com.android.settings.applications.manageapplications.AppFilterRegistry.FILTER_APPS_INSTANT; import static com.android.settings.applications.manageapplications.AppFilterRegistry.FILTER_APPS_PERSONAL; import static com.android.settings.applications.manageapplications.AppFilterRegistry.FILTER_APPS_POWER_WHITELIST; import static com.android.settings.applications.manageapplications.AppFilterRegistry.FILTER_APPS_POWER_WHITELIST_ALL; import static com.android.settings.applications.manageapplications.AppFilterRegistry.FILTER_APPS_POWER_ALLOWLIST; import static com.android.settings.applications.manageapplications.AppFilterRegistry.FILTER_APPS_POWER_ALLOWLIST_ALL; import static com.android.settings.applications.manageapplications.AppFilterRegistry.FILTER_APPS_RECENT; import static com.android.settings.applications.manageapplications.AppFilterRegistry.FILTER_APPS_WORK; import static com.android.settings.search.actionbar.SearchMenuController.MENU_SEARCH; Loading Loading @@ -125,7 +125,7 @@ import com.android.settingslib.applications.ApplicationsState.AppFilter; import com.android.settingslib.applications.ApplicationsState.CompoundFilter; import com.android.settingslib.applications.ApplicationsState.VolumeFilter; import com.android.settingslib.applications.StorageStatsSource; import com.android.settingslib.fuelgauge.PowerWhitelistBackend; import com.android.settingslib.fuelgauge.PowerAllowlistBackend; import com.android.settingslib.utils.ThreadUtils; import com.android.settingslib.widget.settingsspinner.SettingsSpinnerAdapter; Loading Loading @@ -479,7 +479,7 @@ public class ManageApplications extends InstrumentedFragment mFilterAdapter.enableFilter(FILTER_APPS_ALL); } if (mListType == LIST_TYPE_HIGH_POWER) { mFilterAdapter.enableFilter(FILTER_APPS_POWER_WHITELIST_ALL); mFilterAdapter.enableFilter(FILTER_APPS_POWER_ALLOWLIST_ALL); } setCompositeFilter(); Loading Loading @@ -1011,7 +1011,7 @@ public class ManageApplications extends InstrumentedFragment private boolean mHasReceivedBridgeCallback; private FileViewHolderController mExtraViewController; private SearchFilter mSearchFilter; private PowerWhitelistBackend mBackend; private PowerAllowlistBackend mBackend; // This is to remember and restore the last scroll position when this // fragment is paused. We need this special handling because app entries are added gradually Loading @@ -1036,7 +1036,7 @@ public class ManageApplications extends InstrumentedFragment mContext = manageApplications.getActivity(); mIconDrawableFactory = IconDrawableFactory.newInstance(mContext); mAppFilter = appFilter; mBackend = PowerWhitelistBackend.getInstance(mContext); mBackend = PowerAllowlistBackend.getInstance(mContext); if (mManageApplications.mListType == LIST_TYPE_NOTIFICATION) { mExtraInfoBridge = new AppStateNotificationBridge(mContext, mState, this, manageApplications.mUsageStatsManager, Loading Loading @@ -1292,8 +1292,8 @@ public class ManageApplications extends InstrumentedFragment Log.d(TAG, "onRebuildComplete size=" + entries.size()); } final int filterType = mAppFilter.getFilterType(); if (filterType == FILTER_APPS_POWER_WHITELIST || filterType == FILTER_APPS_POWER_WHITELIST_ALL) { if (filterType == FILTER_APPS_POWER_ALLOWLIST || filterType == FILTER_APPS_POWER_ALLOWLIST_ALL) { entries = removeDuplicateIgnoringUser(entries); } mEntries = entries; Loading Loading @@ -1451,7 +1451,7 @@ public class ManageApplications extends InstrumentedFragment } ApplicationsState.AppEntry entry = mEntries.get(position); return !mBackend.isSysWhitelisted(entry.info.packageName) return !mBackend.isSysAllowlisted(entry.info.packageName) && !mBackend.isDefaultActiveApp(entry.info.packageName); } Loading
src/com/android/settings/fuelgauge/BackgroundActivityPreferenceController.java +8 −8 Original line number Diff line number Diff line Loading @@ -33,7 +33,7 @@ import com.android.settings.fuelgauge.batterytip.tips.RestrictAppTip; import com.android.settings.fuelgauge.batterytip.tips.UnrestrictAppTip; import com.android.settingslib.RestrictedPreference; import com.android.settingslib.core.AbstractPreferenceController; import com.android.settingslib.fuelgauge.PowerWhitelistBackend; import com.android.settingslib.fuelgauge.PowerAllowlistBackend; /** * Controller to control whether an app can run in the background Loading @@ -54,18 +54,18 @@ public class BackgroundActivityPreferenceController extends AbstractPreferenceCo BatteryUtils mBatteryUtils; private InstrumentedPreferenceFragment mFragment; private String mTargetPackage; private PowerWhitelistBackend mPowerWhitelistBackend; private PowerAllowlistBackend mPowerAllowlistBackend; public BackgroundActivityPreferenceController(Context context, InstrumentedPreferenceFragment fragment, int uid, String packageName) { this(context, fragment, uid, packageName, PowerWhitelistBackend.getInstance(context)); this(context, fragment, uid, packageName, PowerAllowlistBackend.getInstance(context)); } @VisibleForTesting BackgroundActivityPreferenceController(Context context, InstrumentedPreferenceFragment fragment, int uid, String packageName, PowerWhitelistBackend backend) { int uid, String packageName, PowerAllowlistBackend backend) { super(context); mPowerWhitelistBackend = backend; mPowerAllowlistBackend = backend; mUserManager = (UserManager) context.getSystemService(Context.USER_SERVICE); mDpm = (DevicePolicyManager) context.getSystemService(Context.DEVICE_POLICY_SERVICE); mAppOpsManager = (AppOpsManager) context.getSystemService(Context.APP_OPS_SERVICE); Loading @@ -84,8 +84,8 @@ public class BackgroundActivityPreferenceController extends AbstractPreferenceCo } final int mode = mAppOpsManager .checkOpNoThrow(AppOpsManager.OP_RUN_ANY_IN_BACKGROUND, mUid, mTargetPackage); final boolean whitelisted = mPowerWhitelistBackend.isWhitelisted(mTargetPackage); if (whitelisted || mode == AppOpsManager.MODE_ERRORED final boolean allowlisted = mPowerAllowlistBackend.isAllowlisted(mTargetPackage); if (allowlisted || mode == AppOpsManager.MODE_ERRORED || Utils.isProfileOrDeviceOwner(mUserManager, mDpm, mTargetPackage)) { preference.setEnabled(false); } else { Loading Loading @@ -117,7 +117,7 @@ public class BackgroundActivityPreferenceController extends AbstractPreferenceCo } public void updateSummary(Preference preference) { if (mPowerWhitelistBackend.isWhitelisted(mTargetPackage)) { if (mPowerAllowlistBackend.isAllowlisted(mTargetPackage)) { preference.setSummary(R.string.background_activity_summary_whitelisted); return; } Loading
src/com/android/settings/fuelgauge/BatteryOptimizationPreferenceController.java +6 −6 Original line number Diff line number Diff line Loading @@ -27,7 +27,7 @@ import com.android.settings.core.PreferenceControllerMixin; import com.android.settings.core.SubSettingLauncher; import com.android.settings.dashboard.DashboardFragment; import com.android.settingslib.core.AbstractPreferenceController; import com.android.settingslib.fuelgauge.PowerWhitelistBackend; import com.android.settingslib.fuelgauge.PowerAllowlistBackend; /** * Controller that jumps to high power optimization fragment Loading @@ -38,7 +38,7 @@ public class BatteryOptimizationPreferenceController extends AbstractPreferenceC private static final String KEY_BACKGROUND_ACTIVITY = "battery_optimization"; private PowerWhitelistBackend mBackend; private PowerAllowlistBackend mBackend; private DashboardFragment mFragment; private SettingsActivity mSettingsActivity; private String mPackageName; Loading @@ -49,12 +49,12 @@ public class BatteryOptimizationPreferenceController extends AbstractPreferenceC mFragment = fragment; mSettingsActivity = settingsActivity; mPackageName = packageName; mBackend = PowerWhitelistBackend.getInstance(mSettingsActivity); mBackend = PowerAllowlistBackend.getInstance(mSettingsActivity); } @VisibleForTesting BatteryOptimizationPreferenceController(SettingsActivity settingsActivity, DashboardFragment fragment, String packageName, PowerWhitelistBackend backend) { DashboardFragment fragment, String packageName, PowerAllowlistBackend backend) { super(settingsActivity); mFragment = fragment; mSettingsActivity = settingsActivity; Loading @@ -69,8 +69,8 @@ public class BatteryOptimizationPreferenceController extends AbstractPreferenceC @Override public void updateState(Preference preference) { final boolean isWhitelisted = mBackend.isWhitelisted(mPackageName); preference.setSummary(isWhitelisted ? R.string.high_power_on : R.string.high_power_off); final boolean isAllowlisted = mBackend.isAllowlisted(mPackageName); preference.setSummary(isAllowlisted ? R.string.high_power_on : R.string.high_power_off); } @Override Loading