Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d1fee565 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Show 2nd row if we have 1 row in active profile and empty state in other" into rvc-dev

parents 77542c73 416a1b34
Loading
Loading
Loading
Loading
+16 −0
Original line number Diff line number Diff line
@@ -2654,6 +2654,7 @@ public class ChooserActivity extends ResolverActivity implements
                if (recyclerView.getVisibility() == View.VISIBLE) {
                    int directShareHeight = 0;
                    rowsToShow = Math.min(4, rowsToShow);
                    boolean shouldShowExtraRow = shouldShowExtraRow(rowsToShow);
                    mLastNumberOfChildren = recyclerView.getChildCount();
                    for (int i = 0, childCount = recyclerView.getChildCount();
                            i < childCount && rowsToShow > 0; i++) {
@@ -2664,6 +2665,9 @@ public class ChooserActivity extends ResolverActivity implements
                        }
                        int height = child.getHeight();
                        offset += height;
                        if (shouldShowExtraRow) {
                            offset += height;
                        }

                        if (gridAdapter.getTargetType(
                                recyclerView.getChildAdapterPosition(child))
@@ -2698,6 +2702,18 @@ public class ChooserActivity extends ResolverActivity implements
        }
    }

    /**
     * If we have a tabbed view and are showing 1 row in the current profile and an empty
     * state screen in the other profile, to prevent cropping of the empty state screen we show
     * a second row in the current profile.
     */
    private boolean shouldShowExtraRow(int rowsToShow) {
        return shouldShowTabs()
                && rowsToShow == 1
                && mChooserMultiProfilePagerAdapter.shouldShowEmptyStateScreen(
                        mChooserMultiProfilePagerAdapter.getInactiveListAdapter());
    }

    /**
     * Returns {@link #PROFILE_PERSONAL}, {@link #PROFILE_WORK}, or -1 if the given user handle
     * does not match either the personal or work user handle.