Loading packages/SystemUI/src/com/android/systemui/qs/tiles/UserDetailView.java +9 −0 Original line number Diff line number Diff line Loading @@ -204,6 +204,15 @@ public class UserDetailView extends PseudoGridView { Trace.endSection(); } @Override public void onUserListItemClicked(@NonNull UserRecord record, @Nullable UserSwitchDialogController.DialogShower dialogShower) { if (dialogShower != null) { mDialogShower.dismiss(); } super.onUserListItemClicked(record, dialogShower); } public void linkToViewGroup(ViewGroup viewGroup) { PseudoGridView.ViewGroupAdapterBridge.link(viewGroup, this); } Loading packages/SystemUI/src/com/android/systemui/statusbar/policy/BaseUserSwitcherAdapter.kt +1 −1 Original line number Diff line number Diff line Loading @@ -61,7 +61,7 @@ protected constructor( * animation to and from the parent dialog. */ @JvmOverloads fun onUserListItemClicked( open fun onUserListItemClicked( record: UserRecord, dialogShower: DialogShower? = null, ) { Loading packages/SystemUI/tests/src/com/android/systemui/qs/tiles/UserDetailViewAdapterTest.kt +29 −10 Original line number Diff line number Diff line Loading @@ -30,6 +30,7 @@ import com.android.systemui.R import com.android.systemui.SysuiTestCase import com.android.systemui.classifier.FalsingManagerFake import com.android.systemui.qs.QSUserSwitcherEvent import com.android.systemui.qs.user.UserSwitchDialogController import com.android.systemui.statusbar.policy.UserSwitcherController import com.android.systemui.user.data.source.UserRecord import org.junit.Assert.assertEquals Loading @@ -41,20 +42,27 @@ import org.mockito.ArgumentMatchers.any import org.mockito.ArgumentMatchers.anyBoolean import org.mockito.ArgumentMatchers.anyInt import org.mockito.Mock import org.mockito.Mockito.verify import org.mockito.Mockito.`when` import org.mockito.Mockito.mock import org.mockito.Mockito.verify import org.mockito.MockitoAnnotations @RunWith(AndroidTestingRunner::class) @SmallTest class UserDetailViewAdapterTest : SysuiTestCase() { @Mock private lateinit var mUserSwitcherController: UserSwitcherController @Mock private lateinit var mParent: ViewGroup @Mock private lateinit var mUserDetailItemView: UserDetailItemView @Mock private lateinit var mOtherView: View @Mock private lateinit var mInflatedUserDetailItemView: UserDetailItemView @Mock private lateinit var mLayoutInflater: LayoutInflater @Mock private lateinit var mUserSwitcherController: UserSwitcherController @Mock private lateinit var mParent: ViewGroup @Mock private lateinit var mUserDetailItemView: UserDetailItemView @Mock private lateinit var mOtherView: View @Mock private lateinit var mInflatedUserDetailItemView: UserDetailItemView @Mock private lateinit var mLayoutInflater: LayoutInflater private var falsingManagerFake: FalsingManagerFake = FalsingManagerFake() private lateinit var adapter: UserDetailView.Adapter private lateinit var uiEventLogger: UiEventLoggerFake Loading @@ -69,8 +77,10 @@ class UserDetailViewAdapterTest : SysuiTestCase() { `when`(mLayoutInflater.inflate(anyInt(), any(ViewGroup::class.java), anyBoolean())) .thenReturn(mInflatedUserDetailItemView) `when`(mParent.context).thenReturn(mContext) adapter = UserDetailView.Adapter(mContext, mUserSwitcherController, uiEventLogger, falsingManagerFake) adapter = UserDetailView.Adapter( mContext, mUserSwitcherController, uiEventLogger, falsingManagerFake ) mPicture = UserIcons.convertToBitmap(mContext.getDrawable(R.drawable.ic_avatar_user)) } Loading Loading @@ -145,6 +155,15 @@ class UserDetailViewAdapterTest : SysuiTestCase() { assertNull(adapter.users.find { it.isManageUsers }) } @Test fun clickDismissDialog() { val shower: UserSwitchDialogController.DialogShower = mock(UserSwitchDialogController.DialogShower::class.java) adapter.injectDialogShower(shower) adapter.onUserListItemClicked(createUserRecord(current = true, guest = false), shower) verify(shower).dismiss() } private fun createUserRecord(current: Boolean, guest: Boolean) = UserRecord( UserInfo(0 /* id */, "name", 0 /* flags */), Loading Loading
packages/SystemUI/src/com/android/systemui/qs/tiles/UserDetailView.java +9 −0 Original line number Diff line number Diff line Loading @@ -204,6 +204,15 @@ public class UserDetailView extends PseudoGridView { Trace.endSection(); } @Override public void onUserListItemClicked(@NonNull UserRecord record, @Nullable UserSwitchDialogController.DialogShower dialogShower) { if (dialogShower != null) { mDialogShower.dismiss(); } super.onUserListItemClicked(record, dialogShower); } public void linkToViewGroup(ViewGroup viewGroup) { PseudoGridView.ViewGroupAdapterBridge.link(viewGroup, this); } Loading
packages/SystemUI/src/com/android/systemui/statusbar/policy/BaseUserSwitcherAdapter.kt +1 −1 Original line number Diff line number Diff line Loading @@ -61,7 +61,7 @@ protected constructor( * animation to and from the parent dialog. */ @JvmOverloads fun onUserListItemClicked( open fun onUserListItemClicked( record: UserRecord, dialogShower: DialogShower? = null, ) { Loading
packages/SystemUI/tests/src/com/android/systemui/qs/tiles/UserDetailViewAdapterTest.kt +29 −10 Original line number Diff line number Diff line Loading @@ -30,6 +30,7 @@ import com.android.systemui.R import com.android.systemui.SysuiTestCase import com.android.systemui.classifier.FalsingManagerFake import com.android.systemui.qs.QSUserSwitcherEvent import com.android.systemui.qs.user.UserSwitchDialogController import com.android.systemui.statusbar.policy.UserSwitcherController import com.android.systemui.user.data.source.UserRecord import org.junit.Assert.assertEquals Loading @@ -41,20 +42,27 @@ import org.mockito.ArgumentMatchers.any import org.mockito.ArgumentMatchers.anyBoolean import org.mockito.ArgumentMatchers.anyInt import org.mockito.Mock import org.mockito.Mockito.verify import org.mockito.Mockito.`when` import org.mockito.Mockito.mock import org.mockito.Mockito.verify import org.mockito.MockitoAnnotations @RunWith(AndroidTestingRunner::class) @SmallTest class UserDetailViewAdapterTest : SysuiTestCase() { @Mock private lateinit var mUserSwitcherController: UserSwitcherController @Mock private lateinit var mParent: ViewGroup @Mock private lateinit var mUserDetailItemView: UserDetailItemView @Mock private lateinit var mOtherView: View @Mock private lateinit var mInflatedUserDetailItemView: UserDetailItemView @Mock private lateinit var mLayoutInflater: LayoutInflater @Mock private lateinit var mUserSwitcherController: UserSwitcherController @Mock private lateinit var mParent: ViewGroup @Mock private lateinit var mUserDetailItemView: UserDetailItemView @Mock private lateinit var mOtherView: View @Mock private lateinit var mInflatedUserDetailItemView: UserDetailItemView @Mock private lateinit var mLayoutInflater: LayoutInflater private var falsingManagerFake: FalsingManagerFake = FalsingManagerFake() private lateinit var adapter: UserDetailView.Adapter private lateinit var uiEventLogger: UiEventLoggerFake Loading @@ -69,8 +77,10 @@ class UserDetailViewAdapterTest : SysuiTestCase() { `when`(mLayoutInflater.inflate(anyInt(), any(ViewGroup::class.java), anyBoolean())) .thenReturn(mInflatedUserDetailItemView) `when`(mParent.context).thenReturn(mContext) adapter = UserDetailView.Adapter(mContext, mUserSwitcherController, uiEventLogger, falsingManagerFake) adapter = UserDetailView.Adapter( mContext, mUserSwitcherController, uiEventLogger, falsingManagerFake ) mPicture = UserIcons.convertToBitmap(mContext.getDrawable(R.drawable.ic_avatar_user)) } Loading Loading @@ -145,6 +155,15 @@ class UserDetailViewAdapterTest : SysuiTestCase() { assertNull(adapter.users.find { it.isManageUsers }) } @Test fun clickDismissDialog() { val shower: UserSwitchDialogController.DialogShower = mock(UserSwitchDialogController.DialogShower::class.java) adapter.injectDialogShower(shower) adapter.onUserListItemClicked(createUserRecord(current = true, guest = false), shower) verify(shower).dismiss() } private fun createUserRecord(current: Boolean, guest: Boolean) = UserRecord( UserInfo(0 /* id */, "name", 0 /* flags */), Loading