Merge pull request #890 from squaddy/bugfix/thread_reactions

fix(llc): thread message reactions not updated
This commit is contained in:
Gordon
2022-02-16 11:51:12 +01:00
committed by GitHub
4 changed files with 320 additions and 4 deletions
@@ -1695,7 +1695,9 @@ class ChannelClientState {
void _listenReactionDeleted() {
_subscriptions.add(_channel.on(EventType.reactionDeleted).listen((event) {
final oldMessage =
messages.firstWhereOrNull((it) => it.id == event.message?.id);
messages.firstWhereOrNull((it) => it.id == event.message?.id) ??
threads[event.message?.parentId]
?.firstWhereOrNull((e) => e.id == event.message?.id);
final reaction = event.reaction;
final ownReactions = oldMessage?.ownReactions
?.whereNot((it) =>
@@ -1715,7 +1717,9 @@ class ChannelClientState {
void _listenReactions() {
_subscriptions.add(_channel.on(EventType.reactionNew).listen((event) {
final oldMessage =
messages.firstWhereOrNull((it) => it.id == event.message?.id);
messages.firstWhereOrNull((it) => it.id == event.message?.id) ??
threads[event.message?.parentId]
?.firstWhereOrNull((e) => e.id == event.message?.id);
final message = event.message!.copyWith(
ownReactions: oldMessage?.ownReactions,
);
@@ -1731,8 +1735,9 @@ class ChannelClientState {
)
.listen((event) {
final oldMessage =
messages.firstWhereOrNull((it) => it.id == event.message?.id);
messages.firstWhereOrNull((it) => it.id == event.message?.id) ??
threads[event.message?.parentId]
?.firstWhereOrNull((e) => e.id == event.message?.id);
final message = event.message!.copyWith(
ownReactions: oldMessage?.ownReactions,
);