Select the correct tab

What the clients send over is the tab based on user, but the correct tab
(position) wise needs to figured out.

Bug: 314371622
Test: manual
Change-Id: Ib6ebefb898b1c5678c14157333dc2b2ebc198ed8
This commit is contained in:
Manish Singh
2023-12-01 22:42:35 +00:00
parent 4ed5548887
commit 585bffb7ec

View File

@@ -130,7 +130,6 @@ public abstract class ProfileSelectFragment extends DashboardFragment {
if (titleResId > 0) { if (titleResId > 0) {
activity.setTitle(titleResId); activity.setTitle(titleResId);
} }
final int selectedTab = getTabId(activity, getArguments());
final View tabContainer = mContentView.findViewById(R.id.tab_container); final View tabContainer = mContentView.findViewById(R.id.tab_container);
mViewPager = tabContainer.findViewById(R.id.view_pager); mViewPager = tabContainer.findViewById(R.id.view_pager);
@@ -149,6 +148,7 @@ public abstract class ProfileSelectFragment extends DashboardFragment {
} }
); );
tabContainer.setVisibility(View.VISIBLE); tabContainer.setVisibility(View.VISIBLE);
final int selectedTab = getTabId(activity, getArguments());
final TabLayout.Tab tab = tabs.getTabAt(selectedTab); final TabLayout.Tab tab = tabs.getTabAt(selectedTab);
tab.select(); tab.select();
@@ -228,7 +228,7 @@ public abstract class ProfileSelectFragment extends DashboardFragment {
if (bundle != null) { if (bundle != null) {
final int extraTab = bundle.getInt(SettingsActivity.EXTRA_SHOW_FRAGMENT_TAB, -1); final int extraTab = bundle.getInt(SettingsActivity.EXTRA_SHOW_FRAGMENT_TAB, -1);
if (extraTab != -1) { if (extraTab != -1) {
return extraTab; return ((ViewPagerAdapter) mViewPager.getAdapter()).getTabForPosition(extraTab);
} }
final int userId = bundle.getInt(EXTRA_USER_ID, UserHandle.SYSTEM.getIdentifier()); final int userId = bundle.getInt(EXTRA_USER_ID, UserHandle.SYSTEM.getIdentifier());
final boolean isWorkProfile = UserManager.get(activity).isManagedProfile(userId); final boolean isWorkProfile = UserManager.get(activity).isManagedProfile(userId);