diff options
| -rw-r--r-- | core/java/android/app/ActivityThread.java | 9 | ||||
| -rw-r--r-- | libs/WindowManager/Jetpack/src/androidx/window/extensions/organizer/SplitController.java | 2 |
2 files changed, 6 insertions, 5 deletions
diff --git a/core/java/android/app/ActivityThread.java b/core/java/android/app/ActivityThread.java index f212b6dd36b6..ae812ece4c98 100644 --- a/core/java/android/app/ActivityThread.java +++ b/core/java/android/app/ActivityThread.java @@ -530,8 +530,9 @@ public final class ActivityThread extends ClientTransactionHandler // A reusable token for other purposes, e.g. content capture, translation. It shouldn't be // used without security checks public IBinder shareableActivityToken; - // The token of the TaskFragment that embedded this activity. - @Nullable public IBinder mTaskFragmentToken; + // The token of the initial TaskFragment that embedded this activity. Do not rely on it + // after creation because the activity could be reparented. + @Nullable public IBinder mInitialTaskFragmentToken; int ident; @UnsupportedAppUsage Intent intent; @@ -626,7 +627,7 @@ public final class ActivityThread extends ClientTransactionHandler boolean isForward, ProfilerInfo profilerInfo, ClientTransactionHandler client, IBinder assistToken, FixedRotationAdjustments fixedRotationAdjustments, IBinder shareableActivityToken, boolean launchedFromBubble, - IBinder taskFragmentToken) { + IBinder initialTaskFragmentToken) { this.token = token; this.assistToken = assistToken; this.shareableActivityToken = shareableActivityToken; @@ -648,7 +649,7 @@ public final class ActivityThread extends ClientTransactionHandler mActivityOptions = activityOptions; mPendingFixedRotationAdjustments = fixedRotationAdjustments; mLaunchedFromBubble = launchedFromBubble; - mTaskFragmentToken = taskFragmentToken; + mInitialTaskFragmentToken = initialTaskFragmentToken; init(); } diff --git a/libs/WindowManager/Jetpack/src/androidx/window/extensions/organizer/SplitController.java b/libs/WindowManager/Jetpack/src/androidx/window/extensions/organizer/SplitController.java index 912c61b0c8b4..802976fbfc6d 100644 --- a/libs/WindowManager/Jetpack/src/androidx/window/extensions/organizer/SplitController.java +++ b/libs/WindowManager/Jetpack/src/androidx/window/extensions/organizer/SplitController.java @@ -270,7 +270,7 @@ public class SplitController implements JetpackTaskFragmentOrganizer.TaskFragmen private TaskFragmentContainer getContainerWithActivity(@NonNull IBinder activityToken, Activity activityToAdd) { final IBinder taskFragmentToken = ActivityThread.currentActivityThread().getActivityClient( - activityToken).mTaskFragmentToken; + activityToken).mInitialTaskFragmentToken; for (TaskFragmentContainer container : mContainers) { if (container.hasActivity(activityToken)) { return container; |