Merge "AOD: avoid flicker when turning off screen" into oc-dr1-dev

This commit is contained in:
TreeHugger Robot
2017-06-30 14:31:33 +00:00
committed by Android (Google) Code Review

View File

@@ -425,6 +425,7 @@ public class StatusBar extends SystemUI implements DemoMode,
private boolean mWakeUpComingFromTouch;
private PointF mWakeUpTouchLocation;
private boolean mScreenTurningOn;
private boolean mScreenFullyOff;
int mPixelFormat;
Object mQueueLock = new Object();
@@ -2811,7 +2812,9 @@ public class StatusBar extends SystemUI implements DemoMode,
}
public void onScreenTurnedOff() {
mScreenFullyOff = true;
mFalsingManager.onScreenOff();
updateIsKeyguard();
}
public NotificationStackScrollLayout getNotificationScrollLayout() {
@@ -4188,8 +4191,11 @@ public class StatusBar extends SystemUI implements DemoMode,
private boolean updateIsKeyguard() {
// For dozing, keyguard needs to be shown whenever the device is non-interactive. Otherwise
// there's no surface we can show to the user.
boolean keyguardForDozing = mDozingRequested && !mDeviceInteractive;
// there's no surface we can show to the user. Note that the device goes fully interactive
// late in the transition, so we also allow the device to start dozing once the screen has
// turned off fully.
boolean keyguardForDozing = mDozingRequested &&
(!mDeviceInteractive || mStartedGoingToSleep && (mScreenFullyOff || mIsKeyguard));
boolean shouldBeKeyguard = mKeyguardRequested || keyguardForDozing;
if (keyguardForDozing) {
updatePanelExpansionForKeyguard();
@@ -5130,6 +5136,7 @@ public class StatusBar extends SystemUI implements DemoMode,
}
public void onScreenTurningOn() {
mScreenFullyOff = false;
mScreenTurningOn = true;
mFalsingManager.onScreenTurningOn();
mNotificationPanel.onScreenTurningOn();
@@ -5297,7 +5304,7 @@ public class StatusBar extends SystemUI implements DemoMode,
mDozingRequested = true;
DozeLog.traceDozing(mContext, mDozing);
updateDozing();
updateIsKeyguard();
}
}