Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 19b39a77 authored by Tetiana Meronyk's avatar Tetiana Meronyk
Browse files

Disable multiuser toggle on COPE device and add explanation dialog

Bug: 304359233
Test: manual
Change-Id: I226ad8e7ae579dc77d77b764c0cb343062898c3e
parent 3e992962
Loading
Loading
Loading
Loading
+26 −0
Original line number Diff line number Diff line
@@ -242,6 +242,32 @@ public class RestrictedLockUtilsInternal extends RestrictedLockUtils {
        return null;
    }

    /**
     * Checks whether add user is disabled on the device
     *
     * @param context {@link Context} for the calling user.
     *
     *
     * @param userId User to check enforced admin status for.
     *
     * @return EnforcedAdmin Object containing the enforced admin component and admin user details,
     * or {@code null} If adding user is not disabled.
     */
    public static EnforcedAdmin checkIfAddUserDisallowed(Context context, int userId) {
        final UserManager um = UserManager.get(context);
        if (!um.hasUserRestriction(UserManager.DISALLOW_ADD_USER, UserHandle.of(userId))) {
            // Restriction is not enforced.
            return null;
        }
        EnforcedAdmin enforcedAdmin = checkIfRestrictionEnforced(context,
                UserManager.DISALLOW_ADD_USER, userId);
        if (enforcedAdmin != null) {
            return enforcedAdmin;
        }
        return EnforcedAdmin.createDefaultEnforcedAdminWithRestriction(
                UserManager.DISALLOW_ADD_USER);
    }

    /**
     * Check if an application is suspended.
     *