private void MarkBottommostMessageRead() { if (Collection != null) { int bottomIndex = GetBottommostIndex(); int rawBottomIndex = Collection.GetRawIndex(bottomIndex); long lastSeenIndex = SignalConversation.LastSeenMessageIndex; if (lastSeenIndex <= rawBottomIndex && LastMarkReadRequest < rawBottomIndex) { LastMarkReadRequest = rawBottomIndex; Task.Run(async() => { await App.Handle.SetMessageRead(rawBottomIndex, ((SignalMessageContainer)Collection[bottomIndex]).Message, SignalConversation); }); } } }
private void MarkBottommostMessageRead() { if (Collection != null) { int bottomIndex = GetBottommostIndex(); int rawBottomIndex = Collection.GetRawIndex(bottomIndex); long lastSeenIndex = SignalConversation.LastSeenMessageIndex; if (lastSeenIndex <= rawBottomIndex && LastMarkReadRequest < rawBottomIndex) { LastMarkReadRequest = rawBottomIndex; var msg = ((IMessageView)Collection[bottomIndex]).Model; if (msg.Author != null) { Task.Run(async() => { await App.Handle.SetMessageRead(msg); }); } } } }