Loading core/java/android/app/ActivityManager.java +28 −0 Original line number Diff line number Diff line Loading @@ -4075,6 +4075,34 @@ public class ActivityManager { return switchUser(user.getIdentifier()); } /** * Gets the message that is shown when a user is switched from. * * @hide */ @RequiresPermission(Manifest.permission.MANAGE_USERS) public @Nullable String getSwitchingFromUserMessage() { try { return getService().getSwitchingFromUserMessage(); } catch (RemoteException re) { throw re.rethrowFromSystemServer(); } } /** * Gets the message that is shown when a user is switched to. * * @hide */ @RequiresPermission(Manifest.permission.MANAGE_USERS) public @Nullable String getSwitchingToUserMessage() { try { return getService().getSwitchingToUserMessage(); } catch (RemoteException re) { throw re.rethrowFromSystemServer(); } } /** * Uses the value defined by the platform. * Loading core/java/android/app/IActivityManager.aidl +2 −0 Original line number Diff line number Diff line Loading @@ -338,6 +338,8 @@ interface IActivityManager { void setPackageScreenCompatMode(in String packageName, int mode); @UnsupportedAppUsage boolean switchUser(int userid); String getSwitchingFromUserMessage(); String getSwitchingToUserMessage(); @UnsupportedAppUsage void setStopUserOnSwitch(int value); boolean removeTask(int taskId); Loading services/core/java/com/android/server/am/ActivityManagerService.java +10 −0 Original line number Diff line number Diff line Loading @@ -15090,6 +15090,16 @@ public class ActivityManagerService extends IActivityManager.Stub return mUserController.switchUser(targetUserId); } @Override public String getSwitchingFromUserMessage() { return mUserController.getSwitchingFromSystemUserMessage(); } @Override public String getSwitchingToUserMessage() { return mUserController.getSwitchingToSystemUserMessage(); } @Override public void setStopUserOnSwitch(@StopUserOnSwitch int value) { mUserController.setStopUserOnSwitch(value); services/core/java/com/android/server/am/UserController.java +32 −3 Original line number Diff line number Diff line Loading @@ -1792,7 +1792,8 @@ class UserController implements Handler.Callback { private void showUserSwitchDialog(Pair<UserInfo, UserInfo> fromToUserPair) { // The dialog will show and then initiate the user switch by calling startUserInForeground mInjector.showUserSwitchingDialog(fromToUserPair.first, fromToUserPair.second, getSwitchingFromSystemUserMessage(), getSwitchingToSystemUserMessage()); getSwitchingFromSystemUserMessageUnchecked(), getSwitchingToSystemUserMessageUnchecked()); } private void dispatchForegroundProfileChanged(@UserIdInt int userId) { Loading Loading @@ -2564,18 +2565,40 @@ class UserController implements Handler.Callback { } } private String getSwitchingFromSystemUserMessage() { // Called by AMS, must check permission String getSwitchingFromSystemUserMessage() { checkHasManageUsersPermission("getSwitchingFromSystemUserMessage()"); return getSwitchingFromSystemUserMessageUnchecked(); } // Called by AMS, must check permission String getSwitchingToSystemUserMessage() { checkHasManageUsersPermission("getSwitchingToSystemUserMessage()"); return getSwitchingToSystemUserMessageUnchecked(); } private String getSwitchingFromSystemUserMessageUnchecked() { synchronized (mLock) { return mSwitchingFromSystemUserMessage; } } private String getSwitchingToSystemUserMessage() { private String getSwitchingToSystemUserMessageUnchecked() { synchronized (mLock) { return mSwitchingToSystemUserMessage; } } private void checkHasManageUsersPermission(String operation) { if (mInjector.checkCallingPermission( android.Manifest.permission.MANAGE_USERS) == PackageManager.PERMISSION_DENIED) { throw new SecurityException( "You need MANAGE_USERS permission to call " + operation); } } void dumpDebug(ProtoOutputStream proto, long fieldId) { synchronized (mLock) { long token = proto.start(fieldId); Loading Loading @@ -2648,6 +2671,12 @@ class UserController implements Handler.Callback { pw.println(" mMaxRunningUsers:" + mMaxRunningUsers); pw.println(" mUserSwitchUiEnabled:" + mUserSwitchUiEnabled); pw.println(" mInitialized:" + mInitialized); if (mSwitchingFromSystemUserMessage != null) { pw.println(" mSwitchingFromSystemUserMessage: " + mSwitchingFromSystemUserMessage); } if (mSwitchingToSystemUserMessage != null) { pw.println(" mSwitchingToSystemUserMessage: " + mSwitchingToSystemUserMessage); } } } Loading Loading
core/java/android/app/ActivityManager.java +28 −0 Original line number Diff line number Diff line Loading @@ -4075,6 +4075,34 @@ public class ActivityManager { return switchUser(user.getIdentifier()); } /** * Gets the message that is shown when a user is switched from. * * @hide */ @RequiresPermission(Manifest.permission.MANAGE_USERS) public @Nullable String getSwitchingFromUserMessage() { try { return getService().getSwitchingFromUserMessage(); } catch (RemoteException re) { throw re.rethrowFromSystemServer(); } } /** * Gets the message that is shown when a user is switched to. * * @hide */ @RequiresPermission(Manifest.permission.MANAGE_USERS) public @Nullable String getSwitchingToUserMessage() { try { return getService().getSwitchingToUserMessage(); } catch (RemoteException re) { throw re.rethrowFromSystemServer(); } } /** * Uses the value defined by the platform. * Loading
core/java/android/app/IActivityManager.aidl +2 −0 Original line number Diff line number Diff line Loading @@ -338,6 +338,8 @@ interface IActivityManager { void setPackageScreenCompatMode(in String packageName, int mode); @UnsupportedAppUsage boolean switchUser(int userid); String getSwitchingFromUserMessage(); String getSwitchingToUserMessage(); @UnsupportedAppUsage void setStopUserOnSwitch(int value); boolean removeTask(int taskId); Loading
services/core/java/com/android/server/am/ActivityManagerService.java +10 −0 Original line number Diff line number Diff line Loading @@ -15090,6 +15090,16 @@ public class ActivityManagerService extends IActivityManager.Stub return mUserController.switchUser(targetUserId); } @Override public String getSwitchingFromUserMessage() { return mUserController.getSwitchingFromSystemUserMessage(); } @Override public String getSwitchingToUserMessage() { return mUserController.getSwitchingToSystemUserMessage(); } @Override public void setStopUserOnSwitch(@StopUserOnSwitch int value) { mUserController.setStopUserOnSwitch(value);
services/core/java/com/android/server/am/UserController.java +32 −3 Original line number Diff line number Diff line Loading @@ -1792,7 +1792,8 @@ class UserController implements Handler.Callback { private void showUserSwitchDialog(Pair<UserInfo, UserInfo> fromToUserPair) { // The dialog will show and then initiate the user switch by calling startUserInForeground mInjector.showUserSwitchingDialog(fromToUserPair.first, fromToUserPair.second, getSwitchingFromSystemUserMessage(), getSwitchingToSystemUserMessage()); getSwitchingFromSystemUserMessageUnchecked(), getSwitchingToSystemUserMessageUnchecked()); } private void dispatchForegroundProfileChanged(@UserIdInt int userId) { Loading Loading @@ -2564,18 +2565,40 @@ class UserController implements Handler.Callback { } } private String getSwitchingFromSystemUserMessage() { // Called by AMS, must check permission String getSwitchingFromSystemUserMessage() { checkHasManageUsersPermission("getSwitchingFromSystemUserMessage()"); return getSwitchingFromSystemUserMessageUnchecked(); } // Called by AMS, must check permission String getSwitchingToSystemUserMessage() { checkHasManageUsersPermission("getSwitchingToSystemUserMessage()"); return getSwitchingToSystemUserMessageUnchecked(); } private String getSwitchingFromSystemUserMessageUnchecked() { synchronized (mLock) { return mSwitchingFromSystemUserMessage; } } private String getSwitchingToSystemUserMessage() { private String getSwitchingToSystemUserMessageUnchecked() { synchronized (mLock) { return mSwitchingToSystemUserMessage; } } private void checkHasManageUsersPermission(String operation) { if (mInjector.checkCallingPermission( android.Manifest.permission.MANAGE_USERS) == PackageManager.PERMISSION_DENIED) { throw new SecurityException( "You need MANAGE_USERS permission to call " + operation); } } void dumpDebug(ProtoOutputStream proto, long fieldId) { synchronized (mLock) { long token = proto.start(fieldId); Loading Loading @@ -2648,6 +2671,12 @@ class UserController implements Handler.Callback { pw.println(" mMaxRunningUsers:" + mMaxRunningUsers); pw.println(" mUserSwitchUiEnabled:" + mUserSwitchUiEnabled); pw.println(" mInitialized:" + mInitialized); if (mSwitchingFromSystemUserMessage != null) { pw.println(" mSwitchingFromSystemUserMessage: " + mSwitchingFromSystemUserMessage); } if (mSwitchingToSystemUserMessage != null) { pw.println(" mSwitchingToSystemUserMessage: " + mSwitchingToSystemUserMessage); } } } Loading