diff --git a/packages/SystemUI/res-keyguard/layout/keyguard_bouncer_user_switcher.xml b/packages/SystemUI/res-keyguard/layout/keyguard_bouncer_user_switcher.xml index a2b8bf6d3d4ce..4f0925f3bfbbf 100644 --- a/packages/SystemUI/res-keyguard/layout/keyguard_bouncer_user_switcher.xml +++ b/packages/SystemUI/res-keyguard/layout/keyguard_bouncer_user_switcher.xml @@ -20,19 +20,18 @@ xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/keyguard_bouncer_user_switcher" android:layout_width="match_parent" - android:layout_height="match_parent" + android:layout_height="wrap_content" android:clipChildren="false" android:clipToPadding="false" android:orientation="vertical" android:gravity="center" - android:paddingTop="12dp" android:importantForAccessibility="yes"> - + @@ -41,7 +40,7 @@ android:orientation="horizontal" android:layout_height="wrap_content" android:layout_width="wrap_content" - android:layout_marginTop="32dp" + android:layout_marginTop="30dp" android:minHeight="48dp"> 120dp - 24sp - 18sp - 300dp - 250dp + 32sp + 32sp + 320dp + 310dp 32dp 24dp 15dp diff --git a/packages/SystemUI/src/com/android/keyguard/KeyguardSecurityContainer.java b/packages/SystemUI/src/com/android/keyguard/KeyguardSecurityContainer.java index 67ef02a6029bd..b84cb19b9468a 100644 --- a/packages/SystemUI/src/com/android/keyguard/KeyguardSecurityContainer.java +++ b/packages/SystemUI/src/com/android/keyguard/KeyguardSecurityContainer.java @@ -866,7 +866,6 @@ public class KeyguardSecurityContainer extends FrameLayout { ((LayerDrawable) mUserSwitcher.getBackground()).getDrawable(1).setAlpha(255); } - anchor.setClickable(true); anchor.setOnClickListener((v) -> { if (mFalsingManager.isFalseTap(LOW_PENALTY)) return; @@ -877,8 +876,7 @@ public class KeyguardSecurityContainer extends FrameLayout { public void onItemClick(AdapterView parent, View view, int pos, long id) { if (mFalsingManager.isFalseTap(LOW_PENALTY)) return; - // - 1 to account for the header view - UserRecord user = adapter.getItem(pos - 1); + UserRecord user = adapter.getItem(pos); if (!user.isCurrent) { adapter.onUserListItemClicked(user); } @@ -907,9 +905,16 @@ public class KeyguardSecurityContainer extends FrameLayout { == Configuration.ORIENTATION_PORTRAIT) { updateViewGravity(mViewFlipper, Gravity.CENTER_HORIZONTAL); updateViewGravity(mUserSwitcherViewGroup, Gravity.CENTER_HORIZONTAL); + mUserSwitcherViewGroup.setTranslationY(0); } else { updateViewGravity(mViewFlipper, Gravity.RIGHT | Gravity.BOTTOM); - updateViewGravity(mUserSwitcherViewGroup, Gravity.LEFT | Gravity.TOP); + updateViewGravity(mUserSwitcherViewGroup, Gravity.LEFT | Gravity.CENTER_VERTICAL); + + // Attempt to reposition a bit higher to make up for this frame being a bit lower + // on the device + int yTrans = mView.getContext().getResources().getDimensionPixelSize( + R.dimen.status_bar_height); + mUserSwitcherViewGroup.setTranslationY(-yTrans); } } diff --git a/packages/SystemUI/src/com/android/keyguard/KeyguardUserSwitcherPopupMenu.java b/packages/SystemUI/src/com/android/keyguard/KeyguardUserSwitcherPopupMenu.java index dfb466788ca73..7b6ce3e1c951c 100644 --- a/packages/SystemUI/src/com/android/keyguard/KeyguardUserSwitcherPopupMenu.java +++ b/packages/SystemUI/src/com/android/keyguard/KeyguardUserSwitcherPopupMenu.java @@ -18,12 +18,10 @@ package com.android.keyguard; import android.annotation.NonNull; import android.content.Context; import android.content.res.Resources; -import android.view.LayoutInflater; import android.view.MotionEvent; import android.view.View; import android.widget.ListPopupWindow; import android.widget.ListView; -import android.widget.TextView; import com.android.systemui.R; import com.android.systemui.plugins.FalsingManager; @@ -68,12 +66,6 @@ public class KeyguardUserSwitcherPopupMenu extends ListPopupWindow { // This will force the popupwindow to show upward instead of drop down listView.addOnLayoutChangeListener(mLayoutListener); - TextView header = (TextView) LayoutInflater.from(mContext).inflate( - R.layout.keyguard_bouncer_user_switcher_item, listView, false); - header.setText(mContext.getResources().getString( - R.string.accessibility_multi_user_switch_switcher)); - listView.addHeaderView(header); - listView.setOnTouchListener((v, ev) -> { if (ev.getActionMasked() == MotionEvent.ACTION_DOWN) { return mFalsingManager.isFalseTap(FalsingManager.LOW_PENALTY); diff --git a/packages/SystemUI/tests/src/com/android/keyguard/KeyguardSecurityContainerTest.java b/packages/SystemUI/tests/src/com/android/keyguard/KeyguardSecurityContainerTest.java index 77762859de181..24b01e079b428 100644 --- a/packages/SystemUI/tests/src/com/android/keyguard/KeyguardSecurityContainerTest.java +++ b/packages/SystemUI/tests/src/com/android/keyguard/KeyguardSecurityContainerTest.java @@ -244,7 +244,7 @@ public class KeyguardSecurityContainerTest extends SysuiTestCase { ViewGroup userSwitcher = mKeyguardSecurityContainer.findViewById( R.id.keyguard_bouncer_user_switcher); assertThat(((FrameLayout.LayoutParams) userSwitcher.getLayoutParams()).gravity) - .isEqualTo(Gravity.LEFT | Gravity.TOP); + .isEqualTo(Gravity.LEFT | Gravity.CENTER_VERTICAL); } @Test