@SuppressLint("NewApi") public class NoMenuEditText extends EditText { private final Context context;
/** * This is a replacement method for the base TextView class‘ method of the * same name. This method is used in hidden class android.widget.Editor to * determine whether the PASTE/REPLACE popup appears when triggered from the * text insertion handle. Returning false forces this window to never * appear. * * @return false */ boolean canPaste() { return false; }
/** * This is a replacement method for the base TextView class‘ method of the * same name. This method is used in hidden class android.widget.Editor to * determine whether the PASTE/REPLACE popup appears when triggered from the * text insertion handle. Returning false forces this window to never * appear. * * @return false */ @Override public boolean isSuggestionsEnabled() { return false; }
public NoMenuEditText(Context context) { super(context); this.context = context; init(); }
/** * Prevents the action bar (top horizontal bar with cut, copy, paste, etc.) * from appearing by intercepting the callback that would cause it to be * created, and returning false. */ private class ActionModeCallbackInterceptor implements ActionMode.Callback { private final String TAG = NoMenuEditText.class.getSimpleName();
public boolean onCreateActionMode(ActionMode mode, Menu menu) { return false; }
public boolean onPrepareActionMode(ActionMode mode, Menu menu) { return false; }
public boolean onActionItemClicked(ActionMode mode, MenuItem item) { return false; }