Add sender annotations
This commit is contained in:
@@ -9,8 +9,16 @@ public class MessageListModel : Object, ListModel
|
||||
owned get { return _messages.read_only_view; }
|
||||
}
|
||||
|
||||
public bool is_group_chat {
|
||||
get {
|
||||
return participants.size > 2;
|
||||
}
|
||||
}
|
||||
|
||||
public string conversation_guid { get; private set; }
|
||||
|
||||
private SortedSet<Message> _messages;
|
||||
private HashSet<string> participants = new HashSet<string>();
|
||||
|
||||
public MessageListModel(string conversation_guid) {
|
||||
_messages = new TreeSet<Message>((a, b) => {
|
||||
@@ -29,6 +37,7 @@ public class MessageListModel : Object, ListModel
|
||||
// Clear existing set
|
||||
uint old_count = _messages.size;
|
||||
_messages.clear();
|
||||
participants.clear();
|
||||
|
||||
// Notify of removal
|
||||
if (old_count > 0) {
|
||||
@@ -41,6 +50,8 @@ public class MessageListModel : Object, ListModel
|
||||
for (int i = 0; i < messages.length; i++) {
|
||||
var message = messages[i];
|
||||
_messages.add(message);
|
||||
participants.add(message.sender);
|
||||
|
||||
position++;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user