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

Commit 003ed15b authored by Matt Pietal's avatar Matt Pietal Committed by Automerger Merge Worker
Browse files

Merge "Use new DevicePolicyManager#logoutUser() methods" into tm-dev am: e7ed33a5

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/17219111

Change-Id: If44e54a9bf0528e5a0d44797a79665d71b708867
parents dba1b37b e7ed33a5
Loading
Loading
Loading
Loading
+0 −17
Original line number Diff line number Diff line
@@ -4474,23 +4474,6 @@ public class ActivityManager {
        }
    }

    /**
     * Logs out current current foreground user by switching to the system user and stopping the
     * user being switched from.
     * @hide
     */
    public static void logoutCurrentUser() {
        int currentUser = ActivityManager.getCurrentUser();
        if (currentUser != UserHandle.USER_SYSTEM) {
            try {
                getService().switchUser(UserHandle.USER_SYSTEM);
                getService().stopUser(currentUser, /* force= */ false, null);
            } catch (RemoteException e) {
                e.rethrowFromSystemServer();
            }
        }
    }

    /**
     * Stops the given {@code userId}.
     *
+1 −7
Original line number Diff line number Diff line
@@ -1067,13 +1067,7 @@ public class GlobalActionsDialogLite implements DialogInterface.OnDismissListene
            // Add a little delay before executing, to give the dialog a chance to go away before
            // switching user
            mHandler.postDelayed(() -> {
                try {
                    int currentUserId = getCurrentUser().id;
                    mIActivityManager.switchUser(UserHandle.USER_SYSTEM);
                    mIActivityManager.stopUser(currentUserId, true /*force*/, null);
                } catch (RemoteException re) {
                    Log.e(TAG, "Couldn't logout user " + re);
                }
                mDevicePolicyManager.logoutUser();
            }, mDialogPressDelay);
        }
    }
+1 −7
Original line number Diff line number Diff line
@@ -575,13 +575,7 @@ public class KeyguardIndicationController {
                                    return;
                                }
                                int currentUserId = KeyguardUpdateMonitor.getCurrentUser();
                                try {
                                    mIActivityManager.switchUser(UserHandle.USER_SYSTEM);
                                    mIActivityManager.stopUser(currentUserId, true /* force */,
                                            null);
                                } catch (RemoteException re) {
                                    Log.e(TAG, "Failed to logout user", re);
                                }
                                mDevicePolicyManager.logoutUser();
                            })
                            .build(),
                    false);
+0 −8
Original line number Diff line number Diff line
@@ -447,14 +447,6 @@ public class UserSwitcherController implements Dumpable {
        mResumeUserOnGuestLogout = resume;
    }

    public void logoutCurrentUser() {
        int currentUser = mUserTracker.getUserId();
        if (currentUser != UserHandle.USER_SYSTEM) {
            pauseRefreshUsers();
            ActivityManager.logoutCurrentUser();
        }
    }

    /**
     * Returns whether the current user is a system user.
     */