Small improvements

This commit is contained in:
M66B 2021-02-15 11:56:37 +01:00
parent 4e71cb4316
commit c0d40ec980
3 changed files with 16 additions and 8 deletions

View File

@ -5572,6 +5572,7 @@ public class AdapterMessage extends RecyclerView.Adapter<AdapterMessage.ViewHold
log("ui_found changed", next.id);
}
// ui_ignored
// ui_silent
if (!prev.ui_browsed.equals(next.ui_browsed)) {
same = false;
log("ui_browsed changed", next.id);

View File

@ -3703,9 +3703,9 @@ class Core {
if (!message.folderUnified)
group = -message.folder;
if (!data.groupNotifying.containsKey(group))
data.groupNotifying.put(group, new ArrayList<Long>());
data.groupNotifying.put(group, new ArrayList<>());
if (!groupMessages.containsKey(group))
groupMessages.put(group, new ArrayList<TupleMessageEx>());
groupMessages.put(group, new ArrayList<>());
if (message.notifying != 0) {
long id = message.id * message.notifying;
@ -3716,11 +3716,11 @@ class Core {
}
}
if (!message.ui_seen && !message.ui_ignored && !message.ui_hide) {
// This assumes the messages are properly ordered
if (!(message.ui_seen || message.ui_ignored || message.ui_hide)) {
Integer current = newMessages.get(group);
newMessages.put(group, current == null ? 1 : current + 1);
// This assumes the messages are properly ordered
if (groupMessages.get(group).size() < MAX_NOTIFICATION_COUNT)
groupMessages.get(group).add(message);
else
@ -3736,7 +3736,9 @@ class Core {
for (int m = 0; m < groupMessages.get(group).size(); m++) {
TupleMessageEx message = groupMessages.get(group).get(m);
if (m >= MAX_NOTIFICATION_DISPLAY) {
db.message().setMessageUiSilent(message.id, true);
// This is to prevent notification sounds when shifting messages up
if (!message.ui_silent)
db.message().setMessageUiSilent(message.id, true);
continue;
}
@ -3779,8 +3781,12 @@ class Core {
notify_summary, current - prev,
redacted);
Log.i("Notify group=" + group + " count=" + notifications.size() +
" added=" + add.size() + " removed=" + remove.size());
Log.i("Notify group=" + group +
" new=" + prev + "/" + current +
" count=" + notifications.size() +
" add=" + add.size() +
" update=" + update.size() +
" remove=" + remove.size());
if (notifications.size() == 0) {
String tag = "unseen." + group + "." + 0;
@ -3805,7 +3811,7 @@ class Core {
for (NotificationCompat.Builder builder : notifications) {
long id = builder.getExtras().getLong("id", 0);
if ((id == 0 && prev != current) || add.contains(id)) {
if ((id == 0 && !prev.equals(current)) || add.contains(id)) {
// https://developer.android.com/training/wearables/notifications/creating
if (id == 0) {
if (!notify_summary)

View File

@ -546,6 +546,7 @@ public class EntityMessage implements Serializable {
this.ui_hide.equals(other.ui_hide) &&
this.ui_found.equals(other.ui_found) &&
this.ui_ignored.equals(other.ui_ignored) &&
this.ui_silent.equals(other.ui_silent) &&
this.ui_browsed.equals(other.ui_browsed) &&
Objects.equals(this.ui_busy, other.ui_busy) &&
Objects.equals(this.ui_snoozed, other.ui_snoozed) &&