Loading core/java/com/android/internal/app/ResolverActivity.java +27 −19 Original line number Diff line number Diff line Loading @@ -668,13 +668,20 @@ public class ResolverActivity extends Activity { if (r.match > bestMatch) bestMatch = r.match; } if (alwaysCheck) { PackageManager pm = getPackageManager(); final int userId = getUserId(); final PackageManager pm = getPackageManager(); // Set the preferred Activity pm.addPreferredActivity(filter, bestMatch, set, intent.getComponent()); if (ri.handleAllWebDataURI) { // Set default Browser if needed final String packageName = pm.getDefaultBrowserPackageName(userId); if (TextUtils.isEmpty(packageName)) { pm.setDefaultBrowserPackageName(ri.activityInfo.packageName, userId); } } else { // Update Domain Verification status int userId = getUserId(); ComponentName cn = intent.getComponent(); String packageName = cn.getPackageName(); String dataScheme = (data != null) ? data.getScheme() : null; Loading @@ -692,6 +699,7 @@ public class ResolverActivity extends Activity { PackageManager.INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_ALWAYS, userId); } } } else { try { AppGlobals.getPackageManager().setLastChosenActivity(intent, Loading services/core/java/com/android/server/pm/PackageManagerService.java +21 −5 Original line number Diff line number Diff line Loading @@ -9217,7 +9217,9 @@ public class PackageManagerService extends IPackageManager.Stub { synchronized (mPackages) { result = mSettings.updateIntentFilterVerificationStatusLPw(packageName, status, userId); } if (result) { scheduleWritePackageRestrictionsLocked(userId); } return result; } Loading Loading @@ -9254,9 +9256,11 @@ public class PackageManagerService extends IPackageManager.Stub { public boolean setDefaultBrowserPackageName(String packageName, int userId) { synchronized (mPackages) { boolean result = mSettings.setDefaultBrowserPackageNameLPr(packageName, userId); if (packageName != null) { result |= updateIntentVerificationStatus(packageName, PackageManager.INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_ALWAYS, UserHandle.myUserId()); } return result; } } Loading Loading @@ -11970,6 +11974,7 @@ public class PackageManagerService extends IPackageManager.Stub { if (deletedPs != null) { if ((flags&PackageManager.DELETE_KEEP_DATA) == 0) { clearIntentFilterVerificationsLPw(deletedPs.name, UserHandle.USER_ALL); clearDefaultBrowserIfNeeded(packageName); if (outInfo != null) { mSettings.mKeySetManagerService.removeAppKeySetDataLPw(packageName); outInfo.removedAppId = mSettings.removePackageLPw(packageName); Loading Loading @@ -12873,6 +12878,17 @@ public class PackageManagerService extends IPackageManager.Stub { } } void clearDefaultBrowserIfNeeded(String packageName) { for (int oneUserId : sUserManager.getUserIds()) { String defaultBrowserPackageName = getDefaultBrowserPackageName(oneUserId); if (TextUtils.isEmpty(defaultBrowserPackageName)) continue; if (packageName.equals(defaultBrowserPackageName)) { setDefaultBrowserPackageName(null, oneUserId); } } } @Override public void resetPreferredActivities(int userId) { /* TODO: Actually use userId. Why is it being passed in? */ Loading
core/java/com/android/internal/app/ResolverActivity.java +27 −19 Original line number Diff line number Diff line Loading @@ -668,13 +668,20 @@ public class ResolverActivity extends Activity { if (r.match > bestMatch) bestMatch = r.match; } if (alwaysCheck) { PackageManager pm = getPackageManager(); final int userId = getUserId(); final PackageManager pm = getPackageManager(); // Set the preferred Activity pm.addPreferredActivity(filter, bestMatch, set, intent.getComponent()); if (ri.handleAllWebDataURI) { // Set default Browser if needed final String packageName = pm.getDefaultBrowserPackageName(userId); if (TextUtils.isEmpty(packageName)) { pm.setDefaultBrowserPackageName(ri.activityInfo.packageName, userId); } } else { // Update Domain Verification status int userId = getUserId(); ComponentName cn = intent.getComponent(); String packageName = cn.getPackageName(); String dataScheme = (data != null) ? data.getScheme() : null; Loading @@ -692,6 +699,7 @@ public class ResolverActivity extends Activity { PackageManager.INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_ALWAYS, userId); } } } else { try { AppGlobals.getPackageManager().setLastChosenActivity(intent, Loading
services/core/java/com/android/server/pm/PackageManagerService.java +21 −5 Original line number Diff line number Diff line Loading @@ -9217,7 +9217,9 @@ public class PackageManagerService extends IPackageManager.Stub { synchronized (mPackages) { result = mSettings.updateIntentFilterVerificationStatusLPw(packageName, status, userId); } if (result) { scheduleWritePackageRestrictionsLocked(userId); } return result; } Loading Loading @@ -9254,9 +9256,11 @@ public class PackageManagerService extends IPackageManager.Stub { public boolean setDefaultBrowserPackageName(String packageName, int userId) { synchronized (mPackages) { boolean result = mSettings.setDefaultBrowserPackageNameLPr(packageName, userId); if (packageName != null) { result |= updateIntentVerificationStatus(packageName, PackageManager.INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_ALWAYS, UserHandle.myUserId()); } return result; } } Loading Loading @@ -11970,6 +11974,7 @@ public class PackageManagerService extends IPackageManager.Stub { if (deletedPs != null) { if ((flags&PackageManager.DELETE_KEEP_DATA) == 0) { clearIntentFilterVerificationsLPw(deletedPs.name, UserHandle.USER_ALL); clearDefaultBrowserIfNeeded(packageName); if (outInfo != null) { mSettings.mKeySetManagerService.removeAppKeySetDataLPw(packageName); outInfo.removedAppId = mSettings.removePackageLPw(packageName); Loading Loading @@ -12873,6 +12878,17 @@ public class PackageManagerService extends IPackageManager.Stub { } } void clearDefaultBrowserIfNeeded(String packageName) { for (int oneUserId : sUserManager.getUserIds()) { String defaultBrowserPackageName = getDefaultBrowserPackageName(oneUserId); if (TextUtils.isEmpty(defaultBrowserPackageName)) continue; if (packageName.equals(defaultBrowserPackageName)) { setDefaultBrowserPackageName(null, oneUserId); } } } @Override public void resetPreferredActivities(int userId) { /* TODO: Actually use userId. Why is it being passed in? */