summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorwilsonshih <wilsonshih@google.com>2023-07-10 05:38:56 +0000
committerWei Sheng Shih <wilsonshih@google.com>2023-07-12 11:56:44 +0000
commit2bb3be0276646895a92d6107bf83c3976e8aa022 (patch)
treeb1f5aec271af6a1c00d8b6098d028f661284ab27
parent11dcac2a25581a8eb562c5c01e39df9c1a901265 (diff)
downloadbase-2bb3be0276646895a92d6107bf83c3976e8aa022.tar.gz
Do not capture activity snapshot if starting window is associated to task.
There doesn't need to capture snapshot from an activity if the starting window is associated to task, everything should be hide behide the window. Bug: 290319270 Test: atest TransitionTests SyncEngineTests Change-Id: I78eda58c3ec8405498b3c32ecc66b3d529cdb38c
-rw-r--r--services/core/java/com/android/server/wm/Transition.java8
1 files changed, 8 insertions, 0 deletions
diff --git a/services/core/java/com/android/server/wm/Transition.java b/services/core/java/com/android/server/wm/Transition.java
index 2c582c18a8ff..65c5c9b35ab7 100644
--- a/services/core/java/com/android/server/wm/Transition.java
+++ b/services/core/java/com/android/server/wm/Transition.java
@@ -712,6 +712,14 @@ class Transition implements BLASTSyncEngine.TransactionReadyListener {
mFlags |= WindowManager.TRANSIT_FLAG_INVISIBLE;
return;
}
+ // Activity doesn't need to capture snapshot if the starting window has associated to task.
+ if (wc.asActivityRecord() != null) {
+ final ActivityRecord activityRecord = wc.asActivityRecord();
+ if (activityRecord.mStartingData != null
+ && activityRecord.mStartingData.mAssociatedTask != null) {
+ return;
+ }
+ }
if (mContainerFreezer == null) {
mContainerFreezer = new ScreenshotFreezer();