Merge "Revert "Revert "Extract camera launch code from NPVC into Centra..."" into tm-qpr-dev am: 4264971f61
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/20429413 Change-Id: Ic8b269b4d6e6b17c3a279d23cd5c564288757e2c Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -0,0 +1,73 @@
|
||||
/*
|
||||
* Copyright (C) 2022 The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package com.android.systemui.shade;
|
||||
|
||||
import com.android.systemui.camera.CameraGestureHelper;
|
||||
import com.android.systemui.dagger.SysUISingleton;
|
||||
import com.android.systemui.statusbar.phone.KeyguardBypassController;
|
||||
|
||||
import javax.inject.Inject;
|
||||
|
||||
/** Handles launching camera from Shade. */
|
||||
@SysUISingleton
|
||||
public class CameraLauncher {
|
||||
private final CameraGestureHelper mCameraGestureHelper;
|
||||
private final KeyguardBypassController mKeyguardBypassController;
|
||||
|
||||
private boolean mLaunchingAffordance;
|
||||
|
||||
@Inject
|
||||
public CameraLauncher(
|
||||
CameraGestureHelper cameraGestureHelper,
|
||||
KeyguardBypassController keyguardBypassController
|
||||
) {
|
||||
mCameraGestureHelper = cameraGestureHelper;
|
||||
mKeyguardBypassController = keyguardBypassController;
|
||||
}
|
||||
|
||||
/** Launches the camera. */
|
||||
public void launchCamera(int source, boolean isShadeFullyCollapsed) {
|
||||
if (!isShadeFullyCollapsed) {
|
||||
setLaunchingAffordance(true);
|
||||
}
|
||||
|
||||
mCameraGestureHelper.launchCamera(source);
|
||||
}
|
||||
|
||||
/**
|
||||
* Set whether we are currently launching an affordance. This is currently only set when
|
||||
* launched via a camera gesture.
|
||||
*/
|
||||
public void setLaunchingAffordance(boolean launchingAffordance) {
|
||||
mLaunchingAffordance = launchingAffordance;
|
||||
mKeyguardBypassController.setLaunchingAffordance(launchingAffordance);
|
||||
}
|
||||
|
||||
/**
|
||||
* Return true when a bottom affordance is launching an occluded activity with a splash screen.
|
||||
*/
|
||||
public boolean isLaunchingAffordance() {
|
||||
return mLaunchingAffordance;
|
||||
}
|
||||
|
||||
/**
|
||||
* Whether the camera application can be launched for the camera launch gesture.
|
||||
*/
|
||||
public boolean canCameraGestureBeLaunched(int barState) {
|
||||
return mCameraGestureHelper.canCameraGestureBeLaunched(barState);
|
||||
}
|
||||
}
|
||||
@@ -124,7 +124,6 @@ import com.android.systemui.animation.ActivityLaunchAnimator;
|
||||
import com.android.systemui.animation.Interpolators;
|
||||
import com.android.systemui.animation.LaunchAnimator;
|
||||
import com.android.systemui.biometrics.AuthController;
|
||||
import com.android.systemui.camera.CameraGestureHelper;
|
||||
import com.android.systemui.classifier.Classifier;
|
||||
import com.android.systemui.classifier.FalsingCollector;
|
||||
import com.android.systemui.dagger.qualifiers.DisplayId;
|
||||
@@ -464,7 +463,6 @@ public final class NotificationPanelViewController implements Dumpable {
|
||||
private boolean mCollapsedOnDown;
|
||||
private boolean mClosingWithAlphaFadeOut;
|
||||
private boolean mHeadsUpAnimatingAway;
|
||||
private boolean mLaunchingAffordance;
|
||||
private final FalsingManager mFalsingManager;
|
||||
private final FalsingCollector mFalsingCollector;
|
||||
|
||||
@@ -615,7 +613,6 @@ public final class NotificationPanelViewController implements Dumpable {
|
||||
private final NotificationListContainer mNotificationListContainer;
|
||||
private final NotificationStackSizeCalculator mNotificationStackSizeCalculator;
|
||||
private final NPVCDownEventState.Buffer mLastDownEvents;
|
||||
private final CameraGestureHelper mCameraGestureHelper;
|
||||
private final KeyguardBottomAreaViewModel mKeyguardBottomAreaViewModel;
|
||||
private final KeyguardBottomAreaInteractor mKeyguardBottomAreaInteractor;
|
||||
private float mMinExpandHeight;
|
||||
@@ -743,7 +740,6 @@ public final class NotificationPanelViewController implements Dumpable {
|
||||
UnlockedScreenOffAnimationController unlockedScreenOffAnimationController,
|
||||
ShadeTransitionController shadeTransitionController,
|
||||
SystemClock systemClock,
|
||||
CameraGestureHelper cameraGestureHelper,
|
||||
KeyguardBottomAreaViewModel keyguardBottomAreaViewModel,
|
||||
KeyguardBottomAreaInteractor keyguardBottomAreaInteractor,
|
||||
DumpManager dumpManager) {
|
||||
@@ -924,7 +920,6 @@ public final class NotificationPanelViewController implements Dumpable {
|
||||
unlockAnimationStarted(playingCannedAnimation, isWakeAndUnlock, startDelay);
|
||||
}
|
||||
});
|
||||
mCameraGestureHelper = cameraGestureHelper;
|
||||
mKeyguardBottomAreaInteractor = keyguardBottomAreaInteractor;
|
||||
dumpManager.registerDumpable(this);
|
||||
}
|
||||
@@ -3946,6 +3941,10 @@ public final class NotificationPanelViewController implements Dumpable {
|
||||
}
|
||||
}
|
||||
|
||||
public int getBarState() {
|
||||
return mBarState;
|
||||
}
|
||||
|
||||
private boolean isOnKeyguard() {
|
||||
return mBarState == KEYGUARD;
|
||||
}
|
||||
@@ -3991,35 +3990,6 @@ public final class NotificationPanelViewController implements Dumpable {
|
||||
&& mBarState == StatusBarState.SHADE;
|
||||
}
|
||||
|
||||
/** Launches the camera. */
|
||||
public void launchCamera(int source) {
|
||||
if (!isFullyCollapsed()) {
|
||||
setLaunchingAffordance(true);
|
||||
}
|
||||
|
||||
mCameraGestureHelper.launchCamera(source);
|
||||
}
|
||||
|
||||
public void onAffordanceLaunchEnded() {
|
||||
setLaunchingAffordance(false);
|
||||
}
|
||||
|
||||
/** Set whether we are currently launching an affordance (i.e. camera gesture). */
|
||||
private void setLaunchingAffordance(boolean launchingAffordance) {
|
||||
mLaunchingAffordance = launchingAffordance;
|
||||
mKeyguardBypassController.setLaunchingAffordance(launchingAffordance);
|
||||
}
|
||||
|
||||
/** Returns whether a bottom affordance is launching an occluded activity with splash screen. */
|
||||
public boolean isLaunchingAffordanceWithPreview() {
|
||||
return mLaunchingAffordance;
|
||||
}
|
||||
|
||||
/** Whether the camera application can be launched by the camera launch gesture. */
|
||||
public boolean canCameraGestureBeLaunched() {
|
||||
return mCameraGestureHelper.canCameraGestureBeLaunched(mBarState);
|
||||
}
|
||||
|
||||
public boolean hideStatusBarIconsWhenExpanded() {
|
||||
if (mIsLaunchAnimationRunning) {
|
||||
return mHideIconsDuringLaunchAnimation;
|
||||
@@ -4358,7 +4328,6 @@ public final class NotificationPanelViewController implements Dumpable {
|
||||
ipw.print("mCollapsedOnDown="); ipw.println(mCollapsedOnDown);
|
||||
ipw.print("mClosingWithAlphaFadeOut="); ipw.println(mClosingWithAlphaFadeOut);
|
||||
ipw.print("mHeadsUpAnimatingAway="); ipw.println(mHeadsUpAnimatingAway);
|
||||
ipw.print("mLaunchingAffordance="); ipw.println(mLaunchingAffordance);
|
||||
ipw.print("mShowIconsWhenExpanded="); ipw.println(mShowIconsWhenExpanded);
|
||||
ipw.print("mIndicationBottomPadding="); ipw.println(mIndicationBottomPadding);
|
||||
ipw.print("mAmbientIndicationBottomPadding="); ipw.println(mAmbientIndicationBottomPadding);
|
||||
|
||||
@@ -55,6 +55,7 @@ import com.android.systemui.dagger.qualifiers.DisplayId;
|
||||
import com.android.systemui.dagger.qualifiers.Main;
|
||||
import com.android.systemui.keyguard.WakefulnessLifecycle;
|
||||
import com.android.systemui.qs.QSPanelController;
|
||||
import com.android.systemui.shade.CameraLauncher;
|
||||
import com.android.systemui.shade.NotificationPanelViewController;
|
||||
import com.android.systemui.shade.ShadeController;
|
||||
import com.android.systemui.statusbar.CommandQueue;
|
||||
@@ -71,6 +72,8 @@ import java.util.Optional;
|
||||
|
||||
import javax.inject.Inject;
|
||||
|
||||
import dagger.Lazy;
|
||||
|
||||
/** */
|
||||
@CentralSurfacesComponent.CentralSurfacesScope
|
||||
public class CentralSurfacesCommandQueueCallbacks implements CommandQueue.Callbacks {
|
||||
@@ -99,6 +102,7 @@ public class CentralSurfacesCommandQueueCallbacks implements CommandQueue.Callba
|
||||
private final boolean mVibrateOnOpening;
|
||||
private final VibrationEffect mCameraLaunchGestureVibrationEffect;
|
||||
private final SystemBarAttributesListener mSystemBarAttributesListener;
|
||||
private final Lazy<CameraLauncher> mCameraLauncherLazy;
|
||||
|
||||
private static final VibrationAttributes HARDWARE_FEEDBACK_VIBRATION_ATTRIBUTES =
|
||||
VibrationAttributes.createForUsage(VibrationAttributes.USAGE_HARDWARE_FEEDBACK);
|
||||
@@ -128,8 +132,8 @@ public class CentralSurfacesCommandQueueCallbacks implements CommandQueue.Callba
|
||||
Optional<Vibrator> vibratorOptional,
|
||||
DisableFlagsLogger disableFlagsLogger,
|
||||
@DisplayId int displayId,
|
||||
SystemBarAttributesListener systemBarAttributesListener) {
|
||||
|
||||
SystemBarAttributesListener systemBarAttributesListener,
|
||||
Lazy<CameraLauncher> cameraLauncherLazy) {
|
||||
mCentralSurfaces = centralSurfaces;
|
||||
mContext = context;
|
||||
mShadeController = shadeController;
|
||||
@@ -152,6 +156,7 @@ public class CentralSurfacesCommandQueueCallbacks implements CommandQueue.Callba
|
||||
mVibratorOptional = vibratorOptional;
|
||||
mDisableFlagsLogger = disableFlagsLogger;
|
||||
mDisplayId = displayId;
|
||||
mCameraLauncherLazy = cameraLauncherLazy;
|
||||
|
||||
mVibrateOnOpening = resources.getBoolean(R.bool.config_vibrateOnIconAnimation);
|
||||
mCameraLaunchGestureVibrationEffect = getCameraGestureVibrationEffect(
|
||||
@@ -346,7 +351,8 @@ public class CentralSurfacesCommandQueueCallbacks implements CommandQueue.Callba
|
||||
mCentralSurfaces.setLaunchCameraOnFinishedGoingToSleep(true);
|
||||
return;
|
||||
}
|
||||
if (!mNotificationPanelViewController.canCameraGestureBeLaunched()) {
|
||||
if (!mCameraLauncherLazy.get().canCameraGestureBeLaunched(
|
||||
mNotificationPanelViewController.getBarState())) {
|
||||
if (CentralSurfaces.DEBUG_CAMERA_LIFT) {
|
||||
Slog.d(CentralSurfaces.TAG, "Can't launch camera right now");
|
||||
}
|
||||
@@ -383,7 +389,8 @@ public class CentralSurfacesCommandQueueCallbacks implements CommandQueue.Callba
|
||||
if (mStatusBarKeyguardViewManager.isBouncerShowing()) {
|
||||
mStatusBarKeyguardViewManager.reset(true /* hide */);
|
||||
}
|
||||
mNotificationPanelViewController.launchCamera(source);
|
||||
mCameraLauncherLazy.get().launchCamera(source,
|
||||
mNotificationPanelViewController.isFullyCollapsed());
|
||||
mCentralSurfaces.updateScrimController();
|
||||
} else {
|
||||
// We need to defer the camera launch until the screen comes on, since otherwise
|
||||
|
||||
@@ -177,6 +177,7 @@ import com.android.systemui.recents.ScreenPinningRequest;
|
||||
import com.android.systemui.ripple.RippleShader.RippleShape;
|
||||
import com.android.systemui.scrim.ScrimView;
|
||||
import com.android.systemui.settings.brightness.BrightnessSliderController;
|
||||
import com.android.systemui.shade.CameraLauncher;
|
||||
import com.android.systemui.shade.NotificationPanelViewController;
|
||||
import com.android.systemui.shade.NotificationShadeWindowView;
|
||||
import com.android.systemui.shade.NotificationShadeWindowViewController;
|
||||
@@ -485,6 +486,7 @@ public class CentralSurfacesImpl implements CoreStartable, CentralSurfaces {
|
||||
private final PluginManager mPluginManager;
|
||||
private final ShadeController mShadeController;
|
||||
private final InitController mInitController;
|
||||
private final Lazy<CameraLauncher> mCameraLauncherLazy;
|
||||
|
||||
private final PluginDependencyProvider mPluginDependencyProvider;
|
||||
private final KeyguardDismissUtil mKeyguardDismissUtil;
|
||||
@@ -617,6 +619,7 @@ public class CentralSurfacesImpl implements CoreStartable, CentralSurfaces {
|
||||
|
||||
private Runnable mLaunchTransitionEndRunnable;
|
||||
private Runnable mLaunchTransitionCancelRunnable;
|
||||
private boolean mLaunchingAffordance;
|
||||
private boolean mLaunchCameraWhenFinishedWaking;
|
||||
private boolean mLaunchCameraOnFinishedGoingToSleep;
|
||||
private boolean mLaunchEmergencyActionWhenFinishedWaking;
|
||||
@@ -761,7 +764,8 @@ public class CentralSurfacesImpl implements CoreStartable, CentralSurfaces {
|
||||
InteractionJankMonitor jankMonitor,
|
||||
DeviceStateManager deviceStateManager,
|
||||
WiredChargingRippleController wiredChargingRippleController,
|
||||
IDreamManager dreamManager) {
|
||||
IDreamManager dreamManager,
|
||||
Lazy<CameraLauncher> cameraLauncherLazy) {
|
||||
mContext = context;
|
||||
mNotificationsController = notificationsController;
|
||||
mFragmentService = fragmentService;
|
||||
@@ -838,6 +842,7 @@ public class CentralSurfacesImpl implements CoreStartable, CentralSurfaces {
|
||||
mMessageRouter = messageRouter;
|
||||
mWallpaperManager = wallpaperManager;
|
||||
mJankMonitor = jankMonitor;
|
||||
mCameraLauncherLazy = cameraLauncherLazy;
|
||||
|
||||
mLockscreenShadeTransitionController = lockscreenShadeTransitionController;
|
||||
mStartingSurfaceOptional = startingSurfaceOptional;
|
||||
@@ -2969,7 +2974,7 @@ public class CentralSurfacesImpl implements CoreStartable, CentralSurfaces {
|
||||
|
||||
private void onLaunchTransitionFadingEnded() {
|
||||
mNotificationPanelViewController.resetAlpha();
|
||||
mNotificationPanelViewController.onAffordanceLaunchEnded();
|
||||
mCameraLauncherLazy.get().setLaunchingAffordance(false);
|
||||
releaseGestureWakeLock();
|
||||
runLaunchTransitionEndRunnable();
|
||||
mKeyguardStateController.setLaunchTransitionFadingAway(false);
|
||||
@@ -3039,7 +3044,7 @@ public class CentralSurfacesImpl implements CoreStartable, CentralSurfaces {
|
||||
|
||||
private void onLaunchTransitionTimeout() {
|
||||
Log.w(TAG, "Launch transition: Timeout!");
|
||||
mNotificationPanelViewController.onAffordanceLaunchEnded();
|
||||
mCameraLauncherLazy.get().setLaunchingAffordance(false);
|
||||
releaseGestureWakeLock();
|
||||
mNotificationPanelViewController.resetViews(false /* animate */);
|
||||
}
|
||||
@@ -3092,7 +3097,7 @@ public class CentralSurfacesImpl implements CoreStartable, CentralSurfaces {
|
||||
}
|
||||
mMessageRouter.cancelMessages(MSG_LAUNCH_TRANSITION_TIMEOUT);
|
||||
releaseGestureWakeLock();
|
||||
mNotificationPanelViewController.onAffordanceLaunchEnded();
|
||||
mCameraLauncherLazy.get().setLaunchingAffordance(false);
|
||||
mNotificationPanelViewController.resetAlpha();
|
||||
mNotificationPanelViewController.resetTranslation();
|
||||
mNotificationPanelViewController.resetViewGroupFade();
|
||||
@@ -3250,7 +3255,7 @@ public class CentralSurfacesImpl implements CoreStartable, CentralSurfaces {
|
||||
@Override
|
||||
public void endAffordanceLaunch() {
|
||||
releaseGestureWakeLock();
|
||||
mNotificationPanelViewController.onAffordanceLaunchEnded();
|
||||
mCameraLauncherLazy.get().setLaunchingAffordance(false);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -3523,7 +3528,7 @@ public class CentralSurfacesImpl implements CoreStartable, CentralSurfaces {
|
||||
final WakefulnessLifecycle.Observer mWakefulnessObserver = new WakefulnessLifecycle.Observer() {
|
||||
@Override
|
||||
public void onFinishedGoingToSleep() {
|
||||
mNotificationPanelViewController.onAffordanceLaunchEnded();
|
||||
mCameraLauncherLazy.get().setLaunchingAffordance(false);
|
||||
releaseGestureWakeLock();
|
||||
mLaunchCameraWhenFinishedWaking = false;
|
||||
mDeviceInteractive = false;
|
||||
@@ -3624,7 +3629,8 @@ public class CentralSurfacesImpl implements CoreStartable, CentralSurfaces {
|
||||
.updateSensitivenessForOccludedWakeup();
|
||||
}
|
||||
if (mLaunchCameraWhenFinishedWaking) {
|
||||
mNotificationPanelViewController.launchCamera(mLastCameraLaunchSource);
|
||||
mCameraLauncherLazy.get().launchCamera(mLastCameraLaunchSource,
|
||||
mNotificationPanelViewController.isFullyCollapsed());
|
||||
mLaunchCameraWhenFinishedWaking = false;
|
||||
}
|
||||
if (mLaunchEmergencyActionWhenFinishedWaking) {
|
||||
@@ -3815,8 +3821,7 @@ public class CentralSurfacesImpl implements CoreStartable, CentralSurfaces {
|
||||
|
||||
mScrimController.setExpansionAffectsAlpha(!unlocking);
|
||||
|
||||
boolean launchingAffordanceWithPreview =
|
||||
mNotificationPanelViewController.isLaunchingAffordanceWithPreview();
|
||||
boolean launchingAffordanceWithPreview = mLaunchingAffordance;
|
||||
mScrimController.setLaunchingAffordanceWithPreview(launchingAffordanceWithPreview);
|
||||
|
||||
if (mStatusBarKeyguardViewManager.isShowingAlternateBouncer()) {
|
||||
|
||||
@@ -94,7 +94,6 @@ import com.android.systemui.DejankUtils;
|
||||
import com.android.systemui.R;
|
||||
import com.android.systemui.SysuiTestCase;
|
||||
import com.android.systemui.biometrics.AuthController;
|
||||
import com.android.systemui.camera.CameraGestureHelper;
|
||||
import com.android.systemui.classifier.FalsingCollectorFake;
|
||||
import com.android.systemui.classifier.FalsingManagerFake;
|
||||
import com.android.systemui.doze.DozeLog;
|
||||
@@ -492,7 +491,6 @@ public class NotificationPanelViewControllerTest extends SysuiTestCase {
|
||||
mUnlockedScreenOffAnimationController,
|
||||
mShadeTransitionController,
|
||||
systemClock,
|
||||
mock(CameraGestureHelper.class),
|
||||
mKeyguardBottomAreaViewModel,
|
||||
mKeyguardBottomAreaInteractor,
|
||||
mDumpManager);
|
||||
|
||||
@@ -41,6 +41,7 @@ import com.android.keyguard.KeyguardUpdateMonitor;
|
||||
import com.android.systemui.SysuiTestCase;
|
||||
import com.android.systemui.assist.AssistManager;
|
||||
import com.android.systemui.keyguard.WakefulnessLifecycle;
|
||||
import com.android.systemui.shade.CameraLauncher;
|
||||
import com.android.systemui.shade.NotificationPanelViewController;
|
||||
import com.android.systemui.shade.ShadeController;
|
||||
import com.android.systemui.statusbar.CommandQueue;
|
||||
@@ -60,6 +61,8 @@ import org.mockito.stubbing.Answer;
|
||||
|
||||
import java.util.Optional;
|
||||
|
||||
import dagger.Lazy;
|
||||
|
||||
@SmallTest
|
||||
@RunWith(AndroidTestingRunner.class)
|
||||
public class CentralSurfacesCommandQueueCallbacksTest extends SysuiTestCase {
|
||||
@@ -84,6 +87,7 @@ public class CentralSurfacesCommandQueueCallbacksTest extends SysuiTestCase {
|
||||
@Mock private Vibrator mVibrator;
|
||||
@Mock private StatusBarHideIconsForBouncerManager mStatusBarHideIconsForBouncerManager;
|
||||
@Mock private SystemBarAttributesListener mSystemBarAttributesListener;
|
||||
@Mock private Lazy<CameraLauncher> mCameraLauncherLazy;
|
||||
|
||||
CentralSurfacesCommandQueueCallbacks mSbcqCallbacks;
|
||||
|
||||
@@ -115,7 +119,8 @@ public class CentralSurfacesCommandQueueCallbacksTest extends SysuiTestCase {
|
||||
Optional.of(mVibrator),
|
||||
new DisableFlagsLogger(),
|
||||
DEFAULT_DISPLAY,
|
||||
mSystemBarAttributesListener);
|
||||
mSystemBarAttributesListener,
|
||||
mCameraLauncherLazy);
|
||||
|
||||
when(mDeviceProvisionedController.isCurrentUserSetup()).thenReturn(true);
|
||||
when(mRemoteInputQuickSettingsDisabler.adjustDisableFlags(anyInt()))
|
||||
|
||||
@@ -112,6 +112,7 @@ import com.android.systemui.plugins.PluginDependencyProvider;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.recents.ScreenPinningRequest;
|
||||
import com.android.systemui.settings.brightness.BrightnessSliderController;
|
||||
import com.android.systemui.shade.CameraLauncher;
|
||||
import com.android.systemui.shade.NotificationPanelView;
|
||||
import com.android.systemui.shade.NotificationPanelViewController;
|
||||
import com.android.systemui.shade.NotificationShadeWindowView;
|
||||
@@ -288,6 +289,8 @@ public class CentralSurfacesImplTest extends SysuiTestCase {
|
||||
@Mock private InteractionJankMonitor mJankMonitor;
|
||||
@Mock private DeviceStateManager mDeviceStateManager;
|
||||
@Mock private WiredChargingRippleController mWiredChargingRippleController;
|
||||
@Mock private Lazy<CameraLauncher> mCameraLauncherLazy;
|
||||
@Mock private CameraLauncher mCameraLauncher;
|
||||
/**
|
||||
* The process of registering/unregistering a predictive back callback requires a
|
||||
* ViewRootImpl, which is present IRL, but may be missing during a Mockito unit test.
|
||||
@@ -380,6 +383,7 @@ public class CentralSurfacesImplTest extends SysuiTestCase {
|
||||
|
||||
when(mLockscreenWallpaperLazy.get()).thenReturn(mLockscreenWallpaper);
|
||||
when(mBiometricUnlockControllerLazy.get()).thenReturn(mBiometricUnlockController);
|
||||
when(mCameraLauncherLazy.get()).thenReturn(mCameraLauncher);
|
||||
|
||||
when(mStatusBarComponentFactory.create()).thenReturn(mCentralSurfacesComponent);
|
||||
when(mCentralSurfacesComponent.getNotificationShadeWindowViewController()).thenReturn(
|
||||
@@ -481,7 +485,9 @@ public class CentralSurfacesImplTest extends SysuiTestCase {
|
||||
mActivityLaunchAnimator,
|
||||
mJankMonitor,
|
||||
mDeviceStateManager,
|
||||
mWiredChargingRippleController, mDreamManager) {
|
||||
mWiredChargingRippleController,
|
||||
mDreamManager,
|
||||
mCameraLauncherLazy) {
|
||||
@Override
|
||||
protected ViewRootImpl getViewRootImpl() {
|
||||
return mViewRootImpl;
|
||||
@@ -893,7 +899,7 @@ public class CentralSurfacesImplTest extends SysuiTestCase {
|
||||
mCentralSurfaces.showKeyguardImpl();
|
||||
|
||||
// Starting a pulse should change the scrim controller to the pulsing state
|
||||
when(mNotificationPanelViewController.isLaunchingAffordanceWithPreview()).thenReturn(true);
|
||||
when(mCameraLauncher.isLaunchingAffordance()).thenReturn(true);
|
||||
mCentralSurfaces.updateScrimController();
|
||||
verify(mScrimController).transitionTo(eq(ScrimState.UNLOCKED), any());
|
||||
}
|
||||
@@ -929,7 +935,7 @@ public class CentralSurfacesImplTest extends SysuiTestCase {
|
||||
mCentralSurfaces.showKeyguardImpl();
|
||||
|
||||
// Starting a pulse should change the scrim controller to the pulsing state
|
||||
when(mNotificationPanelViewController.isLaunchingAffordanceWithPreview()).thenReturn(false);
|
||||
when(mCameraLauncher.isLaunchingAffordance()).thenReturn(false);
|
||||
mCentralSurfaces.updateScrimController();
|
||||
verify(mScrimController).transitionTo(eq(ScrimState.KEYGUARD));
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user