From 8262ba961ea3c75cc364454fa1b5f191550ec482 Mon Sep 17 00:00:00 2001 From: M66B Date: Tue, 28 Nov 2023 11:23:01 +0100 Subject: [PATCH] Account long press to enable on-demand sync --- .../eu/faircode/email/AdapterAccount.java | 40 ++++++++++++++++++- 1 file changed, 39 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/eu/faircode/email/AdapterAccount.java b/app/src/main/java/eu/faircode/email/AdapterAccount.java index 57b35c04d3..32d23510f3 100644 --- a/app/src/main/java/eu/faircode/email/AdapterAccount.java +++ b/app/src/main/java/eu/faircode/email/AdapterAccount.java @@ -391,9 +391,12 @@ public class AdapterAccount extends RecyclerView.Adapter() { + @Override + protected Boolean onExecute(Context context, Bundle args) { + long id = args.getLong("id"); + boolean enable = args.getBoolean("enable"); + + DB db = DB.getInstance(context); + try { + db.beginTransaction(); + + db.account().setAccountOnDemand(id, enable); + + db.setTransactionSuccessful(); + } finally { + db.endTransaction(); + } + + return enable; + } + + @Override + protected void onException(Bundle args, Throwable ex) { + Log.unexpectedError(parentFragment.getParentFragmentManager(), ex); + } + }.execute(context, owner, args, "account:ondemand"); + } + private void onActionPrimary(boolean primary) { Bundle args = new Bundle(); args.putLong("id", account.id);