summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHani Kazmi <hanikazmi@google.com>2023-05-23 17:28:56 +0000
committerAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2023-06-08 20:34:14 +0000
commit70ec64dc5a2a816d6aa324190a726a85fd749b30 (patch)
treea1e43d11b2f4ac0921e4391298c5224bde46b2af
parent49773f9d871dd8975128fccf71513928a5a97345 (diff)
downloadbase-70ec64dc5a2a816d6aa324190a726a85fd749b30.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:1848b559059e021d1a923513ca2a936c6212a7ac) Merged-In: Ibadc9c21f1d23f9904fc11009a9c2a40535db5e0 Change-Id: Ibadc9c21f1d23f9904fc11009a9c2a40535db5e0
-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 84cd63424cd1..e6d311f7a9aa 100644
--- a/services/core/java/com/android/server/wm/ActivityStarter.java
+++ b/services/core/java/com/android/server/wm/ActivityStarter.java
@@ -1941,7 +1941,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()
+ && !mRestrictedBgActivity) {
mRootWindowContainer.moveActivityToPinnedRootTask(mStartActivity,
sourceRecord, "launch-into-pip");
}