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

Commit 5d96f61a authored by Adam Powell's avatar Adam Powell Committed by Android Git Automerger
Browse files

am c12f46eb: am 5db566f1: Fix updating fast scroll state for data set changes

* commit 'c12f46eb':
  Fix updating fast scroll state for data set changes
parents 59cd8d70 c12f46eb
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -2084,8 +2084,8 @@ public abstract class AbsListView extends AdapterView<ListAdapter> implements Te
            mRecycler.markChildrenDirty();
        }

        if (mFastScroller != null && mItemCount != mOldItemCount) {
            mFastScroller.onItemCountChanged(mOldItemCount, mItemCount);
        if (mFastScroller != null && (mItemCount != mOldItemCount || mDataChanged)) {
            mFastScroller.onItemCountChanged(mItemCount);
        }

        layoutChildren();
+4 −2
Original line number Diff line number Diff line
@@ -441,7 +441,7 @@ class FastScroller {
        updateLayout();
    }

    public void onItemCountChanged(int oldTotalItemCount, int totalItemCount) {
    public void onItemCountChanged(int totalItemCount) {
        final int visibleItemCount = mList.getChildCount();
        final boolean hasMoreItems = totalItemCount - visibleItemCount > 0;
        if (hasMoreItems && mState != STATE_DRAGGING) {
@@ -1095,12 +1095,14 @@ class FastScroller {
        final float thumbMiddle = position * range + offset;
        thumbImage.setTranslationY(thumbMiddle - thumbImage.getHeight() / 2);

        final float previewPos = mOverlayPosition == OVERLAY_AT_THUMB ? thumbMiddle : 0;

        // Center the preview on the thumb, constrained to the list bounds.
        final ImageView previewImage = mPreviewImage;
        final float previewHalfHeight = previewImage.getHeight() / 2f;
        final float minP = top + previewHalfHeight;
        final float maxP = bottom - previewHalfHeight;
        final float previewMiddle = MathUtils.constrain(thumbMiddle, minP, maxP);
        final float previewMiddle = MathUtils.constrain(previewPos, minP, maxP);
        final float previewTop = previewMiddle - previewHalfHeight;
        previewImage.setTranslationY(previewTop);

+0 −1
Original line number Diff line number Diff line
@@ -508,7 +508,6 @@ public class ListView extends AbsListView {
        requestLayout();
    }


    /**
     * The list is empty. Clear everything out.
     */