diff --git a/core/java/com/android/internal/app/ResolverActivity.java b/core/java/com/android/internal/app/ResolverActivity.java index 5dc8b0b2b21d7..8f0ffd9d13525 100644 --- a/core/java/com/android/internal/app/ResolverActivity.java +++ b/core/java/com/android/internal/app/ResolverActivity.java @@ -1304,8 +1304,11 @@ public class ResolverActivity extends Activity implements + "cannot be null."); } // We partially rebuild the inactive adapter to determine if we should auto launch - boolean rebuildActiveCompleted = mMultiProfilePagerAdapter.rebuildActiveTab(true); - boolean rebuildInactiveCompleted = mMultiProfilePagerAdapter.rebuildInactiveTab(false); + boolean rebuildCompleted = mMultiProfilePagerAdapter.rebuildActiveTab(true); + if (hasWorkProfile() && ENABLE_TABBED_VIEW) { + boolean rebuildInactiveCompleted = mMultiProfilePagerAdapter.rebuildInactiveTab(false); + rebuildCompleted = rebuildCompleted && rebuildInactiveCompleted; + } if (useLayoutWithDefault()) { mLayoutId = R.layout.resolver_list_with_default; @@ -1314,7 +1317,7 @@ public class ResolverActivity extends Activity implements } setContentView(mLayoutId); mMultiProfilePagerAdapter.setupViewPager(findViewById(R.id.profile_pager)); - return postRebuildList(rebuildActiveCompleted && rebuildInactiveCompleted); + return postRebuildList(rebuildCompleted); } /** @@ -1378,6 +1381,10 @@ public class ResolverActivity extends Activity implements return false; } + if (mMultiProfilePagerAdapter.getActiveListAdapter().getOtherProfile() != null) { + return false; + } + // Only one target, so we're a candidate to auto-launch! final TargetInfo target = mMultiProfilePagerAdapter.getActiveListAdapter() .targetInfoForPosition(0, false);