1
votes

I would like to hide the actionmode whenever the user perform a long press or double tap in an EditText.

I have tried doing that using this code, but the selection handles are also disabled (text selection cannot be performed on the EditText):

e.setCustomSelectionActionModeCallback(new Callback() {


    @Override
    public boolean onPrepareActionMode(android.view.ActionMode mode, Menu menu) {
        return true;
    }

    @Override
    public void onDestroyActionMode(android.view.ActionMode mode) {
    }

    @Override
    public boolean onCreateActionMode(android.view.ActionMode mode, Menu menu) {
        return false;
    }

    @Override
    public boolean onActionItemClicked(android.view.ActionMode mode, MenuItem item) {
        return false;
    }
});

Is there a way to hide the action mode while keeping text selection on EditText?

1

1 Answers

0
votes

The only way I found is :

editText.setCustomSelectionActionModeCallback(new ActionMode.Callback() {
        @Override
        public boolean onCreateActionMode(ActionMode actionMode, Menu menu) {
            menu.clear();
            return true;
        }

        @Override
        public boolean onPrepareActionMode(ActionMode actionMode, Menu menu) {
            menu.clear();
            return true;
        }

        @Override
        public boolean onActionItemClicked(ActionMode actionMode, MenuItem menuItem) {
            return false;
        }

        @Override
        public void onDestroyActionMode(ActionMode actionMode) {

        }
    });

But it do not work on Android < 5.0. I am still searching for an alternative