Loading packages/SystemUI/src/com/android/systemui/communal/shared/model/GlanceableHubMultiUserHelper.kt +8 −1 Original line number Diff line number Diff line Loading @@ -33,6 +33,9 @@ interface GlanceableHubMultiUserHelper { /** Whether the current process is running in the headless system user. */ fun isInHeadlessSystemUser(): Boolean /** Whether the current process is running in the system user. */ fun isSystemUser(): Boolean /** * Asserts that the current process is running in the headless system user. * Loading @@ -57,7 +60,11 @@ class GlanceableHubMultiUserHelperImpl @Inject constructor(private val userHandl override fun isHeadlessSystemUserMode(): Boolean = UserManager.isHeadlessSystemUserMode() override fun isInHeadlessSystemUser(): Boolean { return isHeadlessSystemUserMode() && userHandle.isSystem return isHeadlessSystemUserMode() && isSystemUser() } override fun isSystemUser(): Boolean { return userHandle.isSystem } override fun assertInHeadlessSystemUser() { Loading packages/SystemUI/src/com/android/systemui/communal/widgets/CommunalAppWidgetHostStartable.kt +8 −0 Original line number Diff line number Diff line Loading @@ -69,6 +69,14 @@ constructor( private val glanceableHubWidgetManager by lazy { glanceableHubWidgetManagerLazy.get() } override fun start() { // Do nothing on a non system user process when hsum is not enabled. See b/431515488. if ( !glanceableHubMultiUserHelper.glanceableHubHsumFlagEnabled && !glanceableHubMultiUserHelper.isSystemUser() ) { return } if ( glanceableHubMultiUserHelper.glanceableHubHsumFlagEnabled && glanceableHubMultiUserHelper.isInHeadlessSystemUser() Loading packages/SystemUI/tests/utils/src/com/android/systemui/communal/shared/model/FakeGlanceableHubMultiUserHelper.kt +9 −0 Original line number Diff line number Diff line Loading @@ -20,6 +20,7 @@ class FakeGlanceableHubMultiUserHelper( override val glanceableHubHsumFlagEnabled: Boolean = true, private var isHeadlessSystemUserMode: Boolean = false, private var isInHeadlessSystemUser: Boolean = false, private var isSystemUser: Boolean = true, ) : GlanceableHubMultiUserHelper { override fun isHeadlessSystemUserMode(): Boolean { Loading @@ -34,10 +35,18 @@ class FakeGlanceableHubMultiUserHelper( return isInHeadlessSystemUser } override fun isSystemUser(): Boolean { return isSystemUser } fun setIsInHeadlessSystemUser(isInHeadlessSystemUser: Boolean) { this.isInHeadlessSystemUser = isInHeadlessSystemUser } fun setIsSystemUser(isSystemUser: Boolean) { this.isSystemUser = isSystemUser } override fun assertInHeadlessSystemUser() { check(isInHeadlessSystemUser()) } Loading Loading
packages/SystemUI/src/com/android/systemui/communal/shared/model/GlanceableHubMultiUserHelper.kt +8 −1 Original line number Diff line number Diff line Loading @@ -33,6 +33,9 @@ interface GlanceableHubMultiUserHelper { /** Whether the current process is running in the headless system user. */ fun isInHeadlessSystemUser(): Boolean /** Whether the current process is running in the system user. */ fun isSystemUser(): Boolean /** * Asserts that the current process is running in the headless system user. * Loading @@ -57,7 +60,11 @@ class GlanceableHubMultiUserHelperImpl @Inject constructor(private val userHandl override fun isHeadlessSystemUserMode(): Boolean = UserManager.isHeadlessSystemUserMode() override fun isInHeadlessSystemUser(): Boolean { return isHeadlessSystemUserMode() && userHandle.isSystem return isHeadlessSystemUserMode() && isSystemUser() } override fun isSystemUser(): Boolean { return userHandle.isSystem } override fun assertInHeadlessSystemUser() { Loading
packages/SystemUI/src/com/android/systemui/communal/widgets/CommunalAppWidgetHostStartable.kt +8 −0 Original line number Diff line number Diff line Loading @@ -69,6 +69,14 @@ constructor( private val glanceableHubWidgetManager by lazy { glanceableHubWidgetManagerLazy.get() } override fun start() { // Do nothing on a non system user process when hsum is not enabled. See b/431515488. if ( !glanceableHubMultiUserHelper.glanceableHubHsumFlagEnabled && !glanceableHubMultiUserHelper.isSystemUser() ) { return } if ( glanceableHubMultiUserHelper.glanceableHubHsumFlagEnabled && glanceableHubMultiUserHelper.isInHeadlessSystemUser() Loading
packages/SystemUI/tests/utils/src/com/android/systemui/communal/shared/model/FakeGlanceableHubMultiUserHelper.kt +9 −0 Original line number Diff line number Diff line Loading @@ -20,6 +20,7 @@ class FakeGlanceableHubMultiUserHelper( override val glanceableHubHsumFlagEnabled: Boolean = true, private var isHeadlessSystemUserMode: Boolean = false, private var isInHeadlessSystemUser: Boolean = false, private var isSystemUser: Boolean = true, ) : GlanceableHubMultiUserHelper { override fun isHeadlessSystemUserMode(): Boolean { Loading @@ -34,10 +35,18 @@ class FakeGlanceableHubMultiUserHelper( return isInHeadlessSystemUser } override fun isSystemUser(): Boolean { return isSystemUser } fun setIsInHeadlessSystemUser(isInHeadlessSystemUser: Boolean) { this.isInHeadlessSystemUser = isInHeadlessSystemUser } fun setIsSystemUser(isSystemUser: Boolean) { this.isSystemUser = isSystemUser } override fun assertInHeadlessSystemUser() { check(isInHeadlessSystemUser()) } Loading