AOD: Fix navbar flicker when launching assistant
When reset() gets called during unocclusion, we were hiding the keyguard even though it is still needed while dozing; instead, reset is now actually called after dozing finishes. Test: Trigger assistant from AOD; verify navigation bar buttons do not show Fixes: 64164106 Change-Id: Ic29cf40ade7d3cd492723a3f859f8a7734edad93
This commit is contained in:
@@ -201,7 +201,7 @@ public class StatusBarKeyguardViewManager implements RemoteInputController.Callb
|
||||
*/
|
||||
public void reset(boolean hideBouncerWhenShowing) {
|
||||
if (mShowing) {
|
||||
if (mOccluded) {
|
||||
if (mOccluded && !mDozing) {
|
||||
mStatusBar.hideKeyguard();
|
||||
mStatusBar.stopWaitingForKeyguardExit();
|
||||
mBouncer.hide(false /* destroyView */);
|
||||
@@ -292,9 +292,12 @@ public class StatusBarKeyguardViewManager implements RemoteInputController.Callb
|
||||
}
|
||||
mStatusBarWindowManager.setKeyguardOccluded(occluded);
|
||||
|
||||
// If Keyguard is reshown, don't hide the bouncer as it might just have been requested by
|
||||
// a FLAG_DISMISS_KEYGUARD_ACTIVITY.
|
||||
reset(false /* hideBouncerWhenShowing*/);
|
||||
// setDozing(false) will call reset once we stop dozing.
|
||||
if (!mDozing) {
|
||||
// If Keyguard is reshown, don't hide the bouncer as it might just have been requested
|
||||
// by a FLAG_DISMISS_KEYGUARD_ACTIVITY.
|
||||
reset(false /* hideBouncerWhenShowing*/);
|
||||
}
|
||||
if (animate && !occluded && mShowing) {
|
||||
mStatusBar.animateKeyguardUnoccluding();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user