mirror of
https://github.com/M66B/FairEmail.git
synced 2026-03-27 19:35:10 +01:00
Save/delete search
This commit is contained in:
@@ -51,7 +51,7 @@ public class AdapterNavSearch extends RecyclerView.Adapter<AdapterNavSearch.View
|
||||
private boolean expanded = true;
|
||||
private List<EntitySearch> items = new ArrayList<>();
|
||||
|
||||
public class ViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener, View.OnLongClickListener {
|
||||
public class ViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener {
|
||||
private View view;
|
||||
private ImageView ivItem;
|
||||
private ImageView ivBadge;
|
||||
@@ -74,12 +74,10 @@ public class AdapterNavSearch extends RecyclerView.Adapter<AdapterNavSearch.View
|
||||
|
||||
private void wire() {
|
||||
view.setOnClickListener(this);
|
||||
view.setOnLongClickListener(this);
|
||||
}
|
||||
|
||||
private void unwire() {
|
||||
view.setOnClickListener(null);
|
||||
view.setOnLongClickListener(null);
|
||||
}
|
||||
|
||||
private void bindTo(EntitySearch search) {
|
||||
@@ -107,6 +105,7 @@ public class AdapterNavSearch extends RecyclerView.Adapter<AdapterNavSearch.View
|
||||
JSONObject json = new JSONObject(search.data);
|
||||
BoundaryCallbackMessages.SearchCriteria criteria =
|
||||
BoundaryCallbackMessages.SearchCriteria.fromJSON(json);
|
||||
criteria.id = search.id;
|
||||
FragmentMessages.search(
|
||||
context, owner, manager,
|
||||
-1L, -1L, false, criteria);
|
||||
@@ -114,39 +113,6 @@ public class AdapterNavSearch extends RecyclerView.Adapter<AdapterNavSearch.View
|
||||
Log.e(ex);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean onLongClick(View v) {
|
||||
int pos = getAdapterPosition();
|
||||
if (pos == RecyclerView.NO_POSITION)
|
||||
return false;
|
||||
|
||||
EntitySearch search = items.get(pos);
|
||||
if (search == null)
|
||||
return false;
|
||||
|
||||
Bundle args = new Bundle();
|
||||
args.putLong("id", search.id);
|
||||
|
||||
new SimpleTask<Void>() {
|
||||
@Override
|
||||
protected Void onExecute(Context context, Bundle args) throws Throwable {
|
||||
long id = args.getLong("id");
|
||||
|
||||
DB db = DB.getInstance(context);
|
||||
db.search().deleteSearch(id);
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onException(Bundle args, Throwable ex) {
|
||||
Log.unexpectedError(manager, ex);
|
||||
}
|
||||
}.execute(context, owner, args, "search:delete");
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
AdapterNavSearch(Context context, LifecycleOwner owner, FragmentManager manager) {
|
||||
|
||||
Reference in New Issue
Block a user