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

Commit 48db9527 authored by Mihai Nita's avatar Mihai Nita Committed by android-build-merger
Browse files

Merge "Fix: accessibility actions move languages but don\'t update" into nyc-dev

am: 7dce005f

* commit '7dce005f':
  Fix: accessibility actions move languages but don't update

Change-Id: Ia6218cfbd9d2b0d29e36def684f5909932980481
parents 99e52854 7dce005f
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -197,6 +197,8 @@ class LocaleDragAndDropAdapter
        notifyItemChanged(fromPosition); // to update the numbers
        notifyItemChanged(toPosition);
        notifyItemMoved(fromPosition, toPosition);
        // We don't call doTheUpdate() here because this method is called for each item swap.
        // So if we drag something across several positions it will be called several times.
    }

    void setRemoveMode(boolean removeMode) {
@@ -222,7 +224,6 @@ class LocaleDragAndDropAdapter
        }
        mFeedItemList.remove(position);
        notifyDataSetChanged();
        doTheUpdate();
    }

    void removeChecked() {
+16 −10
Original line number Diff line number Diff line
@@ -114,40 +114,46 @@ public class LocaleLinearLayoutManager extends LinearLayoutManager {

        final int itemCount = this.getItemCount();
        final int position = this.getPosition(host);
        boolean result = false;

        switch (action) {
            case R.id.action_drag_move_up:
                if (position > 0) {
                    mAdapter.onItemMove(position, position - 1);
                    return true;
                    result = true;
                }
                return false;
                break;
            case R.id.action_drag_move_down:
                if (position + 1 < itemCount) {
                    mAdapter.onItemMove(position, position + 1);
                    return true;
                    result = true;
                }
                return false;
                break;
            case R.id.action_drag_move_top:
                if (position != 0) {
                    mAdapter.onItemMove(position, 0);
                    return true;
                    result = true;
                }
                return false;
                break;
            case R.id.action_drag_move_bottom:
                if (position != itemCount - 1) {
                    mAdapter.onItemMove(position, itemCount - 1);
                    return true;
                    result = true;
                }
                return false;
                break;
            case R.id.action_drag_remove:
                if (itemCount > 1) {
                    mAdapter.removeItem(position);
                    return true;
                    result = true;
                }
                return false;
                break;
            default:
                return super.performAccessibilityActionForItem(recycler, state, host, action, args);
        }

        if (result) {
            mAdapter.doTheUpdate();
        }
        return result;
    }
}