Fix issue that personal list shows on unfold while on work tab (paused)

Bug: 358041878
Flag: EXEMPT bugfix
Test: on fold device with test dpc
Change-Id: I4b6d758cd4d98af941e2222db21a0307e1088867
This commit is contained in:
Shamali P
2024-08-20 19:20:38 +00:00
committed by Shamali Patwa
parent 3a47759619
commit b3153f0bee
2 changed files with 10 additions and 1 deletions
@@ -290,10 +290,10 @@ public class WidgetsFullSheet extends BaseWidgetSheet
protected void updateRecyclerViewVisibility(AdapterHolder adapterHolder) {
// The first item is always an empty space entry. Look for any more items.
boolean isWidgetAvailable = adapterHolder.mWidgetsListAdapter.hasVisibleEntries();
adapterHolder.mWidgetsRecyclerView.setVisibility(isWidgetAvailable ? VISIBLE : GONE);
if (adapterHolder.mAdapterType == AdapterHolder.SEARCH) {
mNoWidgetsView.setText(R.string.no_search_results);
adapterHolder.mWidgetsRecyclerView.setVisibility(isWidgetAvailable ? VISIBLE : GONE);
} else if (adapterHolder.mAdapterType == AdapterHolder.WORK
&& mUserCache.getUserProfiles().stream()
.filter(userHandle -> mUserCache.getUserInfo(userHandle).isWork())
@@ -556,6 +556,8 @@ public class WidgetsFullSheet extends BaseWidgetSheet
mNoWidgetsView.setVisibility(GONE);
} else {
mAdapters.get(AdapterHolder.SEARCH).mWidgetsRecyclerView.setVisibility(GONE);
mAdapters.get(getCurrentAdapterHolderType()).mWidgetsRecyclerView.setVisibility(
VISIBLE);
// Visibility of recommended widgets, recycler views and headers are handled in methods
// below.
post(this::onRecommendedWidgetsBound);
@@ -461,6 +461,13 @@ public class WidgetsTwoPaneSheet extends WidgetsFullSheet {
if (!isWidgetAvailable) {
mRightPane.removeAllViews();
mRightPane.addView(mNoWidgetsView);
// with no widgets message, no header is selected on left
if (mSuggestedWidgetsPackageUserKey != null
&& mSuggestedWidgetsPackageUserKey.equals(mSelectedHeader)
&& mSuggestedWidgetsHeader != null) {
mSuggestedWidgetsHeader.setExpanded(false);
}
mSelectedHeader = null;
}
super.updateRecyclerViewVisibility(adapterHolder);
}