diff --git a/res/values/dimens.xml b/res/values/dimens.xml index 6d9475a8d3..40a5f779c1 100644 --- a/res/values/dimens.xml +++ b/res/values/dimens.xml @@ -497,6 +497,7 @@ 40dp 89dp 16dp + 16dp 20dp 20dp 10dp diff --git a/src/com/android/launcher3/allapps/ActivityAllAppsContainerView.java b/src/com/android/launcher3/allapps/ActivityAllAppsContainerView.java index 799b67b13e..cc0289ec1a 100644 --- a/src/com/android/launcher3/allapps/ActivityAllAppsContainerView.java +++ b/src/com/android/launcher3/allapps/ActivityAllAppsContainerView.java @@ -18,6 +18,7 @@ package com.android.launcher3.allapps; import static com.android.launcher3.Flags.enableExpandingPauseWorkButton; import static com.android.launcher3.allapps.ActivityAllAppsContainerView.AdapterHolder.MAIN; import static com.android.launcher3.allapps.ActivityAllAppsContainerView.AdapterHolder.SEARCH; +import static com.android.launcher3.allapps.BaseAllAppsAdapter.VIEW_TYPE_PRIVATE_SPACE_HEADER; import static com.android.launcher3.allapps.BaseAllAppsAdapter.VIEW_TYPE_WORK_DISABLED_CARD; import static com.android.launcher3.allapps.BaseAllAppsAdapter.VIEW_TYPE_WORK_EDU_CARD; import static com.android.launcher3.config.FeatureFlags.ALL_APPS_GONE_VISIBILITY; @@ -97,6 +98,7 @@ import com.android.launcher3.workprofile.PersonalWorkSlidingTabStrip; import java.util.ArrayList; import java.util.Arrays; import java.util.List; +import java.util.Optional; import java.util.function.Predicate; import java.util.stream.Stream; @@ -157,6 +159,7 @@ public class ActivityAllAppsContainerView }; private final Paint mNavBarScrimPaint; private final int mHeaderProtectionColor; + private final int mPrivateSpaceBottomExtraSpace; private final Path mTmpPath = new Path(); private final RectF mTmpRectF = new RectF(); protected AllAppsPagedView mViewPager; @@ -219,6 +222,8 @@ public class ActivityAllAppsContainerView this, mActivityContext.getStatsLogManager(), UserCache.INSTANCE.get(mActivityContext)); + mPrivateSpaceBottomExtraSpace = context.getResources().getDimensionPixelSize( + R.dimen.ps_extra_bottom_padding); mAH = Arrays.asList(null, null, null); mNavBarScrimPaint = new Paint(); mNavBarScrimPaint.setColor(Themes.getNavBarScrimColor(mActivityContext)); @@ -1577,6 +1582,14 @@ public class ActivityAllAppsContainerView int bottomOffset = 0; if (isWork() && mWorkManager.getWorkModeSwitch() != null) { bottomOffset = mInsets.bottom + mWorkManager.getWorkModeSwitch().getHeight(); + } else if (isMain() && mPrivateProfileManager != null) { + Optional privateSpaceHeaderItem = mAppsList.getAdapterItems() + .stream() + .filter(item -> item.viewType == VIEW_TYPE_PRIVATE_SPACE_HEADER) + .findFirst(); + if (privateSpaceHeaderItem.isPresent()) { + bottomOffset = mPrivateSpaceBottomExtraSpace; + } } if (isSearchBarFloating()) { bottomOffset += mSearchContainer.getHeight(); @@ -1593,5 +1606,9 @@ public class ActivityAllAppsContainerView private boolean isSearch() { return mType == SEARCH; } + + private boolean isMain() { + return mType == MAIN; + } } }