Keep closed buffers in store

This retains their delivery receipts.

Closes: https://todo.sr.ht/~emersion/gamja/154
This commit is contained in:
Simon Ser 2023-06-08 11:54:16 +02:00
parent 2f627eecad
commit a0ed50a8e2
2 changed files with 28 additions and 13 deletions

View file

@ -85,7 +85,7 @@ export class Buffer {
let updated = !this.m.has(key);
let prev = this.m.get(key) || {};
let unread = prev.unread;
let unread = prev.unread || Unread.NONE;
if (buf.unread !== undefined && buf.unread !== prev.unread) {
unread = buf.unread;
updated = true;
@ -107,6 +107,12 @@ export class Buffer {
}
}
let closed = prev.closed || false;
if (buf.closed !== undefined && buf.closed !== prev.closed) {
closed = buf.closed;
updated = true;
}
if (!updated) {
return false;
}
@ -115,6 +121,7 @@ export class Buffer {
name: buf.name,
unread,
receipts,
closed,
server: {
bouncerNetwork: buf.server.bouncerNetwork,
},