summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--packages/SystemUI/src/com/android/systemui/user/UserSwitcherActivity.kt9
-rw-r--r--packages/SystemUI/tests/src/com/android/systemui/user/UserSwitcherActivityTest.kt6
2 files changed, 10 insertions, 5 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/user/UserSwitcherActivity.kt b/packages/SystemUI/src/com/android/systemui/user/UserSwitcherActivity.kt
index 9e9b74616d29..3329eabc80ad 100644
--- a/packages/SystemUI/src/com/android/systemui/user/UserSwitcherActivity.kt
+++ b/packages/SystemUI/src/com/android/systemui/user/UserSwitcherActivity.kt
@@ -42,7 +42,7 @@ import com.android.systemui.R
import com.android.systemui.broadcast.BroadcastDispatcher
import com.android.systemui.plugins.FalsingManager
import com.android.systemui.plugins.FalsingManager.LOW_PENALTY
-import com.android.systemui.statusbar.phone.ShadeController
+import com.android.systemui.settings.UserTracker
import com.android.systemui.statusbar.policy.UserSwitcherController
import com.android.systemui.statusbar.policy.UserSwitcherController.BaseUserAdapter
import com.android.systemui.statusbar.policy.UserSwitcherController.USER_SWITCH_DISABLED_ALPHA
@@ -63,7 +63,7 @@ class UserSwitcherActivity @Inject constructor(
private val layoutInflater: LayoutInflater,
private val falsingManager: FalsingManager,
private val userManager: UserManager,
- private val shadeController: ShadeController
+ private val userTracker: UserTracker
) : LifecycleActivity() {
private lateinit var parent: ViewGroup
@@ -215,6 +215,11 @@ class UserSwitcherActivity @Inject constructor(
initBroadcastReceiver()
parent.post { buildUserViews() }
+ userTracker.addCallback(object : UserTracker.Callback {
+ override fun onUserChanged(newUser: Int, userContext: Context) {
+ finish()
+ }
+ }, mainExecutor)
}
private fun showPopupMenu() {
diff --git a/packages/SystemUI/tests/src/com/android/systemui/user/UserSwitcherActivityTest.kt b/packages/SystemUI/tests/src/com/android/systemui/user/UserSwitcherActivityTest.kt
index d4be881020e1..eaad69c6b9d2 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/user/UserSwitcherActivityTest.kt
+++ b/packages/SystemUI/tests/src/com/android/systemui/user/UserSwitcherActivityTest.kt
@@ -24,7 +24,7 @@ import androidx.test.filters.SmallTest
import com.android.systemui.SysuiTestCase
import com.android.systemui.broadcast.BroadcastDispatcher
import com.android.systemui.plugins.FalsingManager
-import com.android.systemui.statusbar.phone.ShadeController
+import com.android.systemui.settings.UserTracker
import com.android.systemui.statusbar.policy.UserSwitcherController
import com.google.common.truth.Truth.assertThat
import org.junit.Before
@@ -50,7 +50,7 @@ class UserSwitcherActivityTest : SysuiTestCase() {
@Mock
private lateinit var userManager: UserManager
@Mock
- private lateinit var shadeController: ShadeController
+ private lateinit var userTracker: UserTracker
@Before
fun setUp() {
@@ -61,7 +61,7 @@ class UserSwitcherActivityTest : SysuiTestCase() {
layoutInflater,
falsingManager,
userManager,
- shadeController
+ userTracker
)
}