diff --git a/app/src/main/java/eu/faircode/email/FragmentOptions.java b/app/src/main/java/eu/faircode/email/FragmentOptions.java index 96d397375f..0cbd15662f 100644 --- a/app/src/main/java/eu/faircode/email/FragmentOptions.java +++ b/app/src/main/java/eu/faircode/email/FragmentOptions.java @@ -115,6 +115,7 @@ public class FragmentOptions extends FragmentBase implements SharedPreferences.O private SwitchCompat swEnglish; private SwitchCompat swUpdates; private SwitchCompat swDebug; + private TextView tvLastCleanup; private Group grpSearchLocal; private Group grpNotification; @@ -201,6 +202,7 @@ public class FragmentOptions extends FragmentBase implements SharedPreferences.O swEnglish = view.findViewById(R.id.swEnglish); swUpdates = view.findViewById(R.id.swUpdates); swDebug = view.findViewById(R.id.swDebug); + tvLastCleanup = view.findViewById(R.id.tvLastCleanup); grpSearchLocal = view.findViewById(R.id.grpSearchLocal); grpNotification = view.findViewById(R.id.grpNotification); @@ -596,6 +598,12 @@ public class FragmentOptions extends FragmentBase implements SharedPreferences.O } }); + long last_cleanup = prefs.getLong("last_cleanup", -1); + java.text.DateFormat df = SimpleDateFormat.getDateTimeInstance(); + tvLastCleanup.setText( + getString(R.string.title_advanced_last_cleanup, + last_cleanup < 0 ? "-" : df.format(last_cleanup))); + PreferenceManager.getDefaultSharedPreferences(getContext()).registerOnSharedPreferenceChangeListener(this); return view; diff --git a/app/src/main/java/eu/faircode/email/WorkerCleanup.java b/app/src/main/java/eu/faircode/email/WorkerCleanup.java index c51dd6cf58..d850831b1d 100644 --- a/app/src/main/java/eu/faircode/email/WorkerCleanup.java +++ b/app/src/main/java/eu/faircode/email/WorkerCleanup.java @@ -1,8 +1,10 @@ package eu.faircode.email; import android.content.Context; +import android.content.SharedPreferences; import android.net.Uri; import android.os.Build; +import android.preference.PreferenceManager; import androidx.annotation.NonNull; import androidx.work.Constraints; @@ -156,6 +158,10 @@ public class WorkerCleanup extends Worker { Log.e(ex); } finally { Log.i("End cleanup"); + if (!manual) { + SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context); + prefs.edit().putLong("last_cleanup", new Date().getTime()).apply(); + } } } diff --git a/app/src/main/res/layout/fragment_options.xml b/app/src/main/res/layout/fragment_options.xml index 0e802484e2..e71ef39c47 100644 --- a/app/src/main/res/layout/fragment_options.xml +++ b/app/src/main/res/layout/fragment_options.xml @@ -964,6 +964,19 @@ app:layout_constraintTop_toBottomOf="@id/swUpdates" app:switchPadding="12dp" /> + + Extra privacy features Check for updates Debug mode + Last cleanup: %1$s Globally disable or enable receiving and sending of messages Tap on a time to set a time