Merge "Fix issue where cold-start launching an activity from the shade while an occluding activity is visible would result in an inescapable black screen." into sc-v2-dev am: 196fc30c20

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/17529131

Change-Id: I8e1e077644160f89e7ad1b9ad553e7cf62de20b9
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
TreeHugger Robot
2022-04-07 16:47:10 +00:00
committed by Automerger Merge Worker

View File

@@ -1351,8 +1351,11 @@ public class StatusBar extends SystemUI implements
* keyguard.
*/
private void dispatchPanelExpansionForKeyguardDismiss(float fraction, boolean trackingTouch) {
// Things that mean we're not dismissing the keyguard, and should ignore this expansion:
// Things that mean we're not swiping to dismiss the keyguard, and should ignore this
// expansion:
// - Keyguard isn't even visible.
// - Keyguard is occluded. Expansion changes here are the shade being expanded over the
// occluding activity.
// - Keyguard is visible, but can't be dismissed (swiping up will show PIN/password prompt).
// - The SIM is locked, you can't swipe to unlock. If the SIM is locked but there is no
// device lock set, canDismissLockScreen returns true even though you should not be able
@@ -1360,6 +1363,7 @@ public class StatusBar extends SystemUI implements
// - QS is expanded and we're swiping - swiping up now will hide QS, not dismiss the
// keyguard.
if (!isKeyguardShowing()
|| mIsOccluded
|| !mKeyguardStateController.canDismissLockScreen()
|| mKeyguardViewMediator.isAnySimPinSecure()
|| (mNotificationPanelViewController.isQsExpanded() && trackingTouch)) {