summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHani Kazmi <hanikazmi@google.com>2023-05-22 15:19:10 +0000
committerAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2023-06-16 08:30:50 +0000
commitf376a7e3107886e456f849f52cecadf2b373d571 (patch)
tree59ae7b6832d8a8e60428b542b2829283f4938607
parent0cd003717465df3749fe360fe1241392b0935a41 (diff)
downloadbase-f376a7e3107886e456f849f52cecadf2b373d571.tar.gz
Update Pip launches to not enter pinned task if in background.
Addresses a BAL bypass where Pip could be started without the launcher being visible. Bug: 271576718 Test: atest CtsWindowManagerDeviceTestCases:PinnedStackTests Test: atest android.server.wm.BackgroundActivityLaunchTest#testPipCannotStartFromBackground (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:b263d3beed7a412ac342c63956f213b70d6e2679) (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:291d124257f6e46862a813305892b02b9a8f851c) Merged-In: Icfe0a17d7f6f127acaae8400a97e8bdc53fcc9ad Change-Id: Icfe0a17d7f6f127acaae8400a97e8bdc53fcc9ad
-rw-r--r--services/core/java/com/android/server/wm/ActivityStarter.java3
1 files changed, 2 insertions, 1 deletions
diff --git a/services/core/java/com/android/server/wm/ActivityStarter.java b/services/core/java/com/android/server/wm/ActivityStarter.java
index d1a5ead78af2..4d5238a961f4 100644
--- a/services/core/java/com/android/server/wm/ActivityStarter.java
+++ b/services/core/java/com/android/server/wm/ActivityStarter.java
@@ -1709,7 +1709,8 @@ class ActivityStarter {
// If Activity's launching into PiP, move the mStartActivity immediately to pinned mode.
// Note that mStartActivity and source should be in the same Task at this point.
if (mOptions != null && mOptions.isLaunchIntoPip()
- && sourceRecord != null && sourceRecord.getTask() == mStartActivity.getTask()) {
+ && sourceRecord != null && sourceRecord.getTask() == mStartActivity.getTask()
+ && balCode != BAL_BLOCK) {
mRootWindowContainer.moveActivityToPinnedRootTask(mStartActivity,
sourceRecord, "launch-into-pip");
}