From ddb75168ece7bd768571201d07380c10cbe406d1 Mon Sep 17 00:00:00 2001 From: M66B Date: Mon, 2 May 2022 17:51:51 +0200 Subject: [PATCH] Show last folder sync time in nav menu --- .../email/AdapterNavAccountFolder.java | 17 +++++++---- .../java/eu/faircode/email/DaoAccount.java | 6 ++-- .../eu/faircode/email/FragmentMessages.java | 26 +---------------- .../eu/faircode/email/TupleAccountFolder.java | 2 ++ app/src/main/res/layout/fragment_messages.xml | 28 +------------------ 5 files changed, 19 insertions(+), 60 deletions(-) diff --git a/app/src/main/java/eu/faircode/email/AdapterNavAccountFolder.java b/app/src/main/java/eu/faircode/email/AdapterNavAccountFolder.java index f5ac958e57..02c1e5ee8e 100644 --- a/app/src/main/java/eu/faircode/email/AdapterNavAccountFolder.java +++ b/app/src/main/java/eu/faircode/email/AdapterNavAccountFolder.java @@ -62,7 +62,7 @@ public class AdapterNavAccountFolder extends RecyclerView.Adapter kv = new HashMap<>(); final private Map> values = new HashMap<>(); @@ -388,7 +384,6 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences. private static final int MAX_SEND_RAW = 50; // messages private static final int SWIPE_DISABLE_SELECT_DURATION = 1500; // milliseconds private static final float LUMINANCE_THRESHOLD = 0.7f; - private static final long MAX_SYNC_AGE = 24 * 3600 * 1000L; private static final int REQUEST_RAW = 1; private static final int REQUEST_OPENPGP = 4; @@ -477,7 +472,6 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences. quick_scroll = prefs.getBoolean("quick_scroll", true); addresses = prefs.getBoolean("addresses", false); swipe_reply = prefs.getBoolean("swipe_reply", false); - last_sync_time = prefs.getBoolean("last_sync_time", false); colorPrimary = Helper.resolveColor(getContext(), R.attr.colorPrimary); colorAccent = Helper.resolveColor(getContext(), R.attr.colorAccent); @@ -532,7 +526,6 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences. ibHintSwipe = view.findViewById(R.id.ibHintSwipe); ibHintSelect = view.findViewById(R.id.ibHintSelect); ibHintJunk = view.findViewById(R.id.ibHintJunk); - tvLastSync = view.findViewById(R.id.tvLastSync); tvNoEmail = view.findViewById(R.id.tvNoEmail); tvNoEmailHint = view.findViewById(R.id.tvNoEmailHint); rvMessage = view.findViewById(R.id.rvMessage); @@ -551,7 +544,6 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences. pbWait = view.findViewById(R.id.pbWait); grpAirplane = view.findViewById(R.id.grpAirplane); - grpLastSync = view.findViewById(R.id.grpLastSync); grpSupport = view.findViewById(R.id.grpSupport); grpHintSupport = view.findViewById(R.id.grpHintSupport); grpHintSwipe = view.findViewById(R.id.grpHintSwipe); @@ -1487,7 +1479,6 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences. // Initialize FragmentDialogTheme.setBackground(getContext(), view, false); grpAirplane.setVisibility(View.GONE); - grpLastSync.setVisibility(View.GONE); tvNoEmail.setVisibility(View.GONE); tvNoEmailHint.setVisibility(View.GONE); etSearch.setVisibility(View.GONE); @@ -5705,20 +5696,10 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences. } } - Long syncTime = null; - if (viewType == AdapterMessage.ViewType.FOLDER && - last_sync_time && folders.size() == 1) { - syncTime = folders.get(0).last_sync; - if (syncTime != null && - new Date().getTime() - syncTime < MAX_SYNC_AGE) - syncTime = null; - } - if (Objects.equals(lastUnseen, unseen) && Objects.equals(lastRefreshing, refreshing) && Objects.equals(lastFolderErrors, folderErrors) && - Objects.equals(lastAccountErrors, accountErrors) && - Objects.equals(lastSyncTime, syncTime)) { + Objects.equals(lastAccountErrors, accountErrors)) { Log.i("Folder state unchanged"); return; } @@ -5727,7 +5708,6 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences. lastRefreshing = refreshing; lastFolderErrors = folderErrors; lastAccountErrors = accountErrors; - lastSyncTime = syncTime; // Get name String name; @@ -5753,10 +5733,6 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences. name = getString(R.string.title_name_count, name, NF.format(unseen)); setSubtitle(name); - tvLastSync.setText(syncTime == null ? null - : DateUtils.getRelativeTimeSpanString(context, syncTime, true)); - grpLastSync.setVisibility(syncTime == null ? View.GONE : View.VISIBLE); - fabError.setTag(accountErrors); if (folderErrors || accountErrors) fabError.show(); diff --git a/app/src/main/java/eu/faircode/email/TupleAccountFolder.java b/app/src/main/java/eu/faircode/email/TupleAccountFolder.java index 281b52cad2..b19d04d32c 100644 --- a/app/src/main/java/eu/faircode/email/TupleAccountFolder.java +++ b/app/src/main/java/eu/faircode/email/TupleAccountFolder.java @@ -34,6 +34,7 @@ public class TupleAccountFolder extends EntityAccount { public boolean folderSync; public String folderState; public String folderSyncState; + public Long folderLastSync; public int executing; public int messages; public int unseen; @@ -73,6 +74,7 @@ public class TupleAccountFolder extends EntityAccount { this.folderSync == other.folderSync && Objects.equals(this.folderState, other.folderState) && Objects.equals(this.folderSyncState, other.folderSyncState) && + Objects.equals(this.folderLastSync, other.folderLastSync) && this.executing == other.executing && this.messages == other.messages && this.unseen == other.unseen); diff --git a/app/src/main/res/layout/fragment_messages.xml b/app/src/main/res/layout/fragment_messages.xml index 7946b50d57..5da8e8a68a 100644 --- a/app/src/main/res/layout/fragment_messages.xml +++ b/app/src/main/res/layout/fragment_messages.xml @@ -192,26 +192,6 @@ app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@id/tvHintJunk" /> - - - - + app:layout_constraintTop_toBottomOf="@id/vSeparatorHintJunk" /> - -