diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/policy/UserSwitcherController.java b/packages/SystemUI/src/com/android/systemui/statusbar/policy/UserSwitcherController.java index 9f20bc55ebc94..49e712d386e53 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/policy/UserSwitcherController.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/policy/UserSwitcherController.java @@ -455,6 +455,13 @@ public class UserSwitcherController implements Dumpable { } } + /** + * Returns whether the current user is a system user. + */ + public boolean isSystemUser() { + return mUserTracker.getUserId() == UserHandle.USER_SYSTEM; + } + public void removeUserId(int userId) { if (userId == UserHandle.USER_SYSTEM) { Log.w(TAG, "User " + userId + " could not removed."); diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/policy/UserSwitcherControllerTest.kt b/packages/SystemUI/tests/src/com/android/systemui/statusbar/policy/UserSwitcherControllerTest.kt index fa2a9066d99bf..9a7e702152b49 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/policy/UserSwitcherControllerTest.kt +++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/policy/UserSwitcherControllerTest.kt @@ -400,4 +400,16 @@ class UserSwitcherControllerTest : SysuiTestCase() { assertEquals(fgUserName, userSwitcherController.currentUserName) } + + @Test + fun isSystemUser_currentUserIsSystemUser_shouldReturnTrue() { + `when`(userTracker.userId).thenReturn(UserHandle.USER_SYSTEM) + assertEquals(true, userSwitcherController.isSystemUser) + } + + @Test + fun isSystemUser_currentUserIsNotSystemUser_shouldReturnFalse() { + `when`(userTracker.userId).thenReturn(1) + assertEquals(false, userSwitcherController.isSystemUser) + } }