Fix bugs in auto restriction.

1. Dismiss this tip once user clicks it and goes to detail page.
2. In auto restriction, since apps are automatically restricted,
we need to remove apps in list that unrestricted by user.
3. Refactor the code to remove the unnecessary parameter(i.e.
SettingsActivity)

Bug: 78187414
Test: RunSettingsRoboTests
Change-Id: I1c950f7c55df35795641c2ea8579ce9e011dba28
This commit is contained in:
Lei Yu
2018-04-17 17:41:07 -07:00
parent 1257466d0b
commit 252d4e1fc0
14 changed files with 234 additions and 51 deletions

View File

@@ -43,7 +43,6 @@ public class RestrictAppPreferenceController extends BasePreferenceController {
@VisibleForTesting
List<AppInfo> mAppInfos;
private AppOpsManager mAppOpsManager;
private SettingsActivity mSettingsActivity;
private InstrumentedPreferenceFragment mPreferenceFragment;
private UserManager mUserManager;
@@ -53,10 +52,8 @@ public class RestrictAppPreferenceController extends BasePreferenceController {
mUserManager = context.getSystemService(UserManager.class);
}
public RestrictAppPreferenceController(SettingsActivity settingsActivity,
InstrumentedPreferenceFragment preferenceFragment) {
this(settingsActivity.getApplicationContext());
mSettingsActivity = settingsActivity;
public RestrictAppPreferenceController(InstrumentedPreferenceFragment preferenceFragment) {
this(preferenceFragment.getContext());
mPreferenceFragment = preferenceFragment;
}
@@ -83,7 +80,7 @@ public class RestrictAppPreferenceController extends BasePreferenceController {
public boolean handlePreferenceTreeClick(Preference preference) {
if (getPreferenceKey().equals(preference.getKey())) {
// start fragment
RestrictedAppDetails.startRestrictedAppDetails(mSettingsActivity, mPreferenceFragment,
RestrictedAppDetails.startRestrictedAppDetails(mPreferenceFragment,
mAppInfos);
return true;
}