Clear ActivityRecord#mDismissKeyguard flag after app launches.
This flag is used by the SysUI to dismiss an insecure keyguard when an app is launched from an insecure lock screen. The flag should only affect the app launch once, so needs to be cleared once app launch animation finishes. Bug: 234583880 Test: atest KeyguardTests Change-Id: I74e9e00caad0d9af80127b2fc930c4ff0d52af76
This commit is contained in:
@@ -116,6 +116,7 @@ message KeyguardControllerProto {
|
||||
repeated KeyguardOccludedProto keyguard_occluded_states = 2 [deprecated=true];
|
||||
optional bool aod_showing = 3;
|
||||
repeated KeyguardPerDisplayProto keyguard_per_display = 4;
|
||||
optional bool keyguard_going_away = 5;
|
||||
}
|
||||
|
||||
message KeyguardOccludedProto {
|
||||
@@ -132,6 +133,7 @@ message KeyguardPerDisplayProto {
|
||||
optional bool keyguard_showing = 2;
|
||||
optional bool aod_showing = 3;
|
||||
optional bool keyguard_occluded = 4;
|
||||
optional bool keyguard_going_away = 5;
|
||||
}
|
||||
|
||||
/* represents PhoneWindowManager */
|
||||
|
||||
@@ -7343,6 +7343,7 @@ final class ActivityRecord extends WindowToken implements WindowManagerService.A
|
||||
mTransit = TRANSIT_OLD_UNSET;
|
||||
mTransitFlags = 0;
|
||||
mNeedsAnimationBoundsLayer = false;
|
||||
mDismissKeyguard = false;
|
||||
|
||||
setAppLayoutChanges(FINISH_LAYOUT_REDO_ANIM | FINISH_LAYOUT_REDO_WALLPAPER,
|
||||
"ActivityRecord");
|
||||
|
||||
@@ -41,6 +41,7 @@ import static com.android.server.wm.ActivityTaskManagerDebugConfig.TAG_ATM;
|
||||
import static com.android.server.wm.ActivityTaskManagerDebugConfig.TAG_WITH_CLASS_NAME;
|
||||
import static com.android.server.wm.ActivityTaskSupervisor.PRESERVE_WINDOWS;
|
||||
import static com.android.server.wm.KeyguardControllerProto.AOD_SHOWING;
|
||||
import static com.android.server.wm.KeyguardControllerProto.KEYGUARD_GOING_AWAY;
|
||||
import static com.android.server.wm.KeyguardControllerProto.KEYGUARD_PER_DISPLAY;
|
||||
import static com.android.server.wm.KeyguardControllerProto.KEYGUARD_SHOWING;
|
||||
|
||||
@@ -671,6 +672,7 @@ class KeyguardController {
|
||||
proto.write(KeyguardPerDisplayProto.KEYGUARD_SHOWING, mKeyguardShowing);
|
||||
proto.write(KeyguardPerDisplayProto.AOD_SHOWING, mAodShowing);
|
||||
proto.write(KeyguardPerDisplayProto.KEYGUARD_OCCLUDED, mOccluded);
|
||||
proto.write(KeyguardPerDisplayProto.KEYGUARD_GOING_AWAY, mKeyguardGoingAway);
|
||||
proto.end(token);
|
||||
}
|
||||
}
|
||||
@@ -691,6 +693,7 @@ class KeyguardController {
|
||||
final long token = proto.start(fieldId);
|
||||
proto.write(AOD_SHOWING, default_state.mAodShowing);
|
||||
proto.write(KEYGUARD_SHOWING, default_state.mKeyguardShowing);
|
||||
proto.write(KEYGUARD_GOING_AWAY, default_state.mKeyguardGoingAway);
|
||||
writeDisplayStatesToProto(proto, KEYGUARD_PER_DISPLAY);
|
||||
proto.end(token);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user