Merge "Fix camera race condition" into qt-dev

am: f2c4f55435

Change-Id: Iaaa49536da3c71d367bf5745f35e8cdd81f34711
This commit is contained in:
Lucas Dupin
2019-06-18 21:17:59 -07:00
committed by android-build-merger

View File

@@ -493,7 +493,7 @@ public class StatusBar extends SystemUI implements DemoMode,
private Runnable mLaunchTransitionEndRunnable; private Runnable mLaunchTransitionEndRunnable;
private NotificationEntry mDraggedDownEntry; private NotificationEntry mDraggedDownEntry;
private boolean mLaunchCameraOnScreenTurningOn; private boolean mLaunchCameraWhenFinishedWaking;
private boolean mLaunchCameraOnFinishedGoingToSleep; private boolean mLaunchCameraOnFinishedGoingToSleep;
private int mLastCameraLaunchSource; private int mLastCameraLaunchSource;
protected PowerManager.WakeLock mGestureWakeLock; protected PowerManager.WakeLock mGestureWakeLock;
@@ -3595,7 +3595,7 @@ public class StatusBar extends SystemUI implements DemoMode,
public void onFinishedGoingToSleep() { public void onFinishedGoingToSleep() {
mNotificationPanel.onAffordanceLaunchEnded(); mNotificationPanel.onAffordanceLaunchEnded();
releaseGestureWakeLock(); releaseGestureWakeLock();
mLaunchCameraOnScreenTurningOn = false; mLaunchCameraWhenFinishedWaking = false;
mDeviceInteractive = false; mDeviceInteractive = false;
mWakeUpComingFromTouch = false; mWakeUpComingFromTouch = false;
mWakeUpTouchLocation = null; mWakeUpTouchLocation = null;
@@ -3640,6 +3640,11 @@ public class StatusBar extends SystemUI implements DemoMode,
@Override @Override
public void onFinishedWakingUp() { public void onFinishedWakingUp() {
mWakeUpCoordinator.setWakingUp(false); mWakeUpCoordinator.setWakingUp(false);
if (mLaunchCameraWhenFinishedWaking) {
mNotificationPanel.launchCamera(false /* animate */, mLastCameraLaunchSource);
mLaunchCameraWhenFinishedWaking = false;
}
updateScrimController();
} }
}; };
@@ -3660,13 +3665,6 @@ public class StatusBar extends SystemUI implements DemoMode,
public void onScreenTurningOn() { public void onScreenTurningOn() {
mFalsingManager.onScreenTurningOn(); mFalsingManager.onScreenTurningOn();
mNotificationPanel.onScreenTurningOn(); mNotificationPanel.onScreenTurningOn();
if (mLaunchCameraOnScreenTurningOn) {
mNotificationPanel.launchCamera(false, mLastCameraLaunchSource);
mLaunchCameraOnScreenTurningOn = false;
}
updateScrimController();
} }
@Override @Override
@@ -3761,7 +3759,7 @@ public class StatusBar extends SystemUI implements DemoMode,
// comes on. // comes on.
mGestureWakeLock.acquire(LAUNCH_TRANSITION_TIMEOUT_MS + 1000L); mGestureWakeLock.acquire(LAUNCH_TRANSITION_TIMEOUT_MS + 1000L);
} }
if (isScreenTurningOnOrOn()) { if (isWakingUpOrAwake()) {
if (DEBUG_CAMERA_LIFT) Slog.d(TAG, "Launching camera"); if (DEBUG_CAMERA_LIFT) Slog.d(TAG, "Launching camera");
if (mStatusBarKeyguardViewManager.isBouncerShowing()) { if (mStatusBarKeyguardViewManager.isBouncerShowing()) {
mStatusBarKeyguardViewManager.reset(true /* hide */); mStatusBarKeyguardViewManager.reset(true /* hide */);
@@ -3774,7 +3772,7 @@ public class StatusBar extends SystemUI implements DemoMode,
// incorrectly get notified because of the screen on event (which resumes and pauses // incorrectly get notified because of the screen on event (which resumes and pauses
// some activities) // some activities)
if (DEBUG_CAMERA_LIFT) Slog.d(TAG, "Deferring until screen turns on"); if (DEBUG_CAMERA_LIFT) Slog.d(TAG, "Deferring until screen turns on");
mLaunchCameraOnScreenTurningOn = true; mLaunchCameraWhenFinishedWaking = true;
} }
} }
} }
@@ -3799,9 +3797,9 @@ public class StatusBar extends SystemUI implements DemoMode,
== WakefulnessLifecycle.WAKEFULNESS_GOING_TO_SLEEP; == WakefulnessLifecycle.WAKEFULNESS_GOING_TO_SLEEP;
} }
private boolean isScreenTurningOnOrOn() { private boolean isWakingUpOrAwake() {
return mScreenLifecycle.getScreenState() == ScreenLifecycle.SCREEN_TURNING_ON return mWakefulnessLifecycle.getWakefulness() == WAKEFULNESS_AWAKE
|| mScreenLifecycle.getScreenState() == ScreenLifecycle.SCREEN_ON; || mWakefulnessLifecycle.getWakefulness() == WAKEFULNESS_WAKING;
} }
public void notifyBiometricAuthModeChanged() { public void notifyBiometricAuthModeChanged() {
@@ -3833,7 +3831,7 @@ public class StatusBar extends SystemUI implements DemoMode,
ScrimState state = mStatusBarKeyguardViewManager.bouncerNeedsScrimming() ScrimState state = mStatusBarKeyguardViewManager.bouncerNeedsScrimming()
? ScrimState.BOUNCER_SCRIMMED : ScrimState.BOUNCER; ? ScrimState.BOUNCER_SCRIMMED : ScrimState.BOUNCER;
mScrimController.transitionTo(state); mScrimController.transitionTo(state);
} else if (isInLaunchTransition() || mLaunchCameraOnScreenTurningOn } else if (isInLaunchTransition() || mLaunchCameraWhenFinishedWaking
|| launchingAffordanceWithPreview) { || launchingAffordanceWithPreview) {
mScrimController.transitionTo(ScrimState.UNLOCKED, mUnlockScrimCallback); mScrimController.transitionTo(ScrimState.UNLOCKED, mUnlockScrimCallback);
} else if (mBrightnessMirrorVisible) { } else if (mBrightnessMirrorVisible) {