Merge "Hide multi user switcher on keyguard screen when disabled" into tm-dev
This commit is contained in:
@@ -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
|
||||
|
||||
@@ -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)
|
||||
|
||||
Reference in New Issue
Block a user