Close panel immediately on launch animation end
Otherwise the activity will launch, then the window will quickly flip back to the fully expanded shade and make the user watch the collapse animation before finally showing the activity that was started. This path only occurs when the keyguard is unlocked, and triggers the remote occlude animation to run. Fixes: 234577570 Test: manual, use face unlock without bypass, unlock the lockscreen, then start an occluding activity (controls, maps) Change-Id: Ifcb59cce810c81e607d5fe83389d282100ef7236
This commit is contained in:
@@ -485,6 +485,8 @@ public class KeyguardViewMediator extends CoreStartable implements Dumpable,
|
||||
*/
|
||||
private IRemoteAnimationRunner mKeyguardExitAnimationRunner;
|
||||
|
||||
private CentralSurfaces mCentralSurfaces;
|
||||
|
||||
private final DeviceConfig.OnPropertiesChangedListener mOnPropertiesChangedListener =
|
||||
new DeviceConfig.OnPropertiesChangedListener() {
|
||||
@Override
|
||||
@@ -845,6 +847,13 @@ public class KeyguardViewMediator extends CoreStartable implements Dumpable,
|
||||
+ mOccluded);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onLaunchAnimationEnd(boolean launchIsFullScreen) {
|
||||
if (launchIsFullScreen) {
|
||||
mCentralSurfaces.instantCollapseNotificationPanel();
|
||||
}
|
||||
}
|
||||
|
||||
@NonNull
|
||||
@Override
|
||||
public ViewGroup getLaunchContainer() {
|
||||
@@ -2846,6 +2855,7 @@ public class KeyguardViewMediator extends CoreStartable implements Dumpable,
|
||||
@Nullable PanelExpansionStateManager panelExpansionStateManager,
|
||||
BiometricUnlockController biometricUnlockController,
|
||||
View notificationContainer, KeyguardBypassController bypassController) {
|
||||
mCentralSurfaces = centralSurfaces;
|
||||
mKeyguardViewControllerLazy.get().registerCentralSurfaces(
|
||||
centralSurfaces,
|
||||
panelView,
|
||||
|
||||
@@ -1596,7 +1596,7 @@ public class CentralSurfacesImpl extends CoreStartable implements
|
||||
}
|
||||
}
|
||||
});
|
||||
mStatusBarKeyguardViewManager.registerCentralSurfaces(
|
||||
mKeyguardViewMediator.registerCentralSurfaces(
|
||||
/* statusBar= */ this,
|
||||
mNotificationPanelViewController,
|
||||
mPanelExpansionStateManager,
|
||||
|
||||
Reference in New Issue
Block a user