Skip to content

Commit 29061ba

Browse files
committed
Don't double decremente MessageCount when deleting disappearing messages
1 parent dfdba7f commit 29061ba

File tree

3 files changed

+9
-5
lines changed

3 files changed

+9
-5
lines changed

Signal-Windows/Controls/Conversation.xaml.cs

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -440,10 +440,13 @@ private void MarkBottommostMessageRead()
440440
{
441441
LastMarkReadRequest = rawBottomIndex;
442442
var msg = ((IMessageView)Collection[bottomIndex]).Model;
443-
Task.Run(async () =>
443+
if (msg.Author != null)
444444
{
445-
await App.Handle.SetMessageRead(msg);
446-
});
445+
Task.Run(async () =>
446+
{
447+
await App.Handle.SetMessageRead(msg);
448+
});
449+
}
447450
}
448451
}
449452
}

Signal-Windows/Controls/VirtualizedMessagesCollection.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -212,7 +212,7 @@ public void Remove(SignalMessage signalMessage)
212212

213213
if (deletedItem)
214214
{
215-
Conversation.MessagesCount--;
215+
Conversation.MessagesCount -= 1;
216216
CollectionChanged?.Invoke(this, new NotifyCollectionChangedEventArgs(NotifyCollectionChangedAction.Remove, removedMessage, finalVirtualIndex));
217217
}
218218
}

Signal-Windows/ViewModels/MainPageViewModel.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -404,7 +404,8 @@ public void HandleMessageDelete(SignalMessage message)
404404
{
405405
View.Thread.HandleDeleteMesage(message);
406406
var localConversation = ConversationsDictionary[SelectedThread.ThreadId];
407-
localConversation.MessagesCount -= 1;
407+
// don't need to decrement MessagesCount by 1 because it was already decremented by HandleDeleteMessage
408+
// specifically decremented by VirtualizedMessageCollection.Remove()
408409
localConversation.LastMessage = null;
409410
localConversation.LastMessageId = null;
410411
localConversation.LastSeenMessage = null;

0 commit comments

Comments
 (0)