Loading src/com/android/permissioncontroller/permission/ui/handheld/AllAppPermissionsFragment.java +13 −0 Original line number Diff line number Diff line Loading @@ -40,6 +40,8 @@ import com.android.permissioncontroller.R; import com.android.permissioncontroller.permission.data.PackagePermissionsLiveData; import com.android.permissioncontroller.permission.model.AppPermissionGroup; import com.android.permissioncontroller.permission.model.Permission; import com.android.permissioncontroller.permission.ui.model.AllAppPermissionsViewModel; import com.android.permissioncontroller.permission.ui.model.AllAppPermissionsViewModelFactory; import com.android.permissioncontroller.permission.utils.ArrayUtils; import com.android.permissioncontroller.permission.utils.KotlinUtils; import com.android.permissioncontroller.permission.utils.Utils; Loading Loading @@ -94,6 +96,17 @@ public final class AllAppPermissionsFragment extends SettingsWithLargeHeader { return arguments; } /** * Create a bundle with the arguments needed by this fragment * * @param packageName The name of the package * @param userHandle The user of this package * @return A bundle with all of the args placed */ public static Bundle createArgs(@NonNull String packageName, @NonNull UserHandle userHandle) { return createArgs(packageName, null, userHandle); } @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Loading src/com/android/permissioncontroller/permission/ui/handheld/AppPermissionFragment.java +28 −15 Original line number Diff line number Diff line Loading @@ -60,9 +60,11 @@ import androidx.lifecycle.ViewModelProvider; import com.android.permissioncontroller.R; import com.android.permissioncontroller.permission.ui.AppPermissionActivity; import com.android.permissioncontroller.permission.ui.GrantPermissionsViewHandler; import com.android.permissioncontroller.permission.ui.handheld.AppPermissionViewModel.ButtonState; import com.android.permissioncontroller.permission.ui.handheld.AppPermissionViewModel.ButtonType; import com.android.permissioncontroller.permission.ui.handheld.AppPermissionViewModel.ChangeRequest; import com.android.permissioncontroller.permission.ui.model.AppPermissionViewModel; import com.android.permissioncontroller.permission.ui.model.AppPermissionViewModel.ButtonState; import com.android.permissioncontroller.permission.ui.model.AppPermissionViewModel.ButtonType; import com.android.permissioncontroller.permission.ui.model.AppPermissionViewModel.ChangeRequest; import com.android.permissioncontroller.permission.ui.model.AppPermissionViewModelFactory; import com.android.permissioncontroller.permission.utils.KotlinUtils; import com.android.settingslib.RestrictedLockUtils; import com.android.settingslib.RestrictedLockUtils.EnforcedAdmin; Loading @@ -77,7 +79,8 @@ import kotlin.Pair; * * <p>Allows the user to control whether the app is granted the permission. */ public class AppPermissionFragment extends SettingsWithLargeHeader { public class AppPermissionFragment extends SettingsWithLargeHeader implements AppPermissionViewModel.DefaultDenyShowingFragment { private static final String LOG_TAG = "AppPermissionFragment"; private static final long POST_DELAY_MS = 20; Loading @@ -99,6 +102,7 @@ public class AppPermissionFragment extends SettingsWithLargeHeader { private @NonNull String mPermGroupName; private @NonNull UserHandle mUser; private boolean mIsInitialLoad; private long mSessionId; private @NonNull String mPackageLabel; private @NonNull String mPermGroupLabel; Loading Loading @@ -171,10 +175,10 @@ public class AppPermissionFragment extends SettingsWithLargeHeader { mPermGroupName).toString(); mPackageIcon = KotlinUtils.INSTANCE.getBadgedPackageIcon(getActivity().getApplication(), mPackageName, mUser); long sessionId = getArguments().getLong(EXTRA_SESSION_ID, INVALID_SESSION_ID); mSessionId = getArguments().getLong(EXTRA_SESSION_ID, INVALID_SESSION_ID); AppPermissionViewModelFactory factory = new AppPermissionViewModelFactory( getActivity().getApplication(), mPackageName, mPermGroupName, mUser, sessionId); getActivity().getApplication(), mPackageName, mPermGroupName, mUser, mSessionId); mViewModel = new ViewModelProvider(this, factory).get(AppPermissionViewModel.class); boolean[] firstRun = new boolean[] { true }; Loading Loading @@ -257,7 +261,14 @@ public class AppPermissionFragment extends SettingsWithLargeHeader { view.setVisibility(View.GONE); } else { view.setOnClickListener((v) -> { mViewModel.showBottomLinkPage(this, action); Bundle args; if (action.equals(Intent.ACTION_MANAGE_APP_PERMISSIONS)) { args = AppPermissionGroupsFragment.createArgs(mPackageName, mUser, mSessionId, true); } else { args = PermissionAppsFragment.createArgs(mPermGroupName, mSessionId); } mViewModel.showBottomLinkPage(this, action, args); }); } } Loading Loading @@ -292,33 +303,33 @@ public class AppPermissionFragment extends SettingsWithLargeHeader { } mAllowButton.setOnClickListener((v) -> { mViewModel.requestChange(false, this, ChangeRequest.GRANT_FOREGROUND, mViewModel.requestChange(false, this, this, ChangeRequest.GRANT_FOREGROUND, APP_PERMISSION_FRAGMENT_ACTION_REPORTED__BUTTON_PRESSED__ALLOW); setResult(GRANTED_ALWAYS); }); mAllowAlwaysButton.setOnClickListener((v) -> { mViewModel.requestChange(false, this, ChangeRequest.GRANT_BOTH, mViewModel.requestChange(false, this, this, ChangeRequest.GRANT_BOTH, APP_PERMISSION_FRAGMENT_ACTION_REPORTED__BUTTON_PRESSED__ALLOW_ALWAYS); setResult(GRANTED_ALWAYS); }); mAllowForegroundButton.setOnClickListener((v) -> { mViewModel.requestChange(false, this, ChangeRequest.GRANT_FOREGROUND_ONLY, mViewModel.requestChange(false, this, this, ChangeRequest.GRANT_FOREGROUND_ONLY, APP_PERMISSION_FRAGMENT_ACTION_REPORTED__BUTTON_PRESSED__ALLOW_FOREGROUND); setResult(GRANTED_FOREGROUND_ONLY); }); // mAskOneTimeButton only shows if checked hence should do nothing mAskButton.setOnClickListener((v) -> { mViewModel.requestChange(true, this, ChangeRequest.REVOKE_BOTH, mViewModel.requestChange(true, this, this, ChangeRequest.REVOKE_BOTH, APP_PERMISSION_FRAGMENT_ACTION_REPORTED__BUTTON_PRESSED__ASK_EVERY_TIME); setResult(DENIED); }); mDenyButton.setOnClickListener((v) -> { mViewModel.requestChange(false, this, ChangeRequest.REVOKE_BOTH, mViewModel.requestChange(false, this, this, ChangeRequest.REVOKE_BOTH, APP_PERMISSION_FRAGMENT_ACTION_REPORTED__BUTTON_PRESSED__DENY); setResult(DENIED_DO_NOT_ASK_AGAIN); }); mDenyForegroundButton.setOnClickListener((v) -> { mViewModel.requestChange(false, this, ChangeRequest.REVOKE_FOREGROUND, mViewModel.requestChange(false, this, this, ChangeRequest.REVOKE_FOREGROUND, APP_PERMISSION_FRAGMENT_ACTION_REPORTED__BUTTON_PRESSED__DENY_FOREGROUND); setResult(DENIED_DO_NOT_ASK_AGAIN); }); Loading Loading @@ -368,7 +379,8 @@ public class AppPermissionFragment extends SettingsWithLargeHeader { // lets you control them. mDivider.setVisibility(View.VISIBLE); showRightIcon(R.drawable.ic_settings); mWidgetFrame.setOnClickListener(v -> mViewModel.showAllPermissions(this)); Bundle args = AllAppPermissionsFragment.createArgs(mPackageName, mPermGroupName, mUser); mWidgetFrame.setOnClickListener(v -> mViewModel.showAllPermissions(this, args)); mPermissionDetails.setText(getPreferenceManager().getContext().getString( detailResIds.getFirst(), detailResIds.getSecond())); } else { Loading Loading @@ -420,7 +432,8 @@ public class AppPermissionFragment extends SettingsWithLargeHeader { * @param buttonPressed Button which was pressed to initiate the dialog, one of * AppPermissionFragmentActionReported.button_pressed constants */ void showDefaultDenyDialog(ChangeRequest changeRequest, @StringRes int messageId, @Override public void showDefaultDenyDialog(ChangeRequest changeRequest, @StringRes int messageId, int buttonPressed) { Bundle args = getArguments().deepCopy(); args.putInt(DefaultDenyDialog.MSG, messageId); Loading src/com/android/permissioncontroller/permission/ui/handheld/AppPermissionGroupsFragment.java +6 −2 Original line number Diff line number Diff line Loading @@ -51,6 +51,8 @@ import androidx.preference.PreferenceCategory; import com.android.permissioncontroller.PermissionControllerStatsLog; import com.android.permissioncontroller.R; import com.android.permissioncontroller.permission.ui.Category; import com.android.permissioncontroller.permission.ui.model.AppPermissionGroupsViewModel; import com.android.permissioncontroller.permission.ui.model.AppPermissionGroupsViewModelFactory; import com.android.permissioncontroller.permission.utils.KotlinUtils; import com.android.permissioncontroller.permission.utils.Utils; import com.android.settingslib.HelpUtils; Loading Loading @@ -166,7 +168,8 @@ public final class AppPermissionGroupsFragment extends SettingsWithLargeHeader { } case MENU_ALL_PERMS: { mViewModel.showAllPermissions(this); mViewModel.showAllPermissions(this, AllAppPermissionsFragment.createArgs( mPackageName, mUser)); return true; } } Loading Loading @@ -298,7 +301,8 @@ public final class AppPermissionGroupsFragment extends SettingsWithLargeHeader { extraPerms.setTitle(R.string.additional_permissions); extraPerms.setKey(extraPerms.getTitle() + category); extraPerms.setOnPreferenceClickListener(preference -> { mViewModel.showExtraPerms(this, getArguments().getLong(EXTRA_SESSION_ID)); mViewModel.showExtraPerms(this, AppPermissionGroupsFragment.createArgs( mPackageName, mUser, getArguments().getLong(EXTRA_SESSION_ID), false)); return true; }); extraPerms.setSummary(getResources().getQuantityString( Loading src/com/android/permissioncontroller/permission/ui/handheld/ManageCustomPermissionsFragment.java +5 −2 Original line number Diff line number Diff line Loading @@ -23,6 +23,9 @@ import android.view.MenuItem; import androidx.lifecycle.ViewModelProvider; import com.android.permissioncontroller.permission.ui.model.ManageCustomPermissionsViewModel; import com.android.permissioncontroller.permission.ui.model.ManageCustomPermissionsViewModelFactory; import java.util.HashMap; /** Loading Loading @@ -75,8 +78,8 @@ public class ManageCustomPermissionsFragment extends ManagePermissionsFragment { @Override public void showPermissionApps(String permissionGroupName) { mViewModel.showPermissionApps(this, permissionGroupName, getArguments().getLong(EXTRA_SESSION_ID)); mViewModel.showPermissionApps(this, PermissionAppsFragment.createArgs( permissionGroupName, getArguments().getLong(EXTRA_SESSION_ID))); } @Override Loading src/com/android/permissioncontroller/permission/ui/handheld/ManageStandardPermissionsFragment.java +6 −3 Original line number Diff line number Diff line Loading @@ -26,6 +26,8 @@ import androidx.preference.Preference; import androidx.preference.PreferenceScreen; import com.android.permissioncontroller.R; import com.android.permissioncontroller.permission.ui.model.ManageStandardPermissionsViewModel; import com.android.permissioncontroller.permission.ui.model.ManageStandardPermissionsViewModelFactory; import com.android.permissioncontroller.permission.utils.Utils; Loading Loading @@ -127,7 +129,8 @@ public final class ManageStandardPermissionsFragment extends ManagePermissionsFr additionalPermissionsPreference.setTitle(R.string.additional_permissions); additionalPermissionsPreference.setOnPreferenceClickListener(preference -> { mViewModel.showCustomPermissions(this, getArguments().getLong(EXTRA_SESSION_ID)); ManageCustomPermissionsFragment.createArgs( getArguments().getLong(EXTRA_SESSION_ID))); return true; }); Loading @@ -143,7 +146,7 @@ public final class ManageStandardPermissionsFragment extends ManagePermissionsFr @Override public void showPermissionApps(String permissionGroupName) { mViewModel.showPermissionApps(this, permissionGroupName, getArguments().getLong(EXTRA_SESSION_ID)); mViewModel.showPermissionApps(this, PermissionAppsFragment.createArgs( permissionGroupName, getArguments().getLong(EXTRA_SESSION_ID))); } } Loading
src/com/android/permissioncontroller/permission/ui/handheld/AllAppPermissionsFragment.java +13 −0 Original line number Diff line number Diff line Loading @@ -40,6 +40,8 @@ import com.android.permissioncontroller.R; import com.android.permissioncontroller.permission.data.PackagePermissionsLiveData; import com.android.permissioncontroller.permission.model.AppPermissionGroup; import com.android.permissioncontroller.permission.model.Permission; import com.android.permissioncontroller.permission.ui.model.AllAppPermissionsViewModel; import com.android.permissioncontroller.permission.ui.model.AllAppPermissionsViewModelFactory; import com.android.permissioncontroller.permission.utils.ArrayUtils; import com.android.permissioncontroller.permission.utils.KotlinUtils; import com.android.permissioncontroller.permission.utils.Utils; Loading Loading @@ -94,6 +96,17 @@ public final class AllAppPermissionsFragment extends SettingsWithLargeHeader { return arguments; } /** * Create a bundle with the arguments needed by this fragment * * @param packageName The name of the package * @param userHandle The user of this package * @return A bundle with all of the args placed */ public static Bundle createArgs(@NonNull String packageName, @NonNull UserHandle userHandle) { return createArgs(packageName, null, userHandle); } @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Loading
src/com/android/permissioncontroller/permission/ui/handheld/AppPermissionFragment.java +28 −15 Original line number Diff line number Diff line Loading @@ -60,9 +60,11 @@ import androidx.lifecycle.ViewModelProvider; import com.android.permissioncontroller.R; import com.android.permissioncontroller.permission.ui.AppPermissionActivity; import com.android.permissioncontroller.permission.ui.GrantPermissionsViewHandler; import com.android.permissioncontroller.permission.ui.handheld.AppPermissionViewModel.ButtonState; import com.android.permissioncontroller.permission.ui.handheld.AppPermissionViewModel.ButtonType; import com.android.permissioncontroller.permission.ui.handheld.AppPermissionViewModel.ChangeRequest; import com.android.permissioncontroller.permission.ui.model.AppPermissionViewModel; import com.android.permissioncontroller.permission.ui.model.AppPermissionViewModel.ButtonState; import com.android.permissioncontroller.permission.ui.model.AppPermissionViewModel.ButtonType; import com.android.permissioncontroller.permission.ui.model.AppPermissionViewModel.ChangeRequest; import com.android.permissioncontroller.permission.ui.model.AppPermissionViewModelFactory; import com.android.permissioncontroller.permission.utils.KotlinUtils; import com.android.settingslib.RestrictedLockUtils; import com.android.settingslib.RestrictedLockUtils.EnforcedAdmin; Loading @@ -77,7 +79,8 @@ import kotlin.Pair; * * <p>Allows the user to control whether the app is granted the permission. */ public class AppPermissionFragment extends SettingsWithLargeHeader { public class AppPermissionFragment extends SettingsWithLargeHeader implements AppPermissionViewModel.DefaultDenyShowingFragment { private static final String LOG_TAG = "AppPermissionFragment"; private static final long POST_DELAY_MS = 20; Loading @@ -99,6 +102,7 @@ public class AppPermissionFragment extends SettingsWithLargeHeader { private @NonNull String mPermGroupName; private @NonNull UserHandle mUser; private boolean mIsInitialLoad; private long mSessionId; private @NonNull String mPackageLabel; private @NonNull String mPermGroupLabel; Loading Loading @@ -171,10 +175,10 @@ public class AppPermissionFragment extends SettingsWithLargeHeader { mPermGroupName).toString(); mPackageIcon = KotlinUtils.INSTANCE.getBadgedPackageIcon(getActivity().getApplication(), mPackageName, mUser); long sessionId = getArguments().getLong(EXTRA_SESSION_ID, INVALID_SESSION_ID); mSessionId = getArguments().getLong(EXTRA_SESSION_ID, INVALID_SESSION_ID); AppPermissionViewModelFactory factory = new AppPermissionViewModelFactory( getActivity().getApplication(), mPackageName, mPermGroupName, mUser, sessionId); getActivity().getApplication(), mPackageName, mPermGroupName, mUser, mSessionId); mViewModel = new ViewModelProvider(this, factory).get(AppPermissionViewModel.class); boolean[] firstRun = new boolean[] { true }; Loading Loading @@ -257,7 +261,14 @@ public class AppPermissionFragment extends SettingsWithLargeHeader { view.setVisibility(View.GONE); } else { view.setOnClickListener((v) -> { mViewModel.showBottomLinkPage(this, action); Bundle args; if (action.equals(Intent.ACTION_MANAGE_APP_PERMISSIONS)) { args = AppPermissionGroupsFragment.createArgs(mPackageName, mUser, mSessionId, true); } else { args = PermissionAppsFragment.createArgs(mPermGroupName, mSessionId); } mViewModel.showBottomLinkPage(this, action, args); }); } } Loading Loading @@ -292,33 +303,33 @@ public class AppPermissionFragment extends SettingsWithLargeHeader { } mAllowButton.setOnClickListener((v) -> { mViewModel.requestChange(false, this, ChangeRequest.GRANT_FOREGROUND, mViewModel.requestChange(false, this, this, ChangeRequest.GRANT_FOREGROUND, APP_PERMISSION_FRAGMENT_ACTION_REPORTED__BUTTON_PRESSED__ALLOW); setResult(GRANTED_ALWAYS); }); mAllowAlwaysButton.setOnClickListener((v) -> { mViewModel.requestChange(false, this, ChangeRequest.GRANT_BOTH, mViewModel.requestChange(false, this, this, ChangeRequest.GRANT_BOTH, APP_PERMISSION_FRAGMENT_ACTION_REPORTED__BUTTON_PRESSED__ALLOW_ALWAYS); setResult(GRANTED_ALWAYS); }); mAllowForegroundButton.setOnClickListener((v) -> { mViewModel.requestChange(false, this, ChangeRequest.GRANT_FOREGROUND_ONLY, mViewModel.requestChange(false, this, this, ChangeRequest.GRANT_FOREGROUND_ONLY, APP_PERMISSION_FRAGMENT_ACTION_REPORTED__BUTTON_PRESSED__ALLOW_FOREGROUND); setResult(GRANTED_FOREGROUND_ONLY); }); // mAskOneTimeButton only shows if checked hence should do nothing mAskButton.setOnClickListener((v) -> { mViewModel.requestChange(true, this, ChangeRequest.REVOKE_BOTH, mViewModel.requestChange(true, this, this, ChangeRequest.REVOKE_BOTH, APP_PERMISSION_FRAGMENT_ACTION_REPORTED__BUTTON_PRESSED__ASK_EVERY_TIME); setResult(DENIED); }); mDenyButton.setOnClickListener((v) -> { mViewModel.requestChange(false, this, ChangeRequest.REVOKE_BOTH, mViewModel.requestChange(false, this, this, ChangeRequest.REVOKE_BOTH, APP_PERMISSION_FRAGMENT_ACTION_REPORTED__BUTTON_PRESSED__DENY); setResult(DENIED_DO_NOT_ASK_AGAIN); }); mDenyForegroundButton.setOnClickListener((v) -> { mViewModel.requestChange(false, this, ChangeRequest.REVOKE_FOREGROUND, mViewModel.requestChange(false, this, this, ChangeRequest.REVOKE_FOREGROUND, APP_PERMISSION_FRAGMENT_ACTION_REPORTED__BUTTON_PRESSED__DENY_FOREGROUND); setResult(DENIED_DO_NOT_ASK_AGAIN); }); Loading Loading @@ -368,7 +379,8 @@ public class AppPermissionFragment extends SettingsWithLargeHeader { // lets you control them. mDivider.setVisibility(View.VISIBLE); showRightIcon(R.drawable.ic_settings); mWidgetFrame.setOnClickListener(v -> mViewModel.showAllPermissions(this)); Bundle args = AllAppPermissionsFragment.createArgs(mPackageName, mPermGroupName, mUser); mWidgetFrame.setOnClickListener(v -> mViewModel.showAllPermissions(this, args)); mPermissionDetails.setText(getPreferenceManager().getContext().getString( detailResIds.getFirst(), detailResIds.getSecond())); } else { Loading Loading @@ -420,7 +432,8 @@ public class AppPermissionFragment extends SettingsWithLargeHeader { * @param buttonPressed Button which was pressed to initiate the dialog, one of * AppPermissionFragmentActionReported.button_pressed constants */ void showDefaultDenyDialog(ChangeRequest changeRequest, @StringRes int messageId, @Override public void showDefaultDenyDialog(ChangeRequest changeRequest, @StringRes int messageId, int buttonPressed) { Bundle args = getArguments().deepCopy(); args.putInt(DefaultDenyDialog.MSG, messageId); Loading
src/com/android/permissioncontroller/permission/ui/handheld/AppPermissionGroupsFragment.java +6 −2 Original line number Diff line number Diff line Loading @@ -51,6 +51,8 @@ import androidx.preference.PreferenceCategory; import com.android.permissioncontroller.PermissionControllerStatsLog; import com.android.permissioncontroller.R; import com.android.permissioncontroller.permission.ui.Category; import com.android.permissioncontroller.permission.ui.model.AppPermissionGroupsViewModel; import com.android.permissioncontroller.permission.ui.model.AppPermissionGroupsViewModelFactory; import com.android.permissioncontroller.permission.utils.KotlinUtils; import com.android.permissioncontroller.permission.utils.Utils; import com.android.settingslib.HelpUtils; Loading Loading @@ -166,7 +168,8 @@ public final class AppPermissionGroupsFragment extends SettingsWithLargeHeader { } case MENU_ALL_PERMS: { mViewModel.showAllPermissions(this); mViewModel.showAllPermissions(this, AllAppPermissionsFragment.createArgs( mPackageName, mUser)); return true; } } Loading Loading @@ -298,7 +301,8 @@ public final class AppPermissionGroupsFragment extends SettingsWithLargeHeader { extraPerms.setTitle(R.string.additional_permissions); extraPerms.setKey(extraPerms.getTitle() + category); extraPerms.setOnPreferenceClickListener(preference -> { mViewModel.showExtraPerms(this, getArguments().getLong(EXTRA_SESSION_ID)); mViewModel.showExtraPerms(this, AppPermissionGroupsFragment.createArgs( mPackageName, mUser, getArguments().getLong(EXTRA_SESSION_ID), false)); return true; }); extraPerms.setSummary(getResources().getQuantityString( Loading
src/com/android/permissioncontroller/permission/ui/handheld/ManageCustomPermissionsFragment.java +5 −2 Original line number Diff line number Diff line Loading @@ -23,6 +23,9 @@ import android.view.MenuItem; import androidx.lifecycle.ViewModelProvider; import com.android.permissioncontroller.permission.ui.model.ManageCustomPermissionsViewModel; import com.android.permissioncontroller.permission.ui.model.ManageCustomPermissionsViewModelFactory; import java.util.HashMap; /** Loading Loading @@ -75,8 +78,8 @@ public class ManageCustomPermissionsFragment extends ManagePermissionsFragment { @Override public void showPermissionApps(String permissionGroupName) { mViewModel.showPermissionApps(this, permissionGroupName, getArguments().getLong(EXTRA_SESSION_ID)); mViewModel.showPermissionApps(this, PermissionAppsFragment.createArgs( permissionGroupName, getArguments().getLong(EXTRA_SESSION_ID))); } @Override Loading
src/com/android/permissioncontroller/permission/ui/handheld/ManageStandardPermissionsFragment.java +6 −3 Original line number Diff line number Diff line Loading @@ -26,6 +26,8 @@ import androidx.preference.Preference; import androidx.preference.PreferenceScreen; import com.android.permissioncontroller.R; import com.android.permissioncontroller.permission.ui.model.ManageStandardPermissionsViewModel; import com.android.permissioncontroller.permission.ui.model.ManageStandardPermissionsViewModelFactory; import com.android.permissioncontroller.permission.utils.Utils; Loading Loading @@ -127,7 +129,8 @@ public final class ManageStandardPermissionsFragment extends ManagePermissionsFr additionalPermissionsPreference.setTitle(R.string.additional_permissions); additionalPermissionsPreference.setOnPreferenceClickListener(preference -> { mViewModel.showCustomPermissions(this, getArguments().getLong(EXTRA_SESSION_ID)); ManageCustomPermissionsFragment.createArgs( getArguments().getLong(EXTRA_SESSION_ID))); return true; }); Loading @@ -143,7 +146,7 @@ public final class ManageStandardPermissionsFragment extends ManagePermissionsFr @Override public void showPermissionApps(String permissionGroupName) { mViewModel.showPermissionApps(this, permissionGroupName, getArguments().getLong(EXTRA_SESSION_ID)); mViewModel.showPermissionApps(this, PermissionAppsFragment.createArgs( permissionGroupName, getArguments().getLong(EXTRA_SESSION_ID))); } }