Use refactored RecentAppOpsAccess

Use the new class in place of the old one.

Bug: 182202223
Test: atest RecentLocationAccessPreferenceControllerTest
Change-Id: If0222e79bf8ba2ebe2b1b0a8c043ce39f5a45596
This commit is contained in:
Jordan Jozwiak
2021-08-12 14:01:47 -07:00
parent 23f97347a3
commit e6835713b6
3 changed files with 19 additions and 35 deletions

View File

@@ -29,7 +29,7 @@ import androidx.preference.PreferenceScreen;
import com.android.settings.R;
import com.android.settings.dashboard.DashboardFragment;
import com.android.settings.dashboard.profileselector.ProfileSelectFragment;
import com.android.settingslib.location.RecentLocationAccesses;
import com.android.settingslib.applications.RecentAppOpsAccess;
import com.android.settingslib.utils.StringUtil;
import com.android.settingslib.widget.AppPreference;
@@ -42,7 +42,7 @@ import java.util.List;
public class RecentLocationAccessPreferenceController extends LocationBasePreferenceController {
public static final int MAX_APPS = 3;
@VisibleForTesting
RecentLocationAccesses mRecentLocationApps;
RecentAppOpsAccess mRecentLocationApps;
private PreferenceCategory mCategoryRecentLocationRequests;
private int mType = ProfileSelectFragment.ProfileType.ALL;
@@ -71,12 +71,12 @@ public class RecentLocationAccessPreferenceController extends LocationBasePrefer
}
public RecentLocationAccessPreferenceController(Context context, String key) {
this(context, key, new RecentLocationAccesses(context));
this(context, key, RecentAppOpsAccess.createForLocation(context));
}
@VisibleForTesting
public RecentLocationAccessPreferenceController(Context context, String key,
RecentLocationAccesses recentLocationApps) {
RecentAppOpsAccess recentLocationApps) {
super(context, key);
mRecentLocationApps = recentLocationApps;
}
@@ -86,9 +86,9 @@ public class RecentLocationAccessPreferenceController extends LocationBasePrefer
super.displayPreference(screen);
mCategoryRecentLocationRequests = screen.findPreference(getPreferenceKey());
final Context prefContext = mCategoryRecentLocationRequests.getContext();
final List<RecentLocationAccesses.Access> recentLocationAccesses = new ArrayList<>();
final List<RecentAppOpsAccess.Access> recentLocationAccesses = new ArrayList<>();
final UserManager userManager = UserManager.get(mContext);
for (RecentLocationAccesses.Access access : mRecentLocationApps.getAppListSorted(
for (RecentAppOpsAccess.Access access : mRecentLocationApps.getAppListSorted(
/* showSystemApps= */ false)) {
if (isRequestMatchesProfileType(userManager, access, mType)) {
recentLocationAccesses.add(access);
@@ -100,7 +100,7 @@ public class RecentLocationAccessPreferenceController extends LocationBasePrefer
if (recentLocationAccesses.size() > 0) {
// Add preferences to container in original order (already sorted by recency).
for (RecentLocationAccesses.Access access : recentLocationAccesses) {
for (RecentAppOpsAccess.Access access : recentLocationAccesses) {
mCategoryRecentLocationRequests.addPreference(
createAppPreference(prefContext, access, mFragment));
}
@@ -132,7 +132,7 @@ public class RecentLocationAccessPreferenceController extends LocationBasePrefer
* Create a {@link AppPreference}
*/
public static AppPreference createAppPreference(Context prefContext,
RecentLocationAccesses.Access access, DashboardFragment fragment) {
RecentAppOpsAccess.Access access, DashboardFragment fragment) {
final AppPreference pref = new AppPreference(prefContext);
pref.setIcon(access.icon);
pref.setTitle(access.label);
@@ -145,11 +145,11 @@ public class RecentLocationAccessPreferenceController extends LocationBasePrefer
}
/**
* Return if the {@link RecentLocationAccesses.Access} matches current UI
* {@ProfileSelectFragment.ProfileType}
* Return if the {@link RecentAppOpsAccess.Access} matches current UI
* {@link ProfileSelectFragment.ProfileType}
*/
public static boolean isRequestMatchesProfileType(UserManager userManager,
RecentLocationAccesses.Access access, @ProfileSelectFragment.ProfileType int type) {
RecentAppOpsAccess.Access access, @ProfileSelectFragment.ProfileType int type) {
final boolean isWorkProfile = userManager.isManagedProfile(
access.userHandle.getIdentifier());