mirror of https://github.com/M66B/FairEmail.git
Guarantee busy update
This commit is contained in:
parent
6b9b1d6c32
commit
94b6ac26b9
|
@ -4801,7 +4801,8 @@ public class AdapterMessage extends RecyclerView.Adapter<AdapterMessage.ViewHold
|
|||
same = false;
|
||||
log("ui_browsed changed", next.id);
|
||||
}
|
||||
if (!Objects.equals(prev.ui_busy, next.ui_busy)) {
|
||||
if (!Objects.equals(prev.ui_busy, next.ui_busy) ||
|
||||
!Objects.equals(prev.last_attempt, next.last_attempt)) {
|
||||
same = false;
|
||||
log("ui_busy changed " + prev.ui_busy + "/" + next.ui_busy, next.id);
|
||||
}
|
||||
|
|
|
@ -559,8 +559,8 @@ public interface DaoMessage {
|
|||
@Query("UPDATE message SET ui_ignored = :ui_ignored WHERE id = :id")
|
||||
int setMessageUiIgnored(long id, boolean ui_ignored);
|
||||
|
||||
@Query("UPDATE message SET ui_busy = :busy WHERE id = :id")
|
||||
int setMessageUiBusy(long id, Long busy);
|
||||
@Query("UPDATE message SET ui_busy = :busy, last_attempt = :now WHERE id = :id")
|
||||
int setMessageUiBusy(long id, Long busy, long now);
|
||||
|
||||
@Query("UPDATE message SET received = :sent, sent = :sent WHERE id = :id")
|
||||
int setMessageSent(long id, Long sent);
|
||||
|
|
|
@ -4429,9 +4429,10 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences.
|
|||
ArrayList<MessageTarget> result = args.getParcelableArrayList("result");
|
||||
|
||||
DB db = DB.getInstance(context);
|
||||
long busy = new Date().getTime() + UNDO_TIMEOUT * 2;
|
||||
long now = new Date().getTime();
|
||||
long busy = now + UNDO_TIMEOUT * 2;
|
||||
for (MessageTarget target : result) {
|
||||
db.message().setMessageUiBusy(target.id, busy);
|
||||
db.message().setMessageUiBusy(target.id, busy, now);
|
||||
db.message().setMessageUiHide(target.id, true);
|
||||
// Prevent new message notification on undo
|
||||
db.message().setMessageUiIgnored(target.id, true);
|
||||
|
@ -4468,7 +4469,7 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences.
|
|||
|
||||
for (MessageTarget target : result) {
|
||||
Log.i("Move undo id=" + target.id);
|
||||
db.message().setMessageUiBusy(target.id, null);
|
||||
db.message().setMessageUiBusy(target.id, null, new Date().getTime());
|
||||
db.message().setMessageUiHide(target.id, false);
|
||||
}
|
||||
|
||||
|
@ -4517,7 +4518,7 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences.
|
|||
continue;
|
||||
|
||||
Log.i("Move id=" + id + " target=" + target.folder.name);
|
||||
db.message().setMessageUiBusy(target.id, null);
|
||||
db.message().setMessageUiBusy(target.id, null, new Date().getTime());
|
||||
EntityOperation.queue(context, message, EntityOperation.MOVE, target.folder.id);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue