if the message is not in the main messages list, try to find in the threads messages
This commit is contained in:
@@ -1694,7 +1694,10 @@ class ChannelClientState {
|
|||||||
void _listenReactionDeleted() {
|
void _listenReactionDeleted() {
|
||||||
_subscriptions.add(_channel.on(EventType.reactionDeleted).listen((event) {
|
_subscriptions.add(_channel.on(EventType.reactionDeleted).listen((event) {
|
||||||
final oldMessage =
|
final oldMessage =
|
||||||
messages.firstWhereOrNull((it) => it.id == event.message?.id);
|
messages.firstWhereOrNull((it) => it.id == event.message?.id) ??
|
||||||
|
threads.values
|
||||||
|
.expand((e) => e)
|
||||||
|
.firstWhereOrNull((e) => e.id == event.message?.id);
|
||||||
final reaction = event.reaction;
|
final reaction = event.reaction;
|
||||||
final ownReactions = oldMessage?.ownReactions
|
final ownReactions = oldMessage?.ownReactions
|
||||||
?.whereNot((it) =>
|
?.whereNot((it) =>
|
||||||
@@ -1714,7 +1717,10 @@ class ChannelClientState {
|
|||||||
void _listenReactions() {
|
void _listenReactions() {
|
||||||
_subscriptions.add(_channel.on(EventType.reactionNew).listen((event) {
|
_subscriptions.add(_channel.on(EventType.reactionNew).listen((event) {
|
||||||
final oldMessage =
|
final oldMessage =
|
||||||
messages.firstWhereOrNull((it) => it.id == event.message?.id);
|
messages.firstWhereOrNull((it) => it.id == event.message?.id) ??
|
||||||
|
threads.values
|
||||||
|
.expand((e) => e)
|
||||||
|
.firstWhereOrNull((e) => e.id == event.message?.id);
|
||||||
final message = event.message!.copyWith(
|
final message = event.message!.copyWith(
|
||||||
ownReactions: oldMessage?.ownReactions,
|
ownReactions: oldMessage?.ownReactions,
|
||||||
);
|
);
|
||||||
|
|||||||
Reference in New Issue
Block a user