stub of new cache
This commit is contained in:
parent
e7b9f5bb96
commit
d5cb37ed9c
|
@ -19,7 +19,6 @@ class ContactInfoState extends ChangeNotifier {
|
|||
late int _totalMessages = 0;
|
||||
late DateTime _lastMessageTime;
|
||||
late Map<String, GlobalKey<MessageRowState>> keys;
|
||||
late List<MessageCache?> messageCache;
|
||||
int _newMarker = 0;
|
||||
DateTime _newMarkerClearAt = DateTime.now();
|
||||
|
||||
|
@ -198,7 +197,7 @@ class ContactInfoState extends ChangeNotifier {
|
|||
}
|
||||
|
||||
void updateMessageCache(int conversation, int messageID, DateTime timestamp, String senderHandle, String senderImage, bool isAuto, String data) {
|
||||
this.messageCache.insert(0, MessageCache(MessageMetadata(profileOnion, conversation, messageID, timestamp, senderHandle, senderImage, "", {}, false, false, isAuto), data));
|
||||
this.messageCache.insert(0, MessageInfo(MessageMetadata(profileOnion, conversation, messageID, timestamp, senderHandle, senderImage, "", {}, false, false, isAuto), data));
|
||||
this.totalMessages += 1;
|
||||
}
|
||||
|
||||
|
|
|
@ -1,7 +1,32 @@
|
|||
import 'message.dart';
|
||||
|
||||
class MessageCache {
|
||||
class MessageInfo {
|
||||
final MessageMetadata metadata;
|
||||
final String wrapper;
|
||||
MessageCache(this.metadata, this.wrapper);
|
||||
MessageInfo(this.metadata, this.wrapper);
|
||||
}
|
||||
|
||||
class MessageCache {
|
||||
late Map<int, MessageInfo> cache;
|
||||
late List<int?> cacheByIndex;
|
||||
|
||||
MessageCache() {
|
||||
this.cache = {};
|
||||
this.cacheByIndex = List.empty(growable: true);
|
||||
}
|
||||
|
||||
|
||||
void addNew(int conversation, int messageID, DateTime timestamp, String senderHandle, String senderImage, bool isAuto, String data) {
|
||||
this.cache[messageID] = MessageInfo(MessageMetadata(profileOnion, conversation, messageID, timestamp, senderHandle, senderImage, "", {}, false, false, isAuto), data);
|
||||
this.cacheByIndex.insert(0, messageID);
|
||||
}
|
||||
|
||||
void bumpMessageCache() {
|
||||
this.messageCache.insert(0, null);
|
||||
this.totalMessages += 1;
|
||||
}
|
||||
|
||||
void ackCache(int messageID) {
|
||||
cache[messageID]?.metadata.ackd = true;
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue