Merge "Widgets: Only reset expanded item & scroll to top if the user switch tab" into sc-dev am: f357dc4f3e am: c7e8bbc104

Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/14622871

Change-Id: Ida9389ec1ea420f32c49271eaec554f85b48be82
This commit is contained in:
Steven Ng
2021-05-20 23:41:34 +00:00
committed by Automerger Merge Worker
@@ -130,6 +130,7 @@ public class WidgetsFullSheet extends BaseWidgetSheet
private final int mTabsHeight;
private final int mWidgetCellHorizontalPadding;
@Nullable private WidgetsRecyclerView mCurrentWidgetsRecyclerView;
@Nullable private PersonalWorkPagedView mViewPager;
private boolean mIsInSearchMode;
private int mMaxSpansPerRow = 4;
@@ -222,13 +223,18 @@ public class WidgetsFullSheet extends BaseWidgetSheet
updateRecyclerViewVisibility(currentAdapterHolder);
attachScrollbarToRecyclerView(currentRecyclerView);
resetExpandedHeaders();
}
private void attachScrollbarToRecyclerView(WidgetsRecyclerView recyclerView) {
recyclerView.bindFastScrollbar();
mSearchAndRecommendationsScrollController.setCurrentRecyclerView(recyclerView);
reset();
if (mCurrentWidgetsRecyclerView != recyclerView) {
// Only reset the scroll position & expanded apps if the currently shown recycler view
// has been updated.
reset();
resetExpandedHeaders();
mCurrentWidgetsRecyclerView = recyclerView;
mSearchAndRecommendationsScrollController.setCurrentRecyclerView(recyclerView);
}
}
private void updateRecyclerViewVisibility(AdapterHolder adapterHolder) {
@@ -413,7 +419,6 @@ public class WidgetsFullSheet extends BaseWidgetSheet
if (mIsInSearchMode) return;
setViewVisibilityBasedOnSearch(/*isInSearchMode= */ true);
attachScrollbarToRecyclerView(mAdapters.get(AdapterHolder.SEARCH).mWidgetsRecyclerView);
resetExpandedHeaders();
}
@Override