From 5d411e842ec6e7cce6aba5765cbb8125581d03b2 Mon Sep 17 00:00:00 2001 From: Jacocococo Date: Mon, 19 Aug 2024 17:26:33 +0200 Subject: [PATCH] Place new reaction where server specified it --- .../ui/displayitems/EmojiReactionsStatusDisplayItem.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/mastodon/src/main/java/org/joinmastodon/android/ui/displayitems/EmojiReactionsStatusDisplayItem.java b/mastodon/src/main/java/org/joinmastodon/android/ui/displayitems/EmojiReactionsStatusDisplayItem.java index ad78f522a..b776ddbb7 100644 --- a/mastodon/src/main/java/org/joinmastodon/android/ui/displayitems/EmojiReactionsStatusDisplayItem.java +++ b/mastodon/src/main/java/org/joinmastodon/android/ui/displayitems/EmojiReactionsStatusDisplayItem.java @@ -276,7 +276,11 @@ public class EmojiReactionsStatusDisplayItem extends StatusDisplayItem { item.createRequest(emoji, existing==null ? 1 : existing.count, false, null, (status)->{ resetBtn.run(); if(finalExisting==null){ - int pos=item.status.reactions.size(); + int pos=status.reactions.stream() + .filter(r->r.name.equals(info!=null ? info.shortcode : emoji)) + .findFirst() + .map(r->status.reactions.indexOf(r)) + .orElse(item.status.reactions.size()); boolean previouslyEmpty=item.status.reactions.isEmpty(); item.status.reactions.add(pos, info!=null ? EmojiReaction.of(info, me) : EmojiReaction.of(emoji, me)); if(previouslyEmpty)