diff options
author | 2024-04-24 16:14:28 +0000 | |
---|---|---|
committer | 2024-04-24 16:14:28 +0000 | |
commit | d2018cd2da07c2855df3c36b8675e7591805a4dd (patch) | |
tree | 7052248e61d701d7210d169cca1db320ab7193a2 /java | |
parent | b0fcf4fea64f161cd2d396ed5db8eb2909927375 (diff) | |
parent | ceeae6dcff1dddca15b8e3c2781dc1dc3381d1c8 (diff) |
Merge "Block taking recents screenshot if private profile available" into main
Diffstat (limited to 'java')
-rw-r--r-- | java/src/com/android/intentresolver/ChooserActivity.java | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/java/src/com/android/intentresolver/ChooserActivity.java b/java/src/com/android/intentresolver/ChooserActivity.java index b712edf4..a9ca5d61 100644 --- a/java/src/com/android/intentresolver/ChooserActivity.java +++ b/java/src/com/android/intentresolver/ChooserActivity.java @@ -508,6 +508,8 @@ public class ChooserActivity extends Hilt_ChooserActivity implements mRequest.getInitialIntents(), mMaxTargetsPerRow); + maybeDisableRecentsScreenshot(mProfiles, mProfileAvailability); + if (!configureContentView(mTargetDataLoader)) { mPersonalPackageMonitor = createPackageMonitor( mChooserMultiProfilePagerAdapter.getPersonalListAdapter()); @@ -646,6 +648,20 @@ public class ChooserActivity extends Hilt_ChooserActivity implements Tracer.INSTANCE.markLaunched(); } + private void maybeDisableRecentsScreenshot( + ProfileHelper profileHelper, ProfileAvailability profileAvailability) { + for (Profile profile : profileHelper.getProfiles()) { + if (profile.getType() == Profile.Type.PRIVATE) { + if (profileAvailability.isAvailable(profile)) { + // Show blank screen in Recent preview if private profile is available + // to not leak its presence. + setRecentsScreenshotEnabled(false); + } + return; + } + } + } + private void onChooserRequestChanged(ChooserRequest chooserRequest) { // intentional reference comparison if (mRequest == chooserRequest) { |