Merge "Indicate min allowed bucket." into tm-dev am: 4a21c60862

Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/17034518

Change-Id: Ibaf91b0f7e54174222f080410e1a1b7377661258
This commit is contained in:
Kweku Adams
2022-03-02 18:05:26 +00:00
committed by Automerger Merge Worker

View File

@@ -111,8 +111,8 @@ public class InactiveApps extends SettingsPreferenceFragment
p.setTitle(app.loadLabel(pm));
p.setIcon(app.loadIcon(pm));
p.setKey(packageName);
p.setEntries(bucketNames);
p.setEntryValues(bucketValues);
p.setEntries(getAllowableBuckets(packageName, bucketNames));
p.setEntryValues(getAllowableBuckets(packageName, bucketValues));
updateSummary(p);
// Don't allow Settings to change its own standby bucket.
if (TextUtils.equals(packageName, settingsPackage)) {
@@ -124,6 +124,25 @@ public class InactiveApps extends SettingsPreferenceFragment
}
}
private CharSequence[] getAllowableBuckets(String packageName, CharSequence[] possibleBuckets) {
final int minBucket = mUsageStats.getAppMinStandbyBucket(packageName);
if (minBucket > STANDBY_BUCKET_RESTRICTED) {
return possibleBuckets;
}
if (minBucket < STANDBY_BUCKET_ACTIVE) {
return new CharSequence[]{};
}
// Use FULL_SETTABLE_BUCKETS_VALUES since we're searching using the int value. The index
// should apply no matter which array we're going to copy from.
final int idx =
Arrays.binarySearch(FULL_SETTABLE_BUCKETS_VALUES, Integer.toString(minBucket));
if (idx < 0) {
// Include everything
return possibleBuckets;
}
return Arrays.copyOfRange(possibleBuckets, 0, idx + 1);
}
static String bucketToName(int bucket) {
switch (bucket) {
case STANDBY_BUCKET_EXEMPTED: return "EXEMPTED";