diff --git a/packages/SystemUI/src/com/android/systemui/biometrics/UdfpsKeyguardViewController.java b/packages/SystemUI/src/com/android/systemui/biometrics/UdfpsKeyguardViewController.java index 1a726ce4448fe..f5f07c8ca9890 100644 --- a/packages/SystemUI/src/com/android/systemui/biometrics/UdfpsKeyguardViewController.java +++ b/packages/SystemUI/src/com/android/systemui/biometrics/UdfpsKeyguardViewController.java @@ -475,7 +475,7 @@ public class UdfpsKeyguardViewController extends UdfpsAnimationViewController 0 && view.getVisibility() != View.VISIBLE) { view.setVisibility((View.VISIBLE)); } - float alpha = mQSPanelController.isBouncerInTransit() + float alpha = mQSPanelController.bouncerInTransit() ? BouncerPanelExpansionCalculator.aboutToShowBouncerProgress(progress) : ShadeInterpolation.getContentAlpha(progress); view.setAlpha(alpha); diff --git a/packages/SystemUI/src/com/android/systemui/qs/QSPanelController.java b/packages/SystemUI/src/com/android/systemui/qs/QSPanelController.java index 851307ac615f6..5670836566abb 100644 --- a/packages/SystemUI/src/com/android/systemui/qs/QSPanelController.java +++ b/packages/SystemUI/src/com/android/systemui/qs/QSPanelController.java @@ -254,8 +254,8 @@ public class QSPanelController extends QSPanelControllerBase { * * @return if bouncer is in transit */ - public boolean isBouncerInTransit() { - return mStatusBarKeyguardViewManager.isBouncerInTransit(); + public boolean bouncerInTransit() { + return mStatusBarKeyguardViewManager.bouncerIsInTransit(); } } diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/AmbientState.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/AmbientState.java index 25999a7f8dba6..2f1022a904e8e 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/AmbientState.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/AmbientState.java @@ -31,7 +31,6 @@ import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow import com.android.systemui.statusbar.notification.row.ExpandableView; import com.android.systemui.statusbar.notification.stack.StackScrollAlgorithm.BypassController; import com.android.systemui.statusbar.notification.stack.StackScrollAlgorithm.SectionProvider; -import com.android.systemui.statusbar.phone.StatusBarKeyguardViewManager; import javax.inject.Inject; @@ -46,10 +45,6 @@ public class AmbientState { private final SectionProvider mSectionProvider; private final BypassController mBypassController; - /** - * Used to read bouncer states. - */ - private StatusBarKeyguardViewManager mStatusBarKeyguardViewManager; private int mScrollY; private boolean mDimmed; private ActivatableNotificationView mActivatedChild; @@ -209,11 +204,9 @@ public class AmbientState { public AmbientState( Context context, @NonNull SectionProvider sectionProvider, - @NonNull BypassController bypassController, - @Nullable StatusBarKeyguardViewManager statusBarKeyguardViewManager) { + @NonNull BypassController bypassController) { mSectionProvider = sectionProvider; mBypassController = bypassController; - mStatusBarKeyguardViewManager = statusBarKeyguardViewManager; reload(context); } @@ -668,14 +661,4 @@ public class AmbientState { public int getStackTopMargin() { return mStackTopMargin; } - - /** - * Check to see if we are about to show bouncer. - * - * @return if bouncer expansion is between 0 and 1. - */ - public boolean isBouncerInTransit() { - return mStatusBarKeyguardViewManager != null - && mStatusBarKeyguardViewManager.isBouncerInTransit(); - } } diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/StackScrollAlgorithm.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/StackScrollAlgorithm.java index 9204c45ea1d5d..c0971337a19fd 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/StackScrollAlgorithm.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/StackScrollAlgorithm.java @@ -27,7 +27,6 @@ import android.view.ViewGroup; import androidx.annotation.VisibleForTesting; import com.android.internal.policy.SystemBarUtils; -import com.android.keyguard.BouncerPanelExpansionCalculator; import com.android.systemui.R; import com.android.systemui.animation.ShadeInterpolation; import com.android.systemui.statusbar.EmptyShadeView; @@ -432,9 +431,7 @@ public class StackScrollAlgorithm { } else if (ambientState.isExpansionChanging()) { // Adjust alpha for shade open & close. float expansion = ambientState.getExpansionFraction(); - viewState.alpha = ambientState.isBouncerInTransit() - ? BouncerPanelExpansionCalculator.aboutToShowBouncerProgress(expansion) - : ShadeInterpolation.getContentAlpha(expansion); + viewState.alpha = ShadeInterpolation.getContentAlpha(expansion); } if (ambientState.isShadeExpanded() && view.mustStayOnScreen() diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/PanelViewController.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/PanelViewController.java index 4ba8441fc9a67..d492c57dfa0ce 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/PanelViewController.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/PanelViewController.java @@ -48,6 +48,7 @@ import android.view.animation.Interpolator; import com.android.internal.jank.InteractionJankMonitor; import com.android.internal.logging.nano.MetricsProto.MetricsEvent; import com.android.internal.util.LatencyTracker; +import com.android.keyguard.BouncerPanelExpansionCalculator; import com.android.systemui.DejankUtils; import com.android.systemui.R; import com.android.systemui.animation.Interpolators; @@ -795,7 +796,9 @@ public abstract class PanelViewController { } mExpandedFraction = Math.min(1f, maxPanelHeight == 0 ? 0 : mExpandedHeight / maxPanelHeight); - mAmbientState.setExpansionFraction(mExpandedFraction); + mAmbientState.setExpansionFraction(mStatusBarKeyguardViewManager.bouncerIsInTransit() + ? BouncerPanelExpansionCalculator.aboutToShowBouncerProgress(mExpandedFraction) + : mExpandedFraction); onHeightUpdated(mExpandedHeight); updatePanelExpansionAndVisibility(); }); diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimController.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimController.java index 8c1ed19a8dcc4..cc2ff3fb4388c 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimController.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimController.java @@ -1074,7 +1074,7 @@ public class ScrimController implements ViewTreeObserver.OnPreDrawListener, Dump } private float getInterpolatedFraction() { - if (mStatusBarKeyguardViewManager.isBouncerInTransit()) { + if (mStatusBarKeyguardViewManager.bouncerIsInTransit()) { return BouncerPanelExpansionCalculator .aboutToShowBouncerProgress(mPanelExpansionFraction); } 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 49cd56f0176dc..641448750b8fe 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarKeyguardViewManager.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarKeyguardViewManager.java @@ -1376,7 +1376,7 @@ public class StatusBarKeyguardViewManager implements RemoteInputController.Callb /** * Returns if bouncer expansion is between 0 and 1 non-inclusive. */ - public boolean isBouncerInTransit() { + public boolean bouncerIsInTransit() { if (mBouncer == null) return false; return mBouncer.inTransit(); diff --git a/packages/SystemUI/tests/src/com/android/systemui/qs/QSFragmentTest.java b/packages/SystemUI/tests/src/com/android/systemui/qs/QSFragmentTest.java index a518b808688e4..4fbdb7c512bdb 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/qs/QSFragmentTest.java +++ b/packages/SystemUI/tests/src/com/android/systemui/qs/QSFragmentTest.java @@ -190,7 +190,7 @@ public class QSFragmentTest extends SysuiBaseFragmentTest { QSFragment fragment = resumeAndGetFragment(); enableSplitShade(); setStatusBarState(StatusBarState.KEYGUARD); - when(mQSPanelController.isBouncerInTransit()).thenReturn(false); + when(mQSPanelController.bouncerInTransit()).thenReturn(false); int transitionPxAmount = 123; float transitionProgress = 0.5f; @@ -206,7 +206,7 @@ public class QSFragmentTest extends SysuiBaseFragmentTest { QSFragment fragment = resumeAndGetFragment(); enableSplitShade(); setStatusBarState(StatusBarState.KEYGUARD); - when(mQSPanelController.isBouncerInTransit()).thenReturn(true); + when(mQSPanelController.bouncerInTransit()).thenReturn(true); int transitionPxAmount = 123; float transitionProgress = 0.5f; diff --git a/packages/SystemUI/tests/src/com/android/systemui/qs/QSPanelControllerTest.kt b/packages/SystemUI/tests/src/com/android/systemui/qs/QSPanelControllerTest.kt index 69d3f8b313c9d..689de50d5b4a9 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/qs/QSPanelControllerTest.kt +++ b/packages/SystemUI/tests/src/com/android/systemui/qs/QSPanelControllerTest.kt @@ -61,7 +61,7 @@ class QSPanelControllerTest : SysuiTestCase() { whenever(brightnessSliderFactory.create(any(), any())).thenReturn(brightnessSlider) whenever(brightnessControllerFactory.create(any())).thenReturn(brightnessController) whenever(qsPanel.resources).thenReturn(mContext.orCreateTestableResources.resources) - whenever(statusBarKeyguardViewManager.isBouncerInTransit()).thenReturn(false) + whenever(statusBarKeyguardViewManager.bouncerIsInTransit()).thenReturn(false) controller = QSPanelController( qsPanel, @@ -109,10 +109,10 @@ class QSPanelControllerTest : SysuiTestCase() { } @Test - fun testIsBouncerInTransit() { - whenever(statusBarKeyguardViewManager.isBouncerInTransit()).thenReturn(true) - assertThat(controller.isBouncerInTransit()).isEqualTo(true) - whenever(statusBarKeyguardViewManager.isBouncerInTransit()).thenReturn(false) - assertThat(controller.isBouncerInTransit()).isEqualTo(false) + fun testBouncerIsInTransit() { + whenever(statusBarKeyguardViewManager.bouncerIsInTransit()).thenReturn(true) + assertThat(controller.bouncerInTransit()).isEqualTo(true) + whenever(statusBarKeyguardViewManager.bouncerIsInTransit()).thenReturn(false) + assertThat(controller.bouncerInTransit()).isEqualTo(false) } } diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayoutTest.java b/packages/SystemUI/tests/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayoutTest.java index 077f6bfc5f315..7a92b96f40db2 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayoutTest.java +++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayoutTest.java @@ -64,7 +64,6 @@ import com.android.systemui.statusbar.notification.row.FooterView; import com.android.systemui.statusbar.phone.CentralSurfaces; import com.android.systemui.statusbar.phone.KeyguardBypassController; import com.android.systemui.statusbar.phone.ShadeController; -import com.android.systemui.statusbar.phone.StatusBarKeyguardViewManager; import com.android.systemui.statusbar.phone.UnlockedScreenOffAnimationController; import org.junit.Assert; @@ -105,7 +104,6 @@ public class NotificationStackScrollLayoutTest extends SysuiTestCase { @Mock private UnlockedScreenOffAnimationController mUnlockedScreenOffAnimationController; @Mock private NotificationShelf mNotificationShelf; @Mock private NotificationStackSizeCalculator mNotificationStackSizeCalculator; - @Mock private StatusBarKeyguardViewManager mStatusBarKeyguardViewManager; @Before @UiThreadTest @@ -113,8 +111,7 @@ public class NotificationStackScrollLayoutTest extends SysuiTestCase { allowTestableLooperAsMainThread(); // Interact with real instance of AmbientState. - mAmbientState = new AmbientState(mContext, mNotificationSectionsManager, mBypassController, - mStatusBarKeyguardViewManager); + mAmbientState = new AmbientState(mContext, mNotificationSectionsManager, mBypassController); // Inject dependencies before initializing the layout mDependency.injectTestDependency(SysuiStatusBarStateController.class, mBarState); diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/notification/stack/StackScrollAlgorithmTest.kt b/packages/SystemUI/tests/src/com/android/systemui/statusbar/notification/stack/StackScrollAlgorithmTest.kt index 6b4dc5883f08b..1da9bbcdb8368 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/notification/stack/StackScrollAlgorithmTest.kt +++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/notification/stack/StackScrollAlgorithmTest.kt @@ -8,7 +8,6 @@ import com.android.systemui.statusbar.EmptyShadeView import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow import com.android.systemui.statusbar.notification.stack.StackScrollAlgorithm.BypassController import com.android.systemui.statusbar.notification.stack.StackScrollAlgorithm.SectionProvider -import com.android.systemui.statusbar.phone.StatusBarKeyguardViewManager import com.google.common.truth.Truth.assertThat import org.junit.Before import org.junit.Test @@ -22,14 +21,10 @@ class StackScrollAlgorithmTest : SysuiTestCase() { private val stackScrollAlgorithm = StackScrollAlgorithm(context, hostView) private val expandableViewState = ExpandableViewState() private val notificationRow = mock(ExpandableNotificationRow::class.java) - private val mStatusBarKeyguardViewManager = mock(StatusBarKeyguardViewManager::class.java) - private val ambientState = AmbientState( - context, - SectionProvider { _, _ -> false }, - BypassController { false }, - mStatusBarKeyguardViewManager - ) + context, + SectionProvider { _, _ -> false }, + BypassController { false }) @Before fun setUp() { diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/ScrimControllerTest.java b/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/ScrimControllerTest.java index ff2c05b041601..69d7932a81fb8 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/ScrimControllerTest.java +++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/ScrimControllerTest.java @@ -1238,7 +1238,7 @@ public class ScrimControllerTest extends SysuiTestCase { @Test public void expansionNotificationAlpha_shadeLocked_bouncerActive_usesBouncerInterpolator() { - when(mStatusBarKeyguardViewManager.isBouncerInTransit()).thenReturn(true); + when(mStatusBarKeyguardViewManager.bouncerIsInTransit()).thenReturn(true); mScrimController.transitionTo(ScrimState.SHADE_LOCKED); @@ -1254,7 +1254,7 @@ public class ScrimControllerTest extends SysuiTestCase { @Test public void expansionNotificationAlpha_shadeLocked_bouncerNotActive_usesShadeInterpolator() { - when(mStatusBarKeyguardViewManager.isBouncerInTransit()).thenReturn(false); + when(mStatusBarKeyguardViewManager.bouncerIsInTransit()).thenReturn(false); mScrimController.transitionTo(ScrimState.SHADE_LOCKED); @@ -1269,7 +1269,7 @@ public class ScrimControllerTest extends SysuiTestCase { @Test public void notificationAlpha_unnocclusionAnimating_bouncerActive_usesKeyguardNotifAlpha() { - when(mStatusBarKeyguardViewManager.isBouncerInTransit()).thenReturn(true); + when(mStatusBarKeyguardViewManager.bouncerIsInTransit()).thenReturn(true); mScrimController.transitionTo(ScrimState.KEYGUARD); mScrimController.setUnocclusionAnimationRunning(true); @@ -1290,7 +1290,7 @@ public class ScrimControllerTest extends SysuiTestCase { @Test public void notificationAlpha_unnocclusionAnimating_bouncerNotActive_usesKeyguardNotifAlpha() { - when(mStatusBarKeyguardViewManager.isBouncerInTransit()).thenReturn(false); + when(mStatusBarKeyguardViewManager.bouncerIsInTransit()).thenReturn(false); mScrimController.transitionTo(ScrimState.KEYGUARD); mScrimController.setUnocclusionAnimationRunning(true); @@ -1311,7 +1311,7 @@ public class ScrimControllerTest extends SysuiTestCase { @Test public void notificationAlpha_inKeyguardState_bouncerActive_usesInvertedBouncerInterpolator() { - when(mStatusBarKeyguardViewManager.isBouncerInTransit()).thenReturn(true); + when(mStatusBarKeyguardViewManager.bouncerIsInTransit()).thenReturn(true); mScrimController.transitionTo(ScrimState.KEYGUARD); @@ -1330,7 +1330,7 @@ public class ScrimControllerTest extends SysuiTestCase { @Test public void notificationAlpha_inKeyguardState_bouncerNotActive_usesInvertedShadeInterpolator() { - when(mStatusBarKeyguardViewManager.isBouncerInTransit()).thenReturn(false); + when(mStatusBarKeyguardViewManager.bouncerIsInTransit()).thenReturn(false); mScrimController.transitionTo(ScrimState.KEYGUARD); 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 2b018727eb98c..90cbf540004ea 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 @@ -438,12 +438,12 @@ public class StatusBarKeyguardViewManagerTest extends SysuiTestCase { } @Test - public void testIsBouncerInTransit() { + public void testBouncerIsInTransit() { when(mBouncer.inTransit()).thenReturn(true); - Truth.assertThat(mStatusBarKeyguardViewManager.isBouncerInTransit()).isTrue(); + Truth.assertThat(mStatusBarKeyguardViewManager.bouncerIsInTransit()).isTrue(); when(mBouncer.inTransit()).thenReturn(false); - Truth.assertThat(mStatusBarKeyguardViewManager.isBouncerInTransit()).isFalse(); + Truth.assertThat(mStatusBarKeyguardViewManager.bouncerIsInTransit()).isFalse(); mBouncer = null; - Truth.assertThat(mStatusBarKeyguardViewManager.isBouncerInTransit()).isFalse(); + Truth.assertThat(mStatusBarKeyguardViewManager.bouncerIsInTransit()).isFalse(); } }