diff options
| author | 2024-02-06 20:10:38 +0800 | |
|---|---|---|
| committer | 2024-02-06 20:10:38 +0800 | |
| commit | a1d0a65d30c62a13f832b227b2cd0cd6250dd76c (patch) | |
| tree | 5db5c7d3ed2fe6a8243cedbbd4696e8653c4cc9e | |
| parent | d26b5778b26036bae1dac509727b66f8c516b609 (diff) | |
Preventing from re-create starting window.
Unlock device will also request to create starting window for visible
activities, if core just remove first starting window after app window
drawn, there can have a slightly timing gap to request another starting
window.
It should be much stable by modify the check condition to window type,
instead of finding local member.
Bug: 322547402
Test: after start activity on lockscreen, unlock immediately to simulate
the second create starting window request.
Change-Id: Icbc07fcf3f2c7a5fae2fc13f28f519885ae5054a
| -rw-r--r-- | services/core/java/com/android/server/wm/ActivityRecord.java | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/services/core/java/com/android/server/wm/ActivityRecord.java b/services/core/java/com/android/server/wm/ActivityRecord.java index 7b5975928308..c2117eaa72c4 100644 --- a/services/core/java/com/android/server/wm/ActivityRecord.java +++ b/services/core/java/com/android/server/wm/ActivityRecord.java @@ -2441,11 +2441,11 @@ final class ActivityRecord extends WindowToken implements WindowManagerService.A return false; } - if (mStartingData != null) { + if (hasStartingWindow()) { return false; } - final WindowState mainWin = findMainWindow(); + final WindowState mainWin = findMainWindow(false /* includeStartingApp */); if (mainWin != null && mainWin.mWinAnimator.getShown()) { // App already has a visible window...why would you want a starting window? return false; |