package org.wikipedia.views;
import android.support.annotation.Nullable;
import android.support.v7.view.ActionMode;
import android.view.Menu;
import android.view.MenuItem;
import org.wikipedia.R;
public abstract class MultiSelectActionModeCallback implements ActionMode.Callback {
private static final String ACTION_MODE_TAG = "multiSelectActionMode";
public static boolean is(@Nullable ActionMode mode) {
return mode != null && ACTION_MODE_TAG.equals(mode.getTag());
}
@Override
public boolean onCreateActionMode(ActionMode mode, Menu menu) {
mode.setTag(ACTION_MODE_TAG);
mode.getMenuInflater().inflate(R.menu.menu_action_mode_multi_select, menu);
return true;
}
@Override
public boolean onPrepareActionMode(ActionMode mode, Menu menu) {
return true;
}
@Override
public boolean onActionItemClicked(ActionMode mode, MenuItem menuItem) {
switch (menuItem.getItemId()) {
case R.id.menu_delete_selected:
onDelete();
return true;
default:
}
return false;
}
protected abstract void onDelete();
@Override
public void onDestroyActionMode(ActionMode mode) {
}
}