diff --git a/app/src/main/java/eu/faircode/email/FragmentOptionsMisc.java b/app/src/main/java/eu/faircode/email/FragmentOptionsMisc.java
index 2fb28726a9..8ecd76539c 100644
--- a/app/src/main/java/eu/faircode/email/FragmentOptionsMisc.java
+++ b/app/src/main/java/eu/faircode/email/FragmentOptionsMisc.java
@@ -186,6 +186,7 @@ public class FragmentOptionsMisc extends FragmentBase implements SharedPreferenc
private Button btnRepair;
private Button btnDaily;
+ private TextView tvLastDaily;
private SwitchCompat swAutostart;
private SwitchCompat swEmergency;
private SwitchCompat swWorkManager;
@@ -429,6 +430,7 @@ public class FragmentOptionsMisc extends FragmentBase implements SharedPreferenc
btnRepair = view.findViewById(R.id.btnRepair);
btnDaily = view.findViewById(R.id.btnDaily);
+ tvLastDaily = view.findViewById(R.id.tvLastDaily);
swAutostart = view.findViewById(R.id.swAutostart);
swEmergency = view.findViewById(R.id.swEmergency);
swWorkManager = view.findViewById(R.id.swWorkManager);
@@ -2132,6 +2134,11 @@ public class FragmentOptionsMisc extends FragmentBase implements SharedPreferenc
setLastCleanup(prefs.getLong("last_cleanup", -1));
+ if (prefs.contains("last_daily"))
+ tvLastDaily.setText(new Date(prefs.getLong("last_daily", 0)).toString());
+ else
+ tvLastDaily.setText(("-"));
+
File external = Helper.getExternalFilesDir(getContext());
boolean emulated = (external != null && Environment.isExternalStorageEmulated(external));
tvExternalStorageFolder.setText(
@@ -2214,6 +2221,9 @@ public class FragmentOptionsMisc extends FragmentBase implements SharedPreferenc
if ("last_cleanup".equals(key))
setLastCleanup(prefs.getLong(key, -1));
+ if ("last_daily".equals(key))
+ tvLastDaily.setText(new Date(prefs.getLong(key, 0)).toString());
+
if ("lt_uri".equals(key) ||
"lt_user".equals(key) ||
"lt_key".equals(key) ||
diff --git a/app/src/main/java/eu/faircode/email/WorkerDailyRules.java b/app/src/main/java/eu/faircode/email/WorkerDailyRules.java
index cdc2319212..e7420bf825 100644
--- a/app/src/main/java/eu/faircode/email/WorkerDailyRules.java
+++ b/app/src/main/java/eu/faircode/email/WorkerDailyRules.java
@@ -33,6 +33,7 @@ import androidx.work.Worker;
import androidx.work.WorkerParameters;
import java.util.Calendar;
+import java.util.Date;
import java.util.List;
import java.util.concurrent.Semaphore;
import java.util.concurrent.TimeUnit;
@@ -116,6 +117,9 @@ public class WorkerDailyRules extends Worker {
"Executed " + count + " daily rules for " + account.name + "/" + folder.name);
}
}
+
+ SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
+ prefs.edit().putLong("last_daily", new Date().getTime()).apply();
} catch (Throwable ex) {
Log.e(ex);
} finally {
diff --git a/app/src/main/res/layout/fragment_options_misc.xml b/app/src/main/res/layout/fragment_options_misc.xml
index 17a130ceca..70039093ab 100644
--- a/app/src/main/res/layout/fragment_options_misc.xml
+++ b/app/src/main/res/layout/fragment_options_misc.xml
@@ -1388,6 +1388,16 @@
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/btnRepair" />
+
+