From 175c22e2018dabad28ec11b81d03096766a6eb66 Mon Sep 17 00:00:00 2001 From: Christopher Tate Date: Thu, 27 Aug 2015 15:09:53 -0700 Subject: [PATCH] Show the ResolverActivity in dock mode If there are multiple dock apps present the end result should be the disambiguation UI, not a fast-forward to the 'normal' home app. Bug 23501598 Change-Id: Iebc106b136cb1e446d1e93935738335504f5b812 --- .../android/server/pm/PackageManagerService.java | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/services/core/java/com/android/server/pm/PackageManagerService.java b/services/core/java/com/android/server/pm/PackageManagerService.java index 74200cb615262..6c3e78f2a16be 100644 --- a/services/core/java/com/android/server/pm/PackageManagerService.java +++ b/services/core/java/com/android/server/pm/PackageManagerService.java @@ -4230,16 +4230,18 @@ public class PackageManagerService extends IPackageManager.Stub { if (ri != null) { return ri; } + ri = new ResolveInfo(mResolveInfo); + ri.activityInfo = new ActivityInfo(ri.activityInfo); + ri.activityInfo.applicationInfo = new ApplicationInfo( + ri.activityInfo.applicationInfo); if (userId != 0) { - ri = new ResolveInfo(mResolveInfo); - ri.activityInfo = new ActivityInfo(ri.activityInfo); - ri.activityInfo.applicationInfo = new ApplicationInfo( - ri.activityInfo.applicationInfo); ri.activityInfo.applicationInfo.uid = UserHandle.getUid(userId, UserHandle.getAppId(ri.activityInfo.applicationInfo.uid)); - return ri; } - return mResolveInfo; + // Make sure that the resolver is displayable in car mode + if (ri.activityInfo.metaData == null) ri.activityInfo.metaData = new Bundle(); + ri.activityInfo.metaData.putBoolean(Intent.METADATA_DOCK_HOME, true); + return ri; } } return null;