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

Commit e551aa49 authored by Fabrice Di Meglio's avatar Fabrice Di Meglio Committed by Android (Google) Code Review
Browse files

Merge "Make ListView's FastScroller aware of layout direction"

parents 55aeca91 c23ee46c
Loading
Loading
Loading
Loading
+4 −6
Original line number Original line Diff line number Diff line
@@ -181,10 +181,13 @@ class FastScroller {
    }
    }


    public void setScrollbarPosition(int position) {
    public void setScrollbarPosition(int position) {
        if (position == View.SCROLLBAR_POSITION_DEFAULT) {
            position = mList.isLayoutRtl() ?
                    View.SCROLLBAR_POSITION_LEFT : View.SCROLLBAR_POSITION_RIGHT;
        }
        mPosition = position;
        mPosition = position;
        switch (position) {
        switch (position) {
            default:
            default:
            case View.SCROLLBAR_POSITION_DEFAULT:
            case View.SCROLLBAR_POSITION_RIGHT:
            case View.SCROLLBAR_POSITION_RIGHT:
                mOverlayDrawable = mOverlayDrawableRight;
                mOverlayDrawable = mOverlayDrawableRight;
                break;
                break;
@@ -229,7 +232,6 @@ class FastScroller {
        final int viewWidth = mList.getWidth();
        final int viewWidth = mList.getWidth();
        // Bounds are always top right. Y coordinate get's translated during draw
        // Bounds are always top right. Y coordinate get's translated during draw
        switch (mPosition) {
        switch (mPosition) {
            case View.SCROLLBAR_POSITION_DEFAULT:
            case View.SCROLLBAR_POSITION_RIGHT:
            case View.SCROLLBAR_POSITION_RIGHT:
                mThumbDrawable.setBounds(viewWidth - mThumbW, 0, viewWidth, mThumbH);
                mThumbDrawable.setBounds(viewWidth - mThumbW, 0, viewWidth, mThumbH);
                break;
                break;
@@ -327,7 +329,6 @@ class FastScroller {
            }
            }
            int left = 0;
            int left = 0;
            switch (mPosition) {
            switch (mPosition) {
                case View.SCROLLBAR_POSITION_DEFAULT:
                case View.SCROLLBAR_POSITION_RIGHT:
                case View.SCROLLBAR_POSITION_RIGHT:
                    left = viewWidth - (mThumbW * alpha) / ScrollFade.ALPHA_MAX;
                    left = viewWidth - (mThumbW * alpha) / ScrollFade.ALPHA_MAX;
                    break;
                    break;
@@ -360,7 +361,6 @@ class FastScroller {
                int left = 0;
                int left = 0;
                switch (mPosition) {
                switch (mPosition) {
                    default:
                    default:
                    case View.SCROLLBAR_POSITION_DEFAULT:
                    case View.SCROLLBAR_POSITION_RIGHT:
                    case View.SCROLLBAR_POSITION_RIGHT:
                        left = Math.max(0,
                        left = Math.max(0,
                                mThumbDrawable.getBounds().left - mThumbW - mOverlaySize);
                                mThumbDrawable.getBounds().left - mThumbW - mOverlaySize);
@@ -410,7 +410,6 @@ class FastScroller {
        if (mThumbDrawable != null) {
        if (mThumbDrawable != null) {
            switch (mPosition) {
            switch (mPosition) {
                default:
                default:
                case View.SCROLLBAR_POSITION_DEFAULT:
                case View.SCROLLBAR_POSITION_RIGHT:
                case View.SCROLLBAR_POSITION_RIGHT:
                    mThumbDrawable.setBounds(w - mThumbW, 0, w, mThumbH);
                    mThumbDrawable.setBounds(w - mThumbW, 0, w, mThumbH);
                    break;
                    break;
@@ -820,7 +819,6 @@ class FastScroller {
        boolean inTrack = false;
        boolean inTrack = false;
        switch (mPosition) {
        switch (mPosition) {
            default:
            default:
            case View.SCROLLBAR_POSITION_DEFAULT:
            case View.SCROLLBAR_POSITION_RIGHT:
            case View.SCROLLBAR_POSITION_RIGHT:
                inTrack = x > mList.getWidth() - mThumbW;
                inTrack = x > mList.getWidth() - mThumbW;
                break;
                break;