From a4dedf426fe06ebc29fb49c30e04f376ef6b7be6 Mon Sep 17 00:00:00 2001 From: Mario Bertschler Date: Tue, 28 Nov 2017 12:27:29 -0800 Subject: [PATCH] Fixes rebinding worktab layout vs single recycler view (on workprofile change) Bug: 68713881 Change-Id: I37bcc800ebeec54157eb1d342666d1695e46aaab --- .../android/launcher3/allapps/AllAppsContainerView.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/com/android/launcher3/allapps/AllAppsContainerView.java b/src/com/android/launcher3/allapps/AllAppsContainerView.java index 2bb95cb50f..71069bd889 100644 --- a/src/com/android/launcher3/allapps/AllAppsContainerView.java +++ b/src/com/android/launcher3/allapps/AllAppsContainerView.java @@ -85,6 +85,7 @@ public class AllAppsContainerView extends RelativeLayout implements DragSource, private InterceptingViewPager mViewPager; private ViewGroup mHeader; private FloatingHeaderHandler mFloatingHeaderHandler; + private TabsPagerAdapter mTabsPagerAdapter; private SpannableStringBuilder mSearchQueryBuilder = null; @@ -436,7 +437,9 @@ public class AllAppsContainerView extends RelativeLayout implements DragSource, setupWorkProfileTabs(); setupHeader(); } else { + mTabsPagerAdapter = null; mAH[AdapterHolder.MAIN].setup(findViewById(R.id.apps_list_view), null); + mAH[AdapterHolder.WORK].recyclerView = null; if (FeatureFlags.ALL_APPS_PREDICTION_ROW_VIEW) { setupHeader(); } else { @@ -479,8 +482,11 @@ public class AllAppsContainerView extends RelativeLayout implements DragSource, } private void setupWorkProfileTabs() { + if (mTabsPagerAdapter != null) { + return; + } final SlidingTabStrip tabs = findViewById(R.id.tabs); - mViewPager.setAdapter(new TabsPagerAdapter()); + mViewPager.setAdapter(mTabsPagerAdapter = new TabsPagerAdapter()); mViewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() { boolean mVisible = true;