Loading src/com/android/packageinstaller/permission/ui/ManagePermissionsActivity.java +22 −3 Original line number Diff line number Diff line Loading @@ -33,6 +33,7 @@ import com.android.packageinstaller.permission.service.PermissionSearchIndexable import com.android.packageinstaller.permission.ui.handheld.ManageStandardPermissionsFragment; import com.android.packageinstaller.permission.ui.handheld.PermissionUsageFragment; import com.android.packageinstaller.permission.ui.wear.AppPermissionsFragmentWear; import com.android.packageinstaller.permission.utils.Utils; public final class ManagePermissionsActivity extends FragmentActivity { private static final String LOG_TAG = ManagePermissionsActivity.class.getSimpleName(); Loading Loading @@ -65,10 +66,28 @@ public final class ManagePermissionsActivity extends FragmentActivity { case PermissionSearchIndexablesProvider.ACTION_REVIEW_PERMISSION_USAGE: verifyIntent(this, getIntent()); // fall through case Intent.ACTION_REVIEW_PERMISSION_USAGE: case Intent.ACTION_REVIEW_PERMISSION_USAGE: { permissionName = getIntent().getStringExtra(Intent.EXTRA_PERMISSION_NAME); androidXFragment = PermissionUsageFragment.newInstance(permissionName); break; String groupName = getIntent().getStringExtra(Intent.EXTRA_PERMISSION_GROUP_NAME); if (permissionName != null) { String permGroupName = Utils.getGroupOfPlatformPermission(permissionName); if (permGroupName == null) { Log.w(LOG_TAG, "Invalid platform permission: " + permissionName); } if (groupName != null && !groupName.equals(permGroupName)) { Log.i(LOG_TAG, "Inconsistent EXTRA_PERMISSION_NAME / EXTRA_PERMISSION_GROUP_NAME"); finish(); return; } if (groupName == null) { groupName = permGroupName; } } androidXFragment = PermissionUsageFragment.newInstance(groupName); } break; case Intent.ACTION_MANAGE_APP_PERMISSIONS: { String packageName = getIntent().getStringExtra(Intent.EXTRA_PACKAGE_NAME); Loading src/com/android/packageinstaller/permission/ui/handheld/PermissionUsageFragment.java +18 −13 Original line number Diff line number Diff line Loading @@ -125,10 +125,10 @@ public class PermissionUsageFragment extends PermissionsFrameFragment implements private FilterSpinnerAdapter<SortItem> mSortAdapter; /** * Only used to restore group selection state after onCreate. Once the first list of groups * is reported, this becomes invalid. * Only used to restore permission selection state or use the passed permission after onCreate. * Once the first list of groups is reported, this becomes invalid. */ private String mSavedGroup; private String mSavedGroupName; /** * Only used to restore time spinner state after onCreate. Once the list of times is reported, Loading @@ -145,11 +145,11 @@ public class PermissionUsageFragment extends PermissionsFrameFragment implements /** * @return A new fragment */ public static @NonNull PermissionUsageFragment newInstance(@Nullable String permissionName) { public static @NonNull PermissionUsageFragment newInstance(@Nullable String groupName) { PermissionUsageFragment fragment = new PermissionUsageFragment(); Bundle arguments = new Bundle(); if (permissionName != null) { arguments.putString(Intent.EXTRA_PERMISSION_NAME, permissionName); if (groupName != null) { arguments.putString(Intent.EXTRA_PERMISSION_GROUP_NAME, groupName); } fragment.setArguments(arguments); return fragment; Loading @@ -167,7 +167,7 @@ public class PermissionUsageFragment extends PermissionsFrameFragment implements if (savedInstanceState != null) { mShowSystem = savedInstanceState.getBoolean(SHOW_SYSTEM_KEY); mSavedGroup = savedInstanceState.getString(PERMS_INDEX_KEY); mSavedGroupName = savedInstanceState.getString(PERMS_INDEX_KEY); mSavedTimeSpinnerIndex = savedInstanceState.getInt(SPINNER_TIME_INDEX_KEY); mSavedSortSpinnerIndex = savedInstanceState.getInt(SPINNER_SORT_INDEX_KEY); } Loading @@ -179,6 +179,10 @@ public class PermissionUsageFragment extends PermissionsFrameFragment implements ab.setDisplayHomeAsUpEnabled(true); } if (mSavedGroupName == null) { mSavedGroupName = getArguments().getString(Intent.EXTRA_PERMISSION_GROUP_NAME); } Context context = getPreferenceManager().getContext(); mFilterGroup = null; mCollator = Collator.getInstance( Loading Loading @@ -313,12 +317,13 @@ public class PermissionUsageFragment extends PermissionsFrameFragment implements } // Use the saved permission group or the one passed as an argument, if applicable. mFilterGroup = mSavedGroup; if (mFilterGroup == null) { String permName = getArguments().getString(Intent.EXTRA_PERMISSION_NAME); mFilterGroup = Utils.getGroupOfPlatformPermission(permName); if (mFilterGroup == null) { Log.w(LOG_TAG, "Invalid platform permission: " + permName); if (mSavedGroupName != null && mFilterGroup == null) { List<AppPermissionGroup> groups = getOSPermissionGroups(); int numGroups = groups.size(); for (int i = 0; i < numGroups; i++) { if (groups.get(i).getName().equals(mSavedGroupName)) { mFilterGroup = mSavedGroupName; } } } Loading Loading
src/com/android/packageinstaller/permission/ui/ManagePermissionsActivity.java +22 −3 Original line number Diff line number Diff line Loading @@ -33,6 +33,7 @@ import com.android.packageinstaller.permission.service.PermissionSearchIndexable import com.android.packageinstaller.permission.ui.handheld.ManageStandardPermissionsFragment; import com.android.packageinstaller.permission.ui.handheld.PermissionUsageFragment; import com.android.packageinstaller.permission.ui.wear.AppPermissionsFragmentWear; import com.android.packageinstaller.permission.utils.Utils; public final class ManagePermissionsActivity extends FragmentActivity { private static final String LOG_TAG = ManagePermissionsActivity.class.getSimpleName(); Loading Loading @@ -65,10 +66,28 @@ public final class ManagePermissionsActivity extends FragmentActivity { case PermissionSearchIndexablesProvider.ACTION_REVIEW_PERMISSION_USAGE: verifyIntent(this, getIntent()); // fall through case Intent.ACTION_REVIEW_PERMISSION_USAGE: case Intent.ACTION_REVIEW_PERMISSION_USAGE: { permissionName = getIntent().getStringExtra(Intent.EXTRA_PERMISSION_NAME); androidXFragment = PermissionUsageFragment.newInstance(permissionName); break; String groupName = getIntent().getStringExtra(Intent.EXTRA_PERMISSION_GROUP_NAME); if (permissionName != null) { String permGroupName = Utils.getGroupOfPlatformPermission(permissionName); if (permGroupName == null) { Log.w(LOG_TAG, "Invalid platform permission: " + permissionName); } if (groupName != null && !groupName.equals(permGroupName)) { Log.i(LOG_TAG, "Inconsistent EXTRA_PERMISSION_NAME / EXTRA_PERMISSION_GROUP_NAME"); finish(); return; } if (groupName == null) { groupName = permGroupName; } } androidXFragment = PermissionUsageFragment.newInstance(groupName); } break; case Intent.ACTION_MANAGE_APP_PERMISSIONS: { String packageName = getIntent().getStringExtra(Intent.EXTRA_PACKAGE_NAME); Loading
src/com/android/packageinstaller/permission/ui/handheld/PermissionUsageFragment.java +18 −13 Original line number Diff line number Diff line Loading @@ -125,10 +125,10 @@ public class PermissionUsageFragment extends PermissionsFrameFragment implements private FilterSpinnerAdapter<SortItem> mSortAdapter; /** * Only used to restore group selection state after onCreate. Once the first list of groups * is reported, this becomes invalid. * Only used to restore permission selection state or use the passed permission after onCreate. * Once the first list of groups is reported, this becomes invalid. */ private String mSavedGroup; private String mSavedGroupName; /** * Only used to restore time spinner state after onCreate. Once the list of times is reported, Loading @@ -145,11 +145,11 @@ public class PermissionUsageFragment extends PermissionsFrameFragment implements /** * @return A new fragment */ public static @NonNull PermissionUsageFragment newInstance(@Nullable String permissionName) { public static @NonNull PermissionUsageFragment newInstance(@Nullable String groupName) { PermissionUsageFragment fragment = new PermissionUsageFragment(); Bundle arguments = new Bundle(); if (permissionName != null) { arguments.putString(Intent.EXTRA_PERMISSION_NAME, permissionName); if (groupName != null) { arguments.putString(Intent.EXTRA_PERMISSION_GROUP_NAME, groupName); } fragment.setArguments(arguments); return fragment; Loading @@ -167,7 +167,7 @@ public class PermissionUsageFragment extends PermissionsFrameFragment implements if (savedInstanceState != null) { mShowSystem = savedInstanceState.getBoolean(SHOW_SYSTEM_KEY); mSavedGroup = savedInstanceState.getString(PERMS_INDEX_KEY); mSavedGroupName = savedInstanceState.getString(PERMS_INDEX_KEY); mSavedTimeSpinnerIndex = savedInstanceState.getInt(SPINNER_TIME_INDEX_KEY); mSavedSortSpinnerIndex = savedInstanceState.getInt(SPINNER_SORT_INDEX_KEY); } Loading @@ -179,6 +179,10 @@ public class PermissionUsageFragment extends PermissionsFrameFragment implements ab.setDisplayHomeAsUpEnabled(true); } if (mSavedGroupName == null) { mSavedGroupName = getArguments().getString(Intent.EXTRA_PERMISSION_GROUP_NAME); } Context context = getPreferenceManager().getContext(); mFilterGroup = null; mCollator = Collator.getInstance( Loading Loading @@ -313,12 +317,13 @@ public class PermissionUsageFragment extends PermissionsFrameFragment implements } // Use the saved permission group or the one passed as an argument, if applicable. mFilterGroup = mSavedGroup; if (mFilterGroup == null) { String permName = getArguments().getString(Intent.EXTRA_PERMISSION_NAME); mFilterGroup = Utils.getGroupOfPlatformPermission(permName); if (mFilterGroup == null) { Log.w(LOG_TAG, "Invalid platform permission: " + permName); if (mSavedGroupName != null && mFilterGroup == null) { List<AppPermissionGroup> groups = getOSPermissionGroups(); int numGroups = groups.size(); for (int i = 0; i < numGroups; i++) { if (groups.get(i).getName().equals(mSavedGroupName)) { mFilterGroup = mSavedGroupName; } } } Loading