From 71dd484427d3da059ee43c1d6cea1352f5f85365 Mon Sep 17 00:00:00 2001 From: Lucas Dupin Date: Tue, 29 May 2018 15:41:03 -0700 Subject: [PATCH] Do not request focus during wake and unlock Focus was being required because the expansion of the panel would trigger onFullyShown. Bouncer shouldn't need any translation during WAKE_AND_UNLOCK. Test: atest packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/StatusBarKeyguardViewManagerTest.java Test: go/sysui-bouncer-tests Change-Id: I6d5c17ba89e14384859cf7fc91ca5cc2815dbfd9 Fixes: 80345339 --- .../phone/StatusBarKeyguardViewManager.java | 6 ++++-- .../phone/StatusBarKeyguardViewManagerTest.java | 13 ++++++++++--- 2 files changed, 14 insertions(+), 5 deletions(-) diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarKeyguardViewManager.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarKeyguardViewManager.java index 5f5d12e73f663..5001d4ffa13ca 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarKeyguardViewManager.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarKeyguardViewManager.java @@ -173,11 +173,13 @@ public class StatusBarKeyguardViewManager implements RemoteInputController.Callb || mStatusBar.isFullScreenUserSwitcherState()) { mBouncer.setExpansion(KeyguardBouncer.EXPANSION_VISIBLE); } else if (mShowing && !mDozing) { - mBouncer.setExpansion(expansion); + if (!isWakeAndUnlocking()) { + mBouncer.setExpansion(expansion); + } if (expansion != KeyguardBouncer.EXPANSION_HIDDEN && tracking && mStatusBar.isKeyguardCurrentlySecure() && !mBouncer.isShowing() && !mBouncer.isAnimatingAway()) { - mBouncer.show(false /* resetSecuritySelection */, false /* animated */); + mBouncer.show(false /* resetSecuritySelection */, false /* scrimmed */); } } } diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/StatusBarKeyguardViewManagerTest.java b/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/StatusBarKeyguardViewManagerTest.java index 8340ab2e7935a..85135ac77b3ce 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/StatusBarKeyguardViewManagerTest.java +++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/StatusBarKeyguardViewManagerTest.java @@ -16,14 +16,12 @@ package com.android.systemui.statusbar.phone; -import static com.google.common.truth.Truth.assertThat; - import static org.mockito.ArgumentMatchers.anyBoolean; +import static org.mockito.ArgumentMatchers.anyFloat; import static org.mockito.ArgumentMatchers.eq; import static org.mockito.Mockito.never; import static org.mockito.Mockito.reset; import static org.mockito.Mockito.verify; -import static org.mockito.Mockito.verifyZeroInteractions; import static org.mockito.Mockito.when; import android.content.Context; @@ -170,6 +168,15 @@ public class StatusBarKeyguardViewManagerTest extends SysuiTestCase { verify(mBouncer, never()).setExpansion(eq(0.5f)); } + @Test + public void onPanelExpansionChanged_neverTranslatesBouncerWhenWakeAndUnlock() { + when(mFingerprintUnlockController.getMode()) + .thenReturn(FingerprintUnlockController.MODE_WAKE_AND_UNLOCK); + mStatusBarKeyguardViewManager.onPanelExpansionChanged(KeyguardBouncer.EXPANSION_VISIBLE, + false /* tracking */); + verify(mBouncer, never()).setExpansion(anyFloat()); + } + private class TestableStatusBarKeyguardViewManager extends StatusBarKeyguardViewManager { public TestableStatusBarKeyguardViewManager(Context context,