diff options
| author | 2021-11-09 19:34:32 +0000 | |
|---|---|---|
| committer | 2021-11-09 19:34:32 +0000 | |
| commit | e650ac67af53f6ef5abb35e95cf52ea46c022d30 (patch) | |
| tree | 66d8042efb47304b7e5c049a87673e693592a88f | |
| parent | 858baa8c977cd206d3b9d8912274f266e4faa574 (diff) | |
| parent | 84de69dcce7f407e4e3377144a9fa4a91e07e24b (diff) | |
Merge "[Status Bar Refactor] Move logic about hiding status bar icons for bouncer into a separate class and reference that in CollapsedStatusBarFragment." into sc-v2-dev am: 84de69dcce
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/16162822
Change-Id: I289e534887dc9867f2142159f486f573766adfd6
8 files changed, 177 insertions, 72 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/CollapsedStatusBarFragment.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/CollapsedStatusBarFragment.java index 6beafab32e55..fe621da17767 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/CollapsedStatusBarFragment.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/CollapsedStatusBarFragment.java @@ -106,6 +106,7 @@ public class CollapsedStatusBarFragment extends Fragment implements CommandQueue private final NotificationIconAreaController mNotificationIconAreaController; private final PanelExpansionStateManager mPanelExpansionStateManager; private final StatusBarIconController mStatusBarIconController; + private final StatusBarHideIconsForBouncerManager mStatusBarHideIconsForBouncerManager; private List<String> mBlockedIcons = new ArrayList<>(); @@ -134,6 +135,7 @@ public class CollapsedStatusBarFragment extends Fragment implements CommandQueue FeatureFlags featureFlags, Lazy<Optional<StatusBar>> statusBarOptionalLazy, StatusBarIconController statusBarIconController, + StatusBarHideIconsForBouncerManager statusBarHideIconsForBouncerManager, KeyguardStateController keyguardStateController, NetworkController networkController, StatusBarStateController statusBarStateController, @@ -149,6 +151,7 @@ public class CollapsedStatusBarFragment extends Fragment implements CommandQueue mFeatureFlags = featureFlags; mStatusBarOptionalLazy = statusBarOptionalLazy; mStatusBarIconController = statusBarIconController; + mStatusBarHideIconsForBouncerManager = statusBarHideIconsForBouncerManager; mKeyguardStateController = keyguardStateController; mNetworkController = networkController; mStatusBarStateController = statusBarStateController; @@ -374,10 +377,7 @@ public class CollapsedStatusBarFragment extends Fragment implements CommandQueue StatusBar::hideStatusBarIconsWhenExpanded).orElse(false)) { return true; } - if (statusBarOptional.map(StatusBar::hideStatusBarIconsForBouncer).orElse(false)) { - return true; - } - return false; + return mStatusBarHideIconsForBouncerManager.getShouldHideStatusBarIconsForBouncer(); } private void hideSystemIconArea(boolean animate) { diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBar.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBar.java index 84863cfe091a..f564f6fb5e3f 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBar.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBar.java @@ -340,6 +340,12 @@ public class StatusBar extends SystemUI implements void setWindowState(int state) { mStatusBarWindowState = state; mStatusBarWindowHidden = state == WINDOW_STATE_HIDDEN; + mStatusBarHideIconsForBouncerManager.setStatusBarWindowHidden(mStatusBarWindowHidden); + if (getStatusBarView() != null) { + // Should #updateHideIconsForBouncer always be called, regardless of whether we have a + // status bar view? If so, we can make #updateHideIconsForBouncer private. + mStatusBarHideIconsForBouncerManager.updateHideIconsForBouncer(/* animate= */ false); + } } void acquireGestureWakeLock(long time) { @@ -359,14 +365,6 @@ public class StatusBar extends SystemUI implements return mStatusBarMode; } - boolean getWereIconsJustHidden() { - return mWereIconsJustHidden; - } - - void setWereIconsJustHidden(boolean justHidden) { - mWereIconsJustHidden = justHidden; - } - void resendMessage(int msg) { mMessageRouter.cancelMessages(msg); mMessageRouter.sendMessage(msg); @@ -509,6 +507,7 @@ public class StatusBar extends SystemUI implements private final SystemStatusAnimationScheduler mAnimationScheduler; private final StatusBarLocationPublisher mStatusBarLocationPublisher; private final StatusBarIconController mStatusBarIconController; + private final StatusBarHideIconsForBouncerManager mStatusBarHideIconsForBouncerManager; // expanded notifications // the sliding/resizing panel within the notification window @@ -641,10 +640,7 @@ public class StatusBar extends SystemUI implements private int mLastLoggedStateFingerprint; private boolean mTopHidesStatusBar; private boolean mStatusBarWindowHidden; - private boolean mHideIconsForBouncer; private boolean mIsOccluded; - private boolean mWereIconsJustHidden; - private boolean mBouncerWasShowingWhenHidden; private boolean mIsLaunchingActivityOverLockscreen; private final UserSwitcherController mUserSwitcherController; @@ -777,6 +773,7 @@ public class StatusBar extends SystemUI implements SystemStatusAnimationScheduler animationScheduler, StatusBarLocationPublisher locationPublisher, StatusBarIconController statusBarIconController, + StatusBarHideIconsForBouncerManager statusBarHideIconsForBouncerManager, LockscreenShadeTransitionController lockscreenShadeTransitionController, FeatureFlags featureFlags, KeyguardUnlockAnimationController keyguardUnlockAnimationController, @@ -873,6 +870,7 @@ public class StatusBar extends SystemUI implements mAnimationScheduler = animationScheduler; mStatusBarLocationPublisher = locationPublisher; mStatusBarIconController = statusBarIconController; + mStatusBarHideIconsForBouncerManager = statusBarHideIconsForBouncerManager; mFeatureFlags = featureFlags; mKeyguardUnlockAnimationController = keyguardUnlockAnimationController; mMainHandler = mainHandler; @@ -938,6 +936,7 @@ public class StatusBar extends SystemUI implements mDisplay = mContext.getDisplay(); mDisplayId = mDisplay.getDisplayId(); updateDisplaySize(); + mStatusBarHideIconsForBouncerManager.setDisplayId(mDisplayId); // start old BaseStatusBar.start(). mWindowManagerService = WindowManagerGlobal.getWindowManagerService(); @@ -1198,6 +1197,7 @@ public class StatusBar extends SystemUI implements () -> Optional.of(this), mStatusBarIconController, + mStatusBarHideIconsForBouncerManager, mKeyguardStateController, mNetworkController, mStatusBarStateController, @@ -1872,7 +1872,7 @@ public class StatusBar extends SystemUI implements mNotificationLogger.onPanelExpandedChanged(isExpanded); } mPanelExpanded = isExpanded; - updateHideIconsForBouncer(false /* animate */); + mStatusBarHideIconsForBouncerManager.setPanelExpandedAndTriggerUpdate(isExpanded); mNotificationShadeWindowController.setPanelExpanded(isExpanded); mStatusBarStateController.setPanelExpanded(isExpanded); if (isExpanded && mStatusBarStateController.getState() != StatusBarState.KEYGUARD) { @@ -1916,46 +1916,8 @@ public class StatusBar extends SystemUI implements public void setOccluded(boolean occluded) { mIsOccluded = occluded; + mStatusBarHideIconsForBouncerManager.setIsOccludedAndTriggerUpdate(occluded); mScrimController.setKeyguardOccluded(occluded); - updateHideIconsForBouncer(false /* animate */); - } - - public boolean hideStatusBarIconsForBouncer() { - return mHideIconsForBouncer || mWereIconsJustHidden; - } - - /** - * Decides if the status bar (clock + notifications + signal cluster) should be visible - * or not when showing the bouncer. - * - * We want to hide it when: - * • User swipes up on the keyguard - * • Locked activity that doesn't show a status bar requests the bouncer - * - * @param animate should the change of the icons be animated. - */ - void updateHideIconsForBouncer(boolean animate) { - boolean hideBecauseApp = mTopHidesStatusBar && mIsOccluded - && (mStatusBarWindowHidden || mBouncerShowing); - boolean hideBecauseKeyguard = !mPanelExpanded && !mIsOccluded && mBouncerShowing; - boolean shouldHideIconsForBouncer = hideBecauseApp || hideBecauseKeyguard; - if (mHideIconsForBouncer != shouldHideIconsForBouncer) { - mHideIconsForBouncer = shouldHideIconsForBouncer; - if (!shouldHideIconsForBouncer && mBouncerWasShowingWhenHidden) { - // We're delaying the showing, since most of the time the fullscreen app will - // hide the icons again and we don't want them to fade in and out immediately again. - mWereIconsJustHidden = true; - mMainExecutor.executeDelayed(() -> { - mWereIconsJustHidden = false; - mCommandQueue.recomputeDisableFlags(mDisplayId, true); - }, 500); - } else { - mCommandQueue.recomputeDisableFlags(mDisplayId, animate); - } - } - if (shouldHideIconsForBouncer) { - mBouncerWasShowingWhenHidden = mBouncerShowing; - } } public boolean headsUpShouldBeVisible() { @@ -3500,7 +3462,7 @@ public class StatusBar extends SystemUI implements mKeyguardBypassController.setBouncerShowing(bouncerShowing); mPulseExpansionHandler.setBouncerShowing(bouncerShowing); setBouncerShowingForStatusBarComponents(bouncerShowing); - updateHideIconsForBouncer(true /* animate */); + mStatusBarHideIconsForBouncerManager.setBouncerShowingAndTriggerUpdate(bouncerShowing); mCommandQueue.recomputeDisableFlags(mDisplayId, true /* animate */); updateScrimController(); if (!mBouncerShowing) { diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarCommandQueueCallbacks.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarCommandQueueCallbacks.java index bb1daa252cdf..a77a097f0453 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarCommandQueueCallbacks.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarCommandQueueCallbacks.java @@ -95,6 +95,7 @@ public class StatusBarCommandQueueCallbacks implements CommandQueue.Callbacks { private final SysuiStatusBarStateController mStatusBarStateController; private final NotificationShadeWindowView mNotificationShadeWindowView; private final NotificationStackScrollLayoutController mNotificationStackScrollLayoutController; + private final StatusBarHideIconsForBouncerManager mStatusBarHideIconsForBouncerManager; private final PowerManager mPowerManager; private final VibratorHelper mVibratorHelper; private final Optional<Vibrator> mVibratorOptional; @@ -132,6 +133,7 @@ public class StatusBarCommandQueueCallbacks implements CommandQueue.Callbacks { SysuiStatusBarStateController statusBarStateController, NotificationShadeWindowView notificationShadeWindowView, NotificationStackScrollLayoutController notificationStackScrollLayoutController, + StatusBarHideIconsForBouncerManager statusBarHideIconsForBouncerManager, PowerManager powerManager, VibratorHelper vibratorHelper, Optional<Vibrator> vibratorOptional, @@ -158,6 +160,7 @@ public class StatusBarCommandQueueCallbacks implements CommandQueue.Callbacks { mStatusBarStateController = statusBarStateController; mNotificationShadeWindowView = notificationShadeWindowView; mNotificationStackScrollLayoutController = notificationStackScrollLayoutController; + mStatusBarHideIconsForBouncerManager = statusBarHideIconsForBouncerManager; mPowerManager = powerManager; mVibratorHelper = vibratorHelper; mVibratorOptional = vibratorOptional; @@ -509,14 +512,8 @@ public class StatusBarCommandQueueCallbacks implements CommandQueue.Callbacks { @Override public void setTopAppHidesStatusBar(boolean topAppHidesStatusBar) { - mStatusBar.setTopHidesStatusBar(topAppHidesStatusBar); - if (!topAppHidesStatusBar && mStatusBar.getWereIconsJustHidden()) { - // Immediately update the icon hidden state, since that should only apply if we're - // staying fullscreen. - mStatusBar.setWereIconsJustHidden(false); - mCommandQueue.recomputeDisableFlags(mDisplayId, true); - } - mStatusBar.updateHideIconsForBouncer(true /* animate */); + mStatusBarHideIconsForBouncerManager + .setTopAppHidesStatusBarAndTriggerUpdate(topAppHidesStatusBar); } @Override @@ -534,13 +531,11 @@ public class StatusBarCommandQueueCallbacks implements CommandQueue.Callbacks { if (StatusBar.DEBUG_WINDOW_STATE) { Log.d(StatusBar.TAG, "Status bar " + windowStateToString(state)); } - if (mStatusBar.getStatusBarView() != null) { - if (!showing && mStatusBarStateController.getState() == StatusBarState.SHADE) { + if (mStatusBar.getStatusBarView() != null + && !showing + && mStatusBarStateController.getState() == StatusBarState.SHADE) { mNotificationPanelViewController.collapsePanel( false /* animate */, false /* delayed */, 1.0f /* speedUpFactor */); - } - - mStatusBar.updateHideIconsForBouncer(false /* animate */); } } diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarHideIconsForBouncerManager.kt b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarHideIconsForBouncerManager.kt new file mode 100644 index 000000000000..d2181d0480d2 --- /dev/null +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarHideIconsForBouncerManager.kt @@ -0,0 +1,133 @@ +package com.android.systemui.statusbar.phone + +import com.android.systemui.Dumpable +import com.android.systemui.dagger.SysUISingleton +import com.android.systemui.dagger.qualifiers.Main +import com.android.systemui.dump.DumpManager +import com.android.systemui.statusbar.CommandQueue +import com.android.systemui.util.concurrency.DelayableExecutor +import java.io.FileDescriptor +import java.io.PrintWriter +import javax.inject.Inject + +/** + * A class that manages if the status bar (clock + notifications + signal cluster) should be visible + * or not when showing the bouncer. + * + * We want to hide it when: + * • User swipes up on the keyguard + * • Locked activity that doesn't show a status bar requests the bouncer. + * + * [getShouldHideStatusBarIconsForBouncer] is the main exported method for this class. The other + * methods set state variables that are used in the calculation or manually trigger an update. + */ +@SysUISingleton +class StatusBarHideIconsForBouncerManager @Inject constructor( + private val commandQueue: CommandQueue, + @Main private val mainExecutor: DelayableExecutor, + dumpManager: DumpManager +) : Dumpable { + // State variables set by external classes. + private var panelExpanded: Boolean = false + private var isOccluded: Boolean = false + private var bouncerShowing: Boolean = false + private var topAppHidesStatusBar: Boolean = false + private var statusBarWindowHidden: Boolean = false + private var displayId: Int = 0 + + // State variables calculated internally. + private var hideIconsForBouncer: Boolean = false + private var bouncerWasShowingWhenHidden: Boolean = false + private var wereIconsJustHidden: Boolean = false + + init { + dumpManager.registerDumpable(this) + } + + /** Returns true if the status bar icons should be hidden in the bouncer. */ + fun getShouldHideStatusBarIconsForBouncer(): Boolean { + return hideIconsForBouncer || wereIconsJustHidden + } + + fun setStatusBarWindowHidden(statusBarWindowHidden: Boolean) { + this.statusBarWindowHidden = statusBarWindowHidden + } + + fun setDisplayId(displayId: Int) { + this.displayId = displayId + } + + fun setPanelExpandedAndTriggerUpdate(panelExpanded: Boolean) { + this.panelExpanded = panelExpanded + updateHideIconsForBouncer(animate = false) + } + + fun setIsOccludedAndTriggerUpdate(isOccluded: Boolean) { + this.isOccluded = isOccluded + updateHideIconsForBouncer(animate = false) + } + + fun setBouncerShowingAndTriggerUpdate(bouncerShowing: Boolean) { + this.bouncerShowing = bouncerShowing + updateHideIconsForBouncer(animate = true) + } + + fun setTopAppHidesStatusBarAndTriggerUpdate(topAppHidesStatusBar: Boolean) { + this.topAppHidesStatusBar = topAppHidesStatusBar + if (!topAppHidesStatusBar && wereIconsJustHidden) { + // Immediately update the icon hidden state, since that should only apply if we're + // staying fullscreen. + wereIconsJustHidden = false + commandQueue.recomputeDisableFlags(displayId, /* animate= */ true) + } + updateHideIconsForBouncer(animate = true) + } + + /** + * Updates whether the status bar icons should be hidden in the bouncer. May trigger + * [commandQueue.recomputeDisableFlags] if the icon visibility status changes. + */ + fun updateHideIconsForBouncer(animate: Boolean) { + val hideBecauseApp = + topAppHidesStatusBar && + isOccluded && + (statusBarWindowHidden || bouncerShowing) + val hideBecauseKeyguard = !panelExpanded && !isOccluded && bouncerShowing + val shouldHideIconsForBouncer = hideBecauseApp || hideBecauseKeyguard + if (hideIconsForBouncer != shouldHideIconsForBouncer) { + hideIconsForBouncer = shouldHideIconsForBouncer + if (!shouldHideIconsForBouncer && bouncerWasShowingWhenHidden) { + // We're delaying the showing, since most of the time the fullscreen app will + // hide the icons again and we don't want them to fade in and out immediately again. + wereIconsJustHidden = true + mainExecutor.executeDelayed( + { + wereIconsJustHidden = false + commandQueue.recomputeDisableFlags(displayId, true) + }, + 500 + ) + } else { + commandQueue.recomputeDisableFlags(displayId, animate) + } + } + if (shouldHideIconsForBouncer) { + bouncerWasShowingWhenHidden = bouncerShowing + } + } + + override fun dump(fd: FileDescriptor, pw: PrintWriter, args: Array<out String>) { + pw.println("---- State variables set externally ----") + pw.println("panelExpanded=$panelExpanded") + pw.println("isOccluded=$isOccluded") + pw.println("bouncerShowing=$bouncerShowing") + pw.println("topAppHideStatusBar=$topAppHidesStatusBar") + pw.println("statusBarWindowHidden=$statusBarWindowHidden") + pw.println("displayId=$displayId") + + pw.println("---- State variables calculated internally ----") + pw.println("hideIconsForBouncer=$hideIconsForBouncer") + pw.println("bouncerWasShowingWhenHidden=$bouncerWasShowingWhenHidden") + pw.println("wereIconsJustHidden=$wereIconsJustHidden") + } +} diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/dagger/StatusBarPhoneModule.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/dagger/StatusBarPhoneModule.java index 5a3cb6f569a6..3259f6b8027b 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/dagger/StatusBarPhoneModule.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/dagger/StatusBarPhoneModule.java @@ -92,6 +92,7 @@ import com.android.systemui.statusbar.phone.PhoneStatusBarViewController; import com.android.systemui.statusbar.phone.ScrimController; import com.android.systemui.statusbar.phone.ShadeController; import com.android.systemui.statusbar.phone.StatusBar; +import com.android.systemui.statusbar.phone.StatusBarHideIconsForBouncerManager; import com.android.systemui.statusbar.phone.StatusBarIconController; import com.android.systemui.statusbar.phone.StatusBarKeyguardViewManager; import com.android.systemui.statusbar.phone.StatusBarLocationPublisher; @@ -224,6 +225,7 @@ public interface StatusBarPhoneModule { SystemStatusAnimationScheduler animationScheduler, StatusBarLocationPublisher locationPublisher, StatusBarIconController statusBarIconController, + StatusBarHideIconsForBouncerManager statusBarHideIconsForBouncerManager, LockscreenShadeTransitionController transitionController, FeatureFlags featureFlags, KeyguardUnlockAnimationController keyguardUnlockAnimationController, @@ -322,6 +324,7 @@ public interface StatusBarPhoneModule { animationScheduler, locationPublisher, statusBarIconController, + statusBarHideIconsForBouncerManager, transitionController, featureFlags, keyguardUnlockAnimationController, diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/CollapsedStatusBarFragmentTest.java b/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/CollapsedStatusBarFragmentTest.java index fd3783f02521..c300021ac53a 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/CollapsedStatusBarFragmentTest.java +++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/CollapsedStatusBarFragmentTest.java @@ -38,6 +38,7 @@ import androidx.test.filters.SmallTest; import com.android.systemui.R; import com.android.systemui.SysuiBaseFragmentTest; +import com.android.systemui.dump.DumpManager; import com.android.systemui.flags.FeatureFlags; import com.android.systemui.log.LogBuffer; import com.android.systemui.log.LogcatEchoTracker; @@ -50,6 +51,8 @@ import com.android.systemui.statusbar.events.SystemStatusAnimationScheduler; import com.android.systemui.statusbar.phone.ongoingcall.OngoingCallController; import com.android.systemui.statusbar.phone.panelstate.PanelExpansionStateManager; import com.android.systemui.statusbar.policy.KeyguardStateController; +import com.android.systemui.util.concurrency.FakeExecutor; +import com.android.systemui.util.time.FakeSystemClock; import org.junit.Before; import org.junit.Ignore; @@ -264,6 +267,8 @@ public class CollapsedStatusBarFragmentTest extends SysuiBaseFragmentTest { mock(FeatureFlags.class), () -> Optional.of(mStatusBar), mStatusBarIconController, + new StatusBarHideIconsForBouncerManager( + mCommandQueue, new FakeExecutor(new FakeSystemClock()), new DumpManager()), mKeyguardStateController, mNetworkController, mStatusBarStateController, diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/StatusBarCommandQueueCallbacksTest.java b/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/StatusBarCommandQueueCallbacksTest.java index 8555306bae04..0131293656e7 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/StatusBarCommandQueueCallbacksTest.java +++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/StatusBarCommandQueueCallbacksTest.java @@ -36,6 +36,7 @@ import com.android.internal.logging.testing.FakeMetricsLogger; import com.android.keyguard.KeyguardUpdateMonitor; import com.android.systemui.SysuiTestCase; import com.android.systemui.assist.AssistManager; +import com.android.systemui.dump.DumpManager; import com.android.systemui.keyguard.WakefulnessLifecycle; import com.android.systemui.statusbar.CommandQueue; import com.android.systemui.statusbar.DisableFlagsLogger; @@ -45,6 +46,8 @@ import com.android.systemui.statusbar.notification.stack.NotificationStackScroll import com.android.systemui.statusbar.policy.DeviceProvisionedController; import com.android.systemui.statusbar.policy.KeyguardStateController; import com.android.systemui.statusbar.policy.RemoteInputQuickSettingsDisabler; +import com.android.systemui.util.concurrency.FakeExecutor; +import com.android.systemui.util.time.FakeSystemClock; import com.android.wm.shell.legacysplitscreen.LegacySplitScreen; import org.junit.Before; @@ -109,6 +112,8 @@ public class StatusBarCommandQueueCallbacksTest extends SysuiTestCase { mStatusBarStateController, mNotificationShadeWindowView, mNotificationStackScrollLayoutController, + new StatusBarHideIconsForBouncerManager( + mCommandQueue, new FakeExecutor(new FakeSystemClock()), new DumpManager()), mPowerManager, mVibratorHelper, Optional.of(mVibrator), diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/StatusBarTest.java b/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/StatusBarTest.java index 7a93d03a5843..bd87a5021f8b 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/StatusBarTest.java +++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/StatusBarTest.java @@ -279,6 +279,7 @@ public class StatusBarTest extends SysuiTestCase { private FakeExecutor mMainExecutor = new FakeExecutor(mFakeSystemClock); private FakeExecutor mUiBgExecutor = new FakeExecutor(mFakeSystemClock); private InitController mInitController = new InitController(); + private final DumpManager mDumpManager = new DumpManager(); @Before public void setup() throws Exception { @@ -332,7 +333,7 @@ public class StatusBarTest extends SysuiTestCase { }).when(mStatusBarKeyguardViewManager).addAfterKeyguardGoneRunnable(any()); WakefulnessLifecycle wakefulnessLifecycle = - new WakefulnessLifecycle(mContext, mIWallpaperManager, mock(DumpManager.class)); + new WakefulnessLifecycle(mContext, mIWallpaperManager, mDumpManager); wakefulnessLifecycle.dispatchStartedWakingUp(PowerManager.WAKE_REASON_UNKNOWN); wakefulnessLifecycle.dispatchFinishedWakingUp(); @@ -390,7 +391,7 @@ public class StatusBarTest extends SysuiTestCase { mNetworkController, mBatteryController, mColorExtractor, - new ScreenLifecycle(mock(DumpManager.class)), + new ScreenLifecycle(mDumpManager), wakefulnessLifecycle, mStatusBarStateController, Optional.of(mBubblesManager), @@ -440,6 +441,7 @@ public class StatusBarTest extends SysuiTestCase { mAnimationScheduler, mLocationPublisher, mIconController, + new StatusBarHideIconsForBouncerManager(mCommandQueue, mMainExecutor, mDumpManager), mLockscreenTransitionController, mFeatureFlags, mKeyguardUnlockAnimationController, @@ -450,7 +452,7 @@ public class StatusBarTest extends SysuiTestCase { mUnlockedScreenOffAnimationController, Optional.of(mStartingSurface), mTunerService, - mock(DumpManager.class), + mDumpManager, mActivityLaunchAnimator); when(mKeyguardViewMediator.registerStatusBar( any(StatusBar.class), |