Merge "Skip transfer starting window from above if current activity has drawn." into udc-dev am: e765320bea

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

Change-Id: Id9caa7464b501aaa627f504cf4e59145c1844c54
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Wei Sheng Shih
2023-06-13 04:23:46 +00:00
committed by Automerger Merge Worker

View File

@@ -4550,6 +4550,13 @@ final class ActivityRecord extends WindowToken implements WindowManagerService.A
* immediately finishes after, so we have to transfer T to M. * immediately finishes after, so we have to transfer T to M.
*/ */
void transferStartingWindowFromHiddenAboveTokenIfNeeded() { void transferStartingWindowFromHiddenAboveTokenIfNeeded() {
final WindowState mainWin = findMainWindow(false);
if (mainWin != null && mainWin.mWinAnimator.getShown()) {
// This activity already has a visible window, so doesn't need to transfer the starting
// window from above activity to here. The starting window will be removed with above
// activity.
return;
}
task.forAllActivities(fromActivity -> { task.forAllActivities(fromActivity -> {
if (fromActivity == this) return true; if (fromActivity == this) return true;
return !fromActivity.isVisibleRequested() && transferStartingWindow(fromActivity); return !fromActivity.isVisibleRequested() && transferStartingWindow(fromActivity);