From d2029ccecf0d1f9ad42490a2a5db241b19934f6e Mon Sep 17 00:00:00 2001 From: Jeff Chang Date: Tue, 7 Feb 2023 16:38:23 +0800 Subject: [PATCH] Starting a shortcut into split with no_user_action Appending no_user_action flag when starting a shotcut into split. Bug: 267723349 Test: atest WMShellUnitTests Test: verify appended flag with the repro steps of the bug Change-Id: I4c956806ea40a97e94e7140f1e986c921a0f1a81 --- .../com/android/wm/shell/splitscreen/StageCoordinator.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/splitscreen/StageCoordinator.java b/libs/WindowManager/Shell/src/com/android/wm/shell/splitscreen/StageCoordinator.java index 219f87eac7f26..06a87333270e6 100644 --- a/libs/WindowManager/Shell/src/com/android/wm/shell/splitscreen/StageCoordinator.java +++ b/libs/WindowManager/Shell/src/com/android/wm/shell/splitscreen/StageCoordinator.java @@ -486,6 +486,10 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, RemoteAnimationAdapter wrappedAdapter = new RemoteAnimationAdapter(wrapper, 0 /* duration */, 0 /* statusBarTransitionDelay */); ActivityOptions activityOptions = ActivityOptions.fromBundle(options); + // Flag this as a no-user-action launch to prevent sending user leaving event to the current + // top activity since it's going to be put into another side of the split. This prevents the + // current top activity from going into pip mode due to user leaving event. + activityOptions.setApplyNoUserActionFlagForShortcut(true); activityOptions.update(ActivityOptions.makeRemoteAnimation(wrappedAdapter)); try { LauncherApps launcherApps = mContext.getSystemService(LauncherApps.class);