Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ff91ef8e authored by Nicolas Prevot's avatar Nicolas Prevot
Browse files

Don't resolve cross-profile app links without intent picker.

If ALLOW_CROSS_PROFILE_APP_LINKING has been set:
If there is an app with status always across profiles, and some
apps without status always in the current profile: show an intent
picker instead of directly resolving across profiles.

BUG:25109215

Change-Id: I74a67d231284ce912121ea0818109fbf904183e8
parent 9582e151
Loading
Loading
Loading
Loading
+2 −7
Original line number Diff line number Diff line
@@ -4772,18 +4772,13 @@ public class PackageManagerService extends IPackageManager.Stub {
            // First try to add the "always" resolution(s) for the current user, if any
            if (alwaysList.size() > 0) {
                result.addAll(alwaysList);
            // if there is an "always" for the parent user, add it.
            } else if (xpDomainInfo != null && xpDomainInfo.bestDomainVerificationStatus
                    == INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_ALWAYS) {
                result.add(xpDomainInfo.resolveInfo);
            } else {
                // Add all undefined apps as we want them to appear in the disambiguation dialog.
                result.addAll(undefinedList);
                // Maybe add one for the other profile.
                if (xpDomainInfo != null && (
                        xpDomainInfo.bestDomainVerificationStatus
                        == INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_UNDEFINED
                        || xpDomainInfo.bestDomainVerificationStatus
                        == INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_ASK)) {
                        != INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_NEVER)) {
                    result.add(xpDomainInfo.resolveInfo);
                }
                includeBrowser = true;