Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c756e520 authored by Zhen Zhang's avatar Zhen Zhang Committed by Automerger Merge Worker
Browse files

Merge "Hide multi user switcher on keyguard screen when disabled" into tm-dev...

Merge "Hide multi user switcher on keyguard screen when disabled" into tm-dev am: 78ad1dd6 am: cf3641b0

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/18798706



Change-Id: Ie892a11982f3f71cbc9bb09e1858758c448f2be2
Signed-off-by: default avatarAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
parents 43bc40d9 cf3641b0
Loading
Loading
Loading
Loading
+8 −4
Original line number Diff line number Diff line
@@ -958,14 +958,16 @@ public class NotificationPanelViewController extends PanelViewController {
                });
    }

    private void onFinishInflate() {
    @VisibleForTesting
    void onFinishInflate() {
        loadDimens();
        mKeyguardStatusBar = mView.findViewById(R.id.keyguard_header);

        FrameLayout userAvatarContainer = null;
        KeyguardUserSwitcherView keyguardUserSwitcherView = null;

        if (mKeyguardUserSwitcherEnabled && mUserManager.isUserSwitcherEnabled()) {
        if (mKeyguardUserSwitcherEnabled && mUserManager.isUserSwitcherEnabled(
                mResources.getBoolean(R.bool.qs_show_user_switcher_for_single_user))) {
            if (mKeyguardQsUserSwitchEnabled) {
                ViewStub stub = mView.findViewById(R.id.keyguard_qs_user_switch_stub);
                userAvatarContainer = (FrameLayout) stub.inflate();
@@ -1191,7 +1193,8 @@ public class NotificationPanelViewController extends PanelViewController {
        return view;
    }

    private void reInflateViews() {
    @VisibleForTesting
    void reInflateViews() {
        if (DEBUG_LOGCAT) Log.d(TAG, "reInflateViews");
        // Re-inflate the status view group.
        KeyguardStatusView keyguardStatusView =
@@ -1212,7 +1215,8 @@ public class NotificationPanelViewController extends PanelViewController {

        // Re-inflate the keyguard user switcher group.
        updateUserSwitcherFlags();
        boolean isUserSwitcherEnabled = mUserManager.isUserSwitcherEnabled();
        boolean isUserSwitcherEnabled = mUserManager.isUserSwitcherEnabled(
                mResources.getBoolean(R.bool.qs_show_user_switcher_for_single_user));
        boolean showQsUserSwitch = mKeyguardQsUserSwitchEnabled && isUserSwitcherEnabled;
        boolean showKeyguardUserSwitcher =
                !mKeyguardQsUserSwitchEnabled
+32 −2
Original line number Diff line number Diff line
@@ -889,13 +889,42 @@ public class NotificationPanelViewControllerTest extends SysuiTestCase {
        updateSmallestScreenWidth(300);
        when(mResources.getBoolean(
                com.android.internal.R.bool.config_keyguardUserSwitcher)).thenReturn(true);
        when(mUserManager.isUserSwitcherEnabled()).thenReturn(true);
        when(mResources.getBoolean(R.bool.qs_show_user_switcher_for_single_user)).thenReturn(false);
        when(mUserManager.isUserSwitcherEnabled(false)).thenReturn(true);

        updateSmallestScreenWidth(800);

        verify(mUserSwitcherStubView).inflate();
    }

    @Test
    public void testFinishInflate_userSwitcherDisabled_doNotInflateUserSwitchView() {
        givenViewAttached();
        when(mResources.getBoolean(
                com.android.internal.R.bool.config_keyguardUserSwitcher)).thenReturn(true);
        when(mResources.getBoolean(R.bool.qs_show_user_switcher_for_single_user)).thenReturn(false);
        when(mUserManager.isUserSwitcherEnabled(false /* showEvenIfNotActionable */))
                .thenReturn(false);

        mNotificationPanelViewController.onFinishInflate();

        verify(mUserSwitcherStubView, never()).inflate();
    }

    @Test
    public void testReInflateViews_userSwitcherDisabled_doNotInflateUserSwitchView() {
        givenViewAttached();
        when(mResources.getBoolean(
                com.android.internal.R.bool.config_keyguardUserSwitcher)).thenReturn(true);
        when(mResources.getBoolean(R.bool.qs_show_user_switcher_for_single_user)).thenReturn(false);
        when(mUserManager.isUserSwitcherEnabled(false /* showEvenIfNotActionable */))
                .thenReturn(false);

        mNotificationPanelViewController.reInflateViews();

        verify(mUserSwitcherStubView, never()).inflate();
    }

    @Test
    public void testCanCollapsePanelOnTouch_trueForKeyGuard() {
        mStatusBarStateController.setState(KEYGUARD);
@@ -1298,7 +1327,8 @@ public class NotificationPanelViewControllerTest extends SysuiTestCase {
    }

    private void updateMultiUserSetting(boolean enabled) {
        when(mUserManager.isUserSwitcherEnabled()).thenReturn(enabled);
        when(mResources.getBoolean(R.bool.qs_show_user_switcher_for_single_user)).thenReturn(false);
        when(mUserManager.isUserSwitcherEnabled(false)).thenReturn(enabled);
        final ArgumentCaptor<ContentObserver> observerCaptor =
                ArgumentCaptor.forClass(ContentObserver.class);
        verify(mContentResolver)