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

Commit a124e6c9 authored by Automerger Merge Worker's avatar Automerger Merge Worker Committed by Android (Google) Code Review
Browse files

Merge "Merge "Set PageIndicator pages in QSPanel#onMeasure" into rvc-dev am:...

Merge "Merge "Set PageIndicator pages in QSPanel#onMeasure" into rvc-dev am: 7577e1d2 am: a7d9ccee" into rvc-d1-dev-plus-aosp
parents f8bcb8d6 c5db9c17
Loading
Loading
Loading
Loading
+17 −9
Original line number Diff line number Diff line
@@ -291,15 +291,7 @@ public class PagedTileLayout extends ViewPager implements QSTileLayout {
    }

    private void emptyAndInflateOrRemovePages() {
        final int nTiles = mTiles.size();
        // We should always have at least one page, even if it's empty.
        int numPages = Math.max(nTiles / mPages.get(0).maxTiles(), 1);

        // Add one more not full page if needed
        if (nTiles > numPages * mPages.get(0).maxTiles()) {
            numPages++;
        }

        final int numPages = getNumPages();
        final int NP = mPages.size();
        for (int i = 0; i < NP; i++) {
            mPages.get(i).removeAllViews();
@@ -431,6 +423,22 @@ public class PagedTileLayout extends ViewPager implements QSTileLayout {
        return mPages.get(0).mColumns;
    }

    /**
     * Gets the number of pages in this paged tile layout
     */
    public int getNumPages() {
        final int nTiles = mTiles.size();
        // We should always have at least one page, even if it's empty.
        int numPages = Math.max(nTiles / mPages.get(0).maxTiles(), 1);

        // Add one more not full page if needed
        if (nTiles > numPages * mPages.get(0).maxTiles()) {
            numPages++;
        }

        return numPages;
    }

    public int getNumVisibleTiles() {
        if (mPages.size() == 0) return 0;
        TilePage currentPage = mPages.get(getCurrentPageNumber());
+6 −1
Original line number Diff line number Diff line
@@ -240,8 +240,13 @@ public class QSPanel extends LinearLayout implements Tunable, Callback, Brightne

    @Override
    protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {

        if (mTileLayout instanceof PagedTileLayout) {
            // Since PageIndicator gets measured before PagedTileLayout, we preemptively set the
            // # of pages before the measurement pass so PageIndicator is measured appropriately
            if (mFooterPageIndicator != null) {
                mFooterPageIndicator.setNumPages(((PagedTileLayout) mTileLayout).getNumPages());
            }

            // Allow the UI to be as big as it want's to, we're in a scroll view
            int newHeight = 10000;
            int availableHeight = MeasureSpec.getSize(heightMeasureSpec);